2017-10-04 148 views
1

我正在尝试更改店面(WooCommerce)子主题中storefront_shop_messages的位置。所以我已经在我的活动主题的functions.php中添加了这段代码:更改WooCommerce通知在店面主题中的位置

remove_action('storefront_content_top', 'storefront_shop_messages', 15); 
add_action('woocommerce_product_meta_end', 'storefront_shop_messages', 1); 

但它不起作用。

请帮忙吗?

+0

好,有你能想到的一个比较通用的钩子?特别是,您可以建议如何仅在单个产品页面上移动这些消息? – Louis

+0

那么,在产品页面的ADD TO CART按钮下方,将店面中的警告消息移动的最佳方法是什么? – Louis

+0

对不起@LoicTheAztec我在问题/答案混在一起;) – Louis

回答

1

正确的方法,让你在你的意见是什么期待(意为显示WooCommerce通知后添加到购物车按钮只产品单页上):

add_action('wp_head', 'customize_notices'); 
function customize_notices(){ 
    if(is_product()) 
     remove_action('storefront_content_top', 'storefront_shop_messages', 15); 
    remove_action('woocommerce_before_single_product', 'wc_print_notices', 10); 
    add_action('woocommerce_single_product_summary', 'woocommerce_before_main_content', 34); 
} 

代码放在的function.php文件您活跃的儿童主题(或主题)或任何插件文件。

测试和店面题材的作品与WooCommerce 3.1+

+0

虽然使用此代码,但我得到一个奇怪的PHP错误:警告:call_user_func_array()期望参数1是一个有效的回调函数'woocommerce_before_main_content'未找到或无效的函数名称在/home/hugomatha/hemen.makemy.biz/wp-包括/ class-wp-hook.php on line 298' – Louis

+0

所以我用'add_action('woocommerce_single_product_summary','woocommerce_before_main_content',34);'我使用了这一行:'add_action('woocommerce_product_meta_end','storefront_shop_messages', 1);' – Louis