我在woocommerce>设置中启用了隐藏缺货零件的选项。但是某些插件仍然可以访问此类产品,并且可以看到缺货的产品。我希望在全球范围内关闭缺货产品-包括所有插件。访问缺货产品的唯一方法应该是直接通过url(因此Google仍然可以访问它们)。我尝试了以下代码,但似乎没有做很多。
add_action('woocommerce_product_query', 'show_only_instock_products');
function show_only_instock_products($query) {
$meta_query = $query->get( 'meta_query' );
$meta_query[] = array(
'key' => '_stock_status',
'compare' => '=',
'value' => 'instock'
);
$query->set( 'meta_query', $meta_query );
}