如何从主题初始化 public 函数
How to init public function from theme
我在 WooCommerce 网站上使用 Astra 主题。产品内置快速查看功能。我只想为主题不可能的特定类别激活它。我不想用 css 隐藏它,所以我在这个文件中找到了代码的来源:https://developers.wpastra.com/astra-pro/reference/classes/astra_ext_woocommerce_markup/
我试着用这个:
add_action( 'woocommerce_shop_loop', array( $this, 'init_quick_view' ), 999 );
但刚得到一个错误:致命错误:未捕获错误:当不在对象上下文中时使用 $this
..."
任何人都可以帮助或指导我如何在我自己的 functions.php 文件中初始化函数“init_quick_view”,我可以在其中为何时 运行 设置自己的条件?
谢谢
怎么样
remove_action( 'woocommerce_shop_loop', 'init_quick_view', 999 );
add_action( 'woocommerce_shop_loop', 'custom_init_quick_view', 999 );
将 init_quick_view
函数复制到您的 custom_init_quick_view
中并添加您的条件。另一种方法可能是
remove_action( 'woocommerce_shop_loop', 'init_quick_view', 999 );
if(is_product_category('catslug') {
add_action( 'woocommerce_shop_loop', 'init_quick_view', 999 );
}
我还没有测试过。如果 none 这些作品有问题,请尝试安装主题并测试
我在 WooCommerce 网站上使用 Astra 主题。产品内置快速查看功能。我只想为主题不可能的特定类别激活它。我不想用 css 隐藏它,所以我在这个文件中找到了代码的来源:https://developers.wpastra.com/astra-pro/reference/classes/astra_ext_woocommerce_markup/
我试着用这个:
add_action( 'woocommerce_shop_loop', array( $this, 'init_quick_view' ), 999 );
但刚得到一个错误:致命错误:未捕获错误:当不在对象上下文中时使用 $this ..."
任何人都可以帮助或指导我如何在我自己的 functions.php 文件中初始化函数“init_quick_view”,我可以在其中为何时 运行 设置自己的条件?
谢谢
怎么样
remove_action( 'woocommerce_shop_loop', 'init_quick_view', 999 );
add_action( 'woocommerce_shop_loop', 'custom_init_quick_view', 999 );
将 init_quick_view
函数复制到您的 custom_init_quick_view
中并添加您的条件。另一种方法可能是
remove_action( 'woocommerce_shop_loop', 'init_quick_view', 999 );
if(is_product_category('catslug') {
add_action( 'woocommerce_shop_loop', 'init_quick_view', 999 );
}
我还没有测试过。如果 none 这些作品有问题,请尝试安装主题并测试