如何以编程方式设置隐藏在woo-commerce WordPress中的目录可见性?
就像这里提到的那样:
https://docs.woothemes.com/document/catalog-visibility-options/
但我无法找到任何钩子或黑客,如何在PHP中做到这一点。
答案 0 :(得分:8)
我已经尝试过这几天,并且在网上没有任何关于它的内容所以我阅读了woocommerce文档并发现在woocommerce 3.xx中,可见性是一种名为" product_visibility"。
要实现这一点,您应该设置分类术语,例如:
//Set product hidden:
$terms = array( 'exclude-from-catalog', 'exclude-from-search' );
wp_set_object_terms( $post_id, $terms, 'product_visibility' );
//Set product visible in catalog:
$terms = 'exclude-from-search';
wp_set_object_terms( $post_id, $terms, 'product_visibility' );
//Set product visible in search:
$terms = 'exclude-from-catalog';
wp_set_object_terms( $post_id, $terms, 'product_visibility' );
所有可能的分类术语:
"exclude-from-catalog"
"exclude-from-search"
"featured"
"outofstock"
答案 1 :(得分:3)
可见性在自定义字段_visibility
中设置。您可以使用update_post_meta()
更改它:
update_post_meta( $product_id, '_visibility', '_visibility_hidden' );
可能的值:
visible
(目录和搜索)catalog
(仅限目录)search
(仅搜索)hidden
(无处)