Woocommerce 编辑帐户简码根本不起作用

Woo-commerce edit account shortcode not working at all

我们使用的当前 Woocommerce 版本是 2.5.5 我在我的编辑帐户页面中使用以下简码。

[woocommerce_edit_account]

但是,我的页面显示主页而不是编辑帐户页面。现在有什么新鲜事吗?

它们不再有效,它们仅适用于 Woocommerce 2.1 或更低版本。它们已被端点取代,因此您需要执行以下操作:

$my_account_link = get_permalink( get_option('woocommerce_myaccount_page_id') );
$edit_acount_link = $my_account_link . '/edit-account';

如果第一行太长试试这个:

$my_account_link = get_bloginfo('url'). '/my-account';

您可以在以下位置阅读有关端点的更多信息:https://docs.woothemes.com/document/woocommerce-endpoints-2-1/

您可以改用原生 WooCommerce 功能 wc_customer_edit_account_url()
(woocommerce my_account.php 模板中也有使用).

Skatox 所述,[woocommerce_edit_account] 不再有效。

您可以将其与自定义自关闭简码一起使用:

// Paste this in the function.php file of your active child theme or theme.
function wc_customer_edit_account_shortcode( $atts ) {

    // Attributes
    $atts = shortcode_atts(
        array(
            'text' => '',
        ),
    );

    return '<a class="customer-edit-account" href="'.wc_customer_edit_account().'">'.$text.'</a>';

}
add_shortcode( 'wc_customer_edit_account', 'wc_customer_edit_account_shortcode' );

使用:[wc_customer_edit_account text="Editing my account details" /]

在我的网站上(使用 WooCommerce 3.6.5)这是对我有用的代码:

// Paste this in the function.php file of your active child theme or theme.
function wc_customer_edit_account_shortcode( $atts ) {

    // Attributes
    extract( shortcode_atts( array(
                'text' => 'Edit Account' ), $atts ) );

    return '<a class="customer-edit-account" href="'.wc_customer_edit_account_url().'">'.$text.'</a>';

}
add_shortcode( 'wc_customer_edit_account', 'wc_customer_edit_account_shortcode' );

我没有编辑 function.php 甚至添加子主题,而是使用 Snippets 插件将其粘贴到新代码段中。