WordPress自定义帖子类型URL重写与自定义字段值

时间:2014-05-07 23:21:08

标签: php wordpress rewrite custom-post-type permalinks

我似乎无法按照我想要的方式工作,但这基本上就是我想做的事情:

我有一个名为“相册”的页面。这包含该页面上的所有相册。然后单击相册以转到该相册的照片库。我有一个自定义模板用于此页面集,因此所有不同的相册都将使用此模板。从这里,我希望能够点击图像并将其带到单个图像视图。因为照片库页面是自定义的帖子类型,所以当我转到单个图像时,我有一个名为“single-gallery.php”的文件,然后应该显示该文件,然后收集图像数据以显示它。

这一切都有效,但我想在整个过程中保持URL的某种方式。我几乎得到了它我想要它,但我遇到的问题是我需要重写库自定义帖子类型中的URL并使用URL中的自定义字段值来指示这是哪个相册。

要注册我的“图库”自定义帖子类型,我可以重写我的网址:

'rewrite' => array('slug'=>'album/%albumName%','with_front' => true),

然后在图库页面模板中,我使用php将%albumName%替换为当前相册。

$photoPermalink = str_replace('%albumName%', $albumName, $photoPermalink);

问题在于我猜WordPress必须索引永久链接,它正在索引%albumName%,因此当我用PHP更改它时它会被破坏。

有办法做到这一点吗?

1 个答案:

答案 0 :(得分:-1)

您需要使用wordpress自己的过滤器来执行此操作。至少要正确地做到这一点,而不会在以后的wordpress安装的其他方面造成问题。

https://wordpress.stackexchange.com/questions/39500/how-to-create-a-permalink-structure-with-custom-taxonomies-and-custom-post-types

这实际上向您展示了如何为自定义帖子类型创建自定义永久链接结构。