我已经在wordpress中编辑了一些插件文件,但这是不好的形式 - 它经得起更新。我想使用functions.php进行更改,但我无法使其正常工作。
基础知识是我要删除以下操作:
add_action( 'woocommerce_before_my_account', array( $this, 'my_account_memberships' ) );
add_action( 'woocommerce_before_my_account', __CLASS__ . '::get_my_subscriptions_template' );
在他们的位置添加动作:
add_action( 'woocommerce_add_subscriptions_to_my_accoun', array( $this, 'my_account_memberships' ) );
add_action( 'woocommerce_add_subscriptions_to_my_account', __CLASS__ . '::get_my_subscriptions_template' );
我尝试将以下(对于两个集合)添加到我的functions.php但无济于事......
remove_action ( 'woocommerce_before_my_account', __CLASS__ . '::get_my_subscriptions_template' );
add_action( 'woocommerce_add_subscriptions_to_my_account', __CLASS__ . '::get_my_subscriptions_template' );
我做错了什么?
答案 0 :(得分:0)
我明白了。万一其他人都在努力实现同样的目标。以下是我用于将woocommerce我的订阅信息和我的会员信息从woocommerce我的帐户页面顶部移动到自定义挂钩的代码片段。我决定在我的帐户页面(my-account.php)的底部放置显示订阅和成员资格以及信息的挂钩,该页面将添加到子主题中。
钩子是:
do_action( 'woocommerce_add_subscriptions_to_my_account' );
并且要添加到functions.php的代码是
add_action( 'init', 'move_subscription_info' );
function move_subscription_info() {
remove_action (
'woocommerce_before_my_account','WC_Subscriptions::get_my_subscriptions_template' );
add_action( 'woocommerce_add_subscriptions_to_my_account', 'WC_Subscriptions::get_my_subscriptions_template' );
add_action( 'woocommerce_add_subscriptions_to_my_account',
array('WC_Memberships_Frontend','my_account_memberships') );
if ( function_exists( 'wc_memberships' ) ) {
remove_action( 'woocommerce_before_my_account', array( wc_memberships()->frontend, 'my_account_memberships' ) ); } }`