WordPress 在搭建Wordpress网站将网站的固定连接设置为 /%category%/ 这种形式的时,一旦该分类下面的子分类较多或层级越深,就会让我们看到一长串的URL。 这样的链接看起来相当不舒服。站在SEO优化的角度上来讲,这也不利于优化(搜索引擎不喜欢此类链接)。 如果想要从WordPress的链接结构

如何删除WordPress文章链接中的父级分类名
WordPress

在搭建Wordpress网站将网站的固定连接设置为 /%category%/ 这种形式的时,一旦该分类下面的子分类较多或层级越深,就会让我们看到一长串的URL。

这样的链接看起来相当不舒服。站在SEO优化的角度上来讲,这也不利于优化(搜索引擎不喜欢此类链接)。

如果想要从WordPress的链接结构中删除父类别,应该如何做呢?

复制以下代码,粘贴到你所在主题的functions.php文件中:

add_filter( 'post_link', 'dahuzi_remove_parent_cats_from_link', 10, 3 );
    function dahuzi_remove_parent_cats_from_link( $permalink, $post, $leavename ){
        $cats = get_the_category( $post->ID );
        if ( $cats ) {
            usort( $cats, '_usort_terms_by_ID' );
            $category = $cats[0]->slug;
        if ( $parent = $cats[0]->parent ) {
            $parentcats = get_category_parents( $parent, false, '/', true );
            $permalink = str_replace( $parentcats, '', $permalink );
        }
    }
    return $permalink;
}

这样就可以解决这个问题。

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。