如何解决WP-自定义帖子类型-重写网址
我正在开发一个网站,该网站将显示一个品牌的酒店。酒店是子页面,每个酒店都有其房间。为了区分酒店之间的房间,我使用了分类法,因此每个房间都有tag
,带有酒店名称。从技术上讲,我有一个名为room
的自定义帖子类型,它的分类法为room_category
。
现在 domain.com/hotel-1/rooms / 页面显示了酒店1的所有房间。(列表页面)
但是房间详细信息页面的网址为 domain.com/rooms/hotel-1/comfort-room /
我想将其更改为 domain.com/hotel-1/rooms/comfort-room /
register_post_type("room",[
"public" => true,"query_var" => false,"show_ui" => true,"delete_with_user" => false,"hierarchical" => false,"labels" => [
"name" => "Room","singular_name" => "Single Room",],"rewrite" => [
"slug" => "%room_category%/rooms","taxonomies" => [
"room_category",]);
register_taxonomy("room_category","room",[
"public" => false,"show_admin_column" => true,"rewrite" => false,"labels" => [
"name" => "Room Categories","singular_name" => "Room Category",'rewrite' => [
'slug' => "rooms",]);
function postTypeRoomCustomUrl($post_link,$id = 0) {
$post = get_post($id);
$terms = wp_get_object_terms($post->ID,'room_category');
return $terms ? str_replace('%room_category%',$terms[0]->slug,$post_link) : $post_link;
}
我已经尝试过-在帖子类型重写查询中移动分类法-在帖子类型重写查询中使用,该查询适用于酒店客房,然后它们具有正确的URL,但断开了所有其他页面的链接。也许我只是在此函数中缺少某些东西(在post_type_link
过滤器中称为该函数)。
"slug" => "%room_category%/rooms",
感谢任何帮助或提示:)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。