自定义帖子类型的永久链接

时间:2014-01-05 19:30:05

标签: wordpress categories

我正在尝试获取自定义帖子类型的链接 - 视频。我通过以下方式实现了这一目标:

get_post_type_archive_link( 'video' );

这会返回http://mylink.co.uk/video,这是一个很棒的,正是我想要的。但是,当我点击自定义帖子类型类别例如... LIVE并加载过滤后的结果时,使用get_post_type_archive_link( 'video' );的脚本链接现在会更改为LIVE类别链接,显示{ {1}}。

有什么问题?

更新

http://mylink.co.uk/category/live/

1 个答案:

答案 0 :(得分:0)

我不知道为什么会这样。我读了代码(你的代码和WordPress的源代码)并没有找到原因。我只能告诉你两件可能有用或可能没有帮助的事情: -

第一

这一行: -

register_post_type( 'Video', $args );

应该是这样的: -

register_post_type( 'video', $args ); // small v

第二

您可以做的一个快速而肮脏的解决方法是对视频帖子类型存档链接进行“硬编码”。尝试在functions.php中插入此代码: -

function video_post_type_archive_link( $link, $post_type ) {
   if( $post_type === 'video' ) {
      $link = 'http://mylink.co.uk/video' // <-- this should be link to 'video' post type archives
   }
   return $link;
}
add_filter('post_type_archive_link', 'video_post_type_archive_link', 10, 2);

现在,只要你打电话给我:

get_post_type_archive_link( 'video' );

你会得到:

http://mylink.co.uk/video

仅适用于视频自定义帖子类型。