当你的 WordPress 固定链接使用/%category%/ 的时候,如果你发布文章嵌套在几个类别中,则 URL 可能会变得太长和混乱。

删除WordPress文章链接中的父级分类名的方法【代码记录】_php

比如:https://www.*******.com/wordpress/theme/zing-pro.html,wordpress是父分类,theme是子分类。


如果你想从 WordPress 的链接结构中删除父类别,只需将以下代码粘贴到你正在使用的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;
}


GEEK收藏。