Php 从回路中跳转当前产品输出(如果条件为-1)

Php 从回路中跳转当前产品输出(如果条件为-1),php,wordpress,woocommerce,product,shop,Php,Wordpress,Woocommerce,Product,Shop,我是Wordpress开发的新手,目前正在制作一个插件,如果满足条件,它可以从商店页面隐藏某些产品。更具体地说,产品将跳转到下一个,并继续正常循环。我正在使用woocommerce\u-before\u-shop\u-loop\u项目hook并尝试在满足条件时“返回false”。这是我的代码: function hide_product() { if ( CONDITION ) { return false; } } add_action('woocommerce

我是Wordpress开发的新手,目前正在制作一个插件,如果满足条件,它可以从商店页面隐藏某些产品。更具体地说,产品将跳转到下一个,并继续正常循环。我正在使用
woocommerce\u-before\u-shop\u-loop\u项目
hook并尝试在满足条件时“返回false”。这是我的代码:

function hide_product() {
    if ( CONDITION ) {
        return false;
    }
}
add_action('woocommerce_before_shop_loop_item', 'hide_product');
我是否使用了错误的钩子,宁愿在整个循环之前钩子,比如
woocommerce\u-before\u-shop\u-loop


谢谢你的帮助

由于这是一个WP_查询,就像Wordpress普通循环中一样,我认为您需要更改WP_查询。您需要使用pre_get_posts hook(post_not_in参数)。在循环挂钩中过滤对象不是一个好主意:它会导致分页、网格和其他类似问题。