设置目录可见性隐藏woo-commerce

dan*_*mad 1 wordpress

如何以编程方式设置隐藏在woo-commerce WordPress中的目录可见性?

就像它在这里提到的:

https://docs.woothemes.com/document/catalog-visibility-options/

但我找不到任何钩子或黑客,如何在PHP中做到这一点.

小智 10

我已经尝试过这几天了,在网上没有任何关于它的内容所以我阅读了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' );
Run Code Online (Sandbox Code Playgroud)

所有可能的分类术语:

"exclude-from-catalog"
"exclude-from-search"
"featured"
"outofstock"
Run Code Online (Sandbox Code Playgroud)


And*_*sch 6

可见性在自定义字段中设置_visibility。你可以改变它update_post_meta()

update_post_meta( $product_id, '_visibility', '_visibility_hidden' );
Run Code Online (Sandbox Code Playgroud)

可能的值:

  • visible (目录和搜索)
  • catalog (仅限目录)
  • search (仅限搜索)
  • hidden (无处)

  • @jameshwartlopez 不,这在 Woocommerce 3 中无效,可见性在 v3 的分类学中设置。请参阅 https://github.com/woocommerce/woocommerce/wiki/2.6.x-to-3.0.0-Developer-Migration-Notes#product-visibility-is-taxonomy-based-instead-of-meta-based (2认同)