您好我想在我的帐户页面中添加新的自定义标题和链接到我的WooCommerce网站。搜索了所有文档和Stackoverflow主题,但找不到我的请求。
这是我要求的标题
Text Muj Ucet是我的英文帐户。 :)
我想添加新标题,如下图所示:
这是该部分的WooCommerce模板代码:
<?php
if ( ! defined( 'ABSPATH' ) ) {
exit; // Exit if accessed directly
}
?>
<p><?php
/* translators: 1: user display name 2: logout url */
printf(
__( 'Hello %1$s (not %1$s? <a href="%2$s">Log out</a>)', 'woocommerce'
),
'<strong>' . esc_html( $current_user->display_name ) . '</strong>',
esc_url( wc_logout_url( wc_get_page_permalink( 'myaccount' ) ) )
);
?></p>
<p>Na nástěnce svého uživatelského účtu si můžete stáhnout své zakoupené
produkty a faktury, upravit své osobní informace, změnit heslo nebo
fakturační adresu.</p>
<?php
/**
* My Account dashboard.
*
* @since 2.6.0
*/
do_action( 'woocommerce_account_dashboard' );
/**
* Deprecated woocommerce_before_my_account action.
*
* @deprecated 2.6.0
*/
do_action( 'woocommerce_before_my_account' );
/**
* Deprecated woocommerce_after_my_account action.
*
* @deprecated 2.6.0
*/
do_action( 'woocommerce_after_my_account' );
/* Omit closing PHP tag at the end of PHP files to avoid "headers already
sent" issues. */
我想在侧栏添加新的标题。如何注册新标题?
由于
答案 0 :(得分:1)
这是解决方案。
add_filter('woocommerce_account_menu_items', 'display_account_new_link');
function display_account_new_link( $items ) {
$items['new_link'] = __( 'New Link', 'text-domain' );
return $items;
}
add_action( 'woocommerce_account_new_link_endpoint', 'new_account_link_content' );
function new_account_link_content() {
//include your display template here
echo "Here goes you content";
}
在您的插件或主题function.php文件中粘贴此代码后,此代码将在我的帐户导航侧栏中创建一个新链接,以及您要为此链接指定的模板。此处 new_link 是此导航链接的slug。如果你想给出一些不同的slug,你必须重命名在给定代码中到处写的new_link。只要您单击此新链接,它就会将您重定向到未找到页面页面。可以通过添加此代码来解决。
add_action( 'init', 'register_new_link_endpoint');
function register_new_link_endpoint() {
add_rewrite_endpoint( 'new_link', EP_PAGES );
}
粘贴此代码后,您必须保存永久链接一次,方法是转到WordPress信息中心 - >设置 - >固定链接,然后点击保存更改按钮。