我正在尝试在Woocommerce上的产品名称下添加产品标签。我在这里找到了类似的代码,并尝试自定义它,但我无法让它工作。
/**
* Add product's brand name to product's name.
*/
add_filter( 'the_title', 'mycode_add_brand_to_product_title', 10, 2 );
function mycode_add_brand_to_product_title( $title, $id ) {
$type = get_post_type( $id );
if ( $type != 'product' ) { return $title; }
$terms = wc_get_product_terms( $post->ID, 'product_tag' );
$brand = array_shift( $terms );
if ( !empty( $brand ) ) {
$title = $brand . ' ' . $title;
}
return $title;
}
有人可以帮忙吗?
这是我想要实现的预览:
答案 0 :(得分:1)
已更新:请尝试以下操作:
add_filter( 'the_title', 'mycode_add_brand_to_product_title', 10, 2 );
function mycode_add_brand_to_product_title( $title, $post_id ) {
if ( get_post_type( $post_id ) != 'product' && ! is_archive() )
return $title;
if ( ! ( is_shop() || is_product_category() || is_product_tag() ) )
return $title;
$terms = wp_get_post_terms( $post_id, 'product_tag' );
$term = reset( $terms );
if ( !empty( $term->name ) )
$title .= '<br><small>' . strtoupper( $term->name ) . '</small>';
return $title;
}
代码放在活动子主题(或活动主题)的function.php文件中。经过测试和工作。
它也适合你。