在这篇文章中,我将分享如何在WordPress中重写自定义帖子类型的URI。这就是我用帖子ID重写自定义帖子类型URL的方法。您需要一个重写规则来翻译URL请求,以及一个过滤器post_type_link
以返回对以下任何调用的正确URL get_post_permalink()
:
add_filter(‘post_type_link’, ‘wpse33551_post_type_link’, 1, 3);
function wpse33551_post_type_link( $link, $post = 0 ){
if ( $post–>post_type == ‘product’ ){
return home_url( ‘product/’ . $post–>ID );
} else {
return $link;
}
}
add_action( ‘init’, ‘wpse33551_rewrites_init’ );
function wpse33551_rewrites_init(){
add_rewrite_rule(
‘product/([0-9]+)?$’,
‘index.php?post_type=product&p=$matches[1]’,
‘top’ );
}
如果您喜欢FreeWebMentor并希望做出贡献,则可以撰写文章并将其邮寄到freewebmentor@gmail.com。 您的文章将出现在FreeWebMentor主页上并为其他开发人员提供帮助。