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

Wordpress 更改Woocommerce产品类别小部件';标题';基于产品类别,wordpress,woocommerce,widget,Wordpress,Woocommerce,Widget,我正在寻找一种方法,根据我正在查看的类别更改Woocommerce产品类别小部件的小部件标题 类别1------>类别1小部件的显示标题 - Sub Category - Sub Category - Sub Category - Sub Category - Sub Category - Sub Category 类别2----->类别1小部件的显示标题 - Sub Category - Sub Category - Sub Category - Sub Category - Sub C

我正在寻找一种方法,根据我正在查看的类别更改Woocommerce产品类别小部件的小部件标题

类别1------>类别1小部件的显示标题

- Sub Category
- Sub Category
- Sub Category
- Sub Category
- Sub Category
- Sub Category
类别2----->类别1小部件的显示标题

- Sub Category
- Sub Category
- Sub Category
- 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');

有什么建议吗?

widget\u 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 );