重命名'Shop'面包屑并更改Woocommerce中的链接

时间:2018-03-30 16:43:32

标签: php wordpress woocommerce breadcrumbs shop

我尝试使用以下代码更改“商店”一词的网址,但似乎什么也没做:

add_filter( 'woocommerce_page_title', 'woo_shop_page_title');
function woo_shop_page_title( $page_title ) {
       if( 'Shop' == $page_title) {
              return "My new title";
       }
}

enter image description here

我不希望用户转到主“商店”页面并设置许多类别。 很遗憾,我无法找到删除或更改“Shop”面包屑的URL的方法。 official docs仅提及如何更改“主页”网址,而不是“商店”。

感谢您的帮助。

3 个答案:

答案 0 :(得分:1)

重命名任何痕迹导体项和更改其链接,请使用woocommerce_get_breadcrumb过滤器钩子:

add_filter( 'woocommerce_get_breadcrumb', 'custom_get_breadcrumb', 20, 2 );
function custom_get_breadcrumb( $crumbs, $breadcrumb ){
    if( ! is_shop() ) return $crumbs; // Only shop page

    // The Crump item to target
    $target = __( 'Shop', 'woocommerce' );

    foreach($crumbs as $key => $crumb){
        if( $target === $crumb[0] ){
            // 1. Change name
            $crumbs[$key][0] = __( 'Name', 'woocommerce' );

            // 2. Change URL (you can also use get_permalink( $id ) with the post Id
            $crumbs[$key][1] = home_url( '/my-link/' );
        }
    }
    return $crumbs;
}

代码进入活动子主题(或活动主题)的function.php文件。经过测试并正常工作。

答案 1 :(得分:0)

请在家里检查此代码,替换woocommerce中的chenag

function woocommerce_breadcrumb($ args = array()){         $ args = wp_parse_args($ args,apply_filters('woocommerce_breadcrumb_defaults',array(             '定界符'=>'//',             'wrap_before'=>'',             'wrap_after'=>'',             '之前'=>'',             '之后'=>'',             'home'=> _x('Home','breadcrumb','woocommerce'),         )));

    $breadcrumbs = new WC_Breadcrumb();
    $args['home'] = "Start"; // home replace start set
    if ( ! empty( $args['home'] ) ) {
        $breadcrumbs->add_crumb( $args['home'], apply_filters( 'woocommerce_breadcrumb_home_url', home_url() ) );
    }

    $args['breadcrumb'] = $breadcrumbs->generate();

答案 2 :(得分:-1)

' shop'面包屑来自你' Shop'网页&#39 ;.只需将您的商店页面slug更改为您想要的任何内容,或者如果它是另一个页面,那么在woocommerce设置中您将商店页面设置为新页面。网址永远是页面的slu ..