blk*_*edy 6 php wordpress woocommerce
我正在尝试将Woocommerce中的产品父类别添加为wordpress' body标签.
每次进入子类别时,父类别不再在body类别中.
可以编辑下面的内容来查找父类别并在body标签中添加吗?
也许像"product_parent_cat"这样的术语?试过这个并搜索他们的API但没有成功..
function woo_custom_taxonomy_in_body_class( $classes ){
$custom_terms = get_the_terms(0, 'product_cat');
if ($custom_terms) {
foreach ($custom_terms as $custom_term) {
$classes[] = 'product_cat_' . $custom_term->slug;
}
}
return $classes;
}
add_filter( 'body_class', 'woo_custom_taxonomy_in_body_class' );
Run Code Online (Sandbox Code Playgroud)
您可以尝试此修改(未经测试):
function woo_custom_taxonomy_in_body_class( $classes ){
$custom_terms = get_the_terms(0, 'product_cat');
if ($custom_terms) {
foreach ($custom_terms as $custom_term) {
// Check if the parent category exists:
if( $custom_term->parent > 0 ) {
// Get the parent product category:
$parent = get_term( $custom_term->parent, 'product_cat' );
// Append the parent class:
if ( ! is_wp_error( $parent ) )
$classes[] = 'product_parent_cat_' . $parent->slug;
}
$classes[] = 'product_cat_' . $custom_term->slug;
}
}
return $classes;
}
add_filter( 'body_class', 'woo_custom_taxonomy_in_body_class' );
Run Code Online (Sandbox Code Playgroud)
将父产品类别slugs添加到body类.
这里我们使用函数parent返回的term对象的属性get_term().