【发布时间】:2021-01-31 14:17:28
【问题描述】:
我需要编写一些代码,仅在某些类别页面上隐藏缺货商品。
我试着像这样制作一个 pre posts 钩子:
add_action('pre_get_posts','filter_out_of_stock_discs');
function filter_out_of_stock_discs($query){
if($query->query_vars["post_type"] == "product"){
//...
}
}
我可以在调试器中看到这永远不会被命中,因为没有查询具有产品帖子类型的查询变量。
我还尝试在调用循环之前将其添加到我的分类产品页面:
global $wp_query;
$wp_query->set("meta_query", array(
array(
'key' => '_stock_status',
'value' => 'instock'
),
array(
'key' => '_backorders',
'value' => 'no'
),
)
);
但这不会改变任何事情。
如何拦截查询以修改是否检查库存状态?
【问题讨论】:
-
你启用调试了吗?
-
调试已启用,我已逐步完成代码
标签: wordpress woocommerce