仅出于测试目的,我正在执行简单的do_action:
add_action( 'my_action', 'woocommerce_show_product' );
do_action( 'my_action');
function woocommerce_show_product() {
?>
<script>console.log('TESTING')</script>
<?php
};
我将此添加到我的functions.php中。
问题是:日志在仪表板中工作,但不在实际网站上工作。我希望情况会相反。
有什么想法吗?
答案 0 :(得分:0)
我已经在所有浏览器上测试过您的代码,并且输出是预期结果。 虽然,我建议按如下所示更改您的代码:
add_action( 'my_action', 'woocommerce_show_product' );
do_action( 'my_action');
function woocommerce_show_product() {
?>
<script>console.log('TESTING');</script>
<?php
}
浏览网站时,您可以在此处粘贴控制台屏幕的屏幕截图吗?
答案 1 :(得分:0)
由于您有使用pre_get_post的建议,我为您提供了一个片段,它将指导您实现目标。您需要更改为term传递的值。
add_action( 'pre_get_posts', 'custom_pre_get_posts_query' );
function custom_pre_get_posts_query( $q ) {
if ( ! $q->is_main_query() ) return;
if ( ! $q->is_post_type_archive() ) return;
if ( ! is_admin() && is_shop() ) {
$q->set( 'post__in', array( 99, 96, 93, 90, 87,83 ) );
$q->set( 'cat', 'shoes' );
return;
}
}
答案 2 :(得分:0)
大家好,感谢您的帮助。
最后,该解决方案不是很直观,我有一个wordpress插件,该插件会自动使用缓存来加快网站速度,但我并不知道它的存在。这就是为什么更改无法立即应用
的原因