wordpress wc_print_notices在woocommerce页面上没有显示任何消息?

yduiuuwa  于 2022-12-26  发布在  WordPress
关注(0)|答案(1)|浏览(146)

我已经使用默认的woocommerce模板商店,购物车和单页。我没有删除任何挂钩,但也没有收到任何消息。任何想法?

add_action( 'woocommerce_before_single_product',   'Cusotm_wc_print_notices', 10 );
function Cusotm_wc_print_notices()
{
   echo 'Hook is working fine';
}

我收到了“钩子工作正常”的消息,但没有收到wc_print_notices();。

pjngdqdw

pjngdqdw1#

我不是很确定问题出在哪里。你的问题需要进一步的细节。尽管如此,你能试着把这段代码添加到你当前主题的functions.php中吗?

add_action( 'template_redirect', 'test' );
function test() {

    wc_add_notice( __( 'Sorry there was a problem.', 'woocommerce' ), 'error' );

}

如果有用就告诉我。

    • 更新**

如果你有这样的东西:

add_action( 'woocommerce_before_single_product',   'Cusotm_wc_print_notices', 10 );
function Cusotm_wc_print_notices()
{
   $notices = WC()->session->get('wc_notices');
   print_r($notices);
}

因为一旦wc_print_notices()被调用,$notices将为空,所以它将不起作用。
尝试改变优先级,你会得到一些东西。应该是这样的东西:

add_action( 'woocommerce_before_single_product',   'Cusotm_wc_print_notices', 9 );

使用10以下的优先级。因为WooCommerce使用10。

add_action( 'woocommerce_before_single_product', 'wc_print_notices', 10 );

相关问题