我正在寻找一种方法来根据我观看的类别更改Woocommerce Product Categories Widget的小部件标题。
第1类----->显示类别1的小部件标题
- Sub Category - Sub Category - Sub Category
第2类----->显示类别1的小部件标题
- Sub Category - Sub Category - Sub Category
我正在使用此功能但似乎无法定位小部件标题并正确创建if else语句。
function retitle_woo_category_widget() {
// If 'Category' 1 is being viewed...
if ( is_product() && has_term( 'Category 1', 'product_cat' ) ) {
//... Remove the images
return __('Title of Widget for Category 1');
}
else {
// If 'Category' 2 is being viewed...
if ( is_product() && has_term( 'Category 2', 'product_cat' ) ) {
return __('Title of Widget for Category 2');
}
add_filter ( 'widget_title' , 'retitle_woo_category_widget');
有什么建议吗?
答案 0 :(得分:0)
widget_title有3个参数可用于检查适当的类别。根据您的不同,您可以通过返回替代字符串来更改标题。请记住,这也会影响任何其他小部件。以此为基础:
function my_widget_title( $title, $instance, $id_base ) {
if ( !is_single() ) {
return $title;
}
$post_title = get_the_title();
switch ( $id_base ) {
case 'pages': return sprintf( '%s "%s"', $title, $post_title );
case 'links': return sprintf( 'Links for "%s" post.', $post_title );
// other widgets ...
default: return $title;
}
}
add_filter( 'widget_title', 'my_widget_title', 10, 3 );