这是一个 Woocommerce 网上商店,但当我处于父类别时,它不会显示子类别的产品。一个解决方案是遍历所有产品并将它们添加到父类别,但当我有 5000 个产品时,这需要做很多工作。
我找到了这个例子:
add_action('save_post', 'assign_parent_terms', 10, 2);
function assign_parent_terms($post_id, $post){
if($post->post_type != 'product')
return $post_id;
// get all assigned terms
$terms = wp_get_post_terms($post_id, 'product_cat' );
foreach($terms as $term){
while($term->parent != 0 && !has_term( $term->parent, 'product_cat', $post )){
// move upward until we get to 0 level terms
wp_set_post_terms($post_id, array($term->parent), 'product_cat', true);
$term = get_term($term->parent, 'product_cat');
}
}
}
来自 Mohammad Arshi 来自此 stackoverflow 答案 (Show Sub categories of products under parent in Woocommerce) 的方法/函数,可以回答问题 2。