如何使用短代码显示 WooCommerce 我的帐户仪表板

How to display WooCommerce My account dashboard using a shortcode

我有一个自定义我的帐户页面,我想在其中显示 dashboard.php。我们如何在短代码中嵌入 dashboard.php 模板(我的帐户“仪表板”)?

根据 对我之前问题的回答,我在 functions.php 中尝试了以下内容:

//[account_dashboard]
add_shortcode('account_dashboard', 'display_account_dashboard');
function display_account_dashboard()
{
    return WC_Shortcode_My_Account::dashboard();
}

但是不行

更新: 添加了缺失的定义 argument "current_user".

要将模板 myaccount/dashboard.php 嵌入到短代码中,您将以这种方式使用函数 wc_get_template()

add_shortcode('account_dashboard', 'display_account_dashboard');
function display_account_dashboard()
{
    return wc_get_template(
        'myaccount/dashboard.php',
        array(
            'current_user' => get_user_by( 'id', get_current_user_id() )
        )
    );

代码进入您的活动子主题(或活动主题)的 functions.php 文件。已测试并有效。

用法: [account_dashboard]