更改Woocommerce产品类别小部件'标题'基于产品类别

时间:2016-03-11 04:51:46

标签: wordpress woocommerce widget

我正在寻找一种方法来根据我观看的类别更改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');

有什么建议吗?

1 个答案:

答案 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 );