2

我在这个问题上进行了广泛的搜索,发现其他人也有类似的问题,但没有适合我的解决方案。

情况是这样的:
* 我创建了一个带有“事件”的自定义帖子类型。
* 我创建了一个带有“事件”的页面。
* 我已将子页面添加到事件页面(一级子页面)
* 我已将子页面添加到那些子页面(二级子页面)
* 永久链接结构设置为 /%category%/%postname%/
* I我没有使用任何插件或自定义代码来处理自定义帖子类型。
* 当我导航到 /events/ 时,页面可以使用 pages.php 模板正常加载。
* 当我导航到 /events/first-level-child/ 时,我得到一个 404。
* 当我导航到 /events/first-level-child/second-level-child/ 时,使用 page.php 模板可以正常加载页面。
* 当我导航到 /events/category-name/ 时,页面使用 archive.php 模板加载正常。

问题是我在尝试查看具有与自定义帖子类型相同的 slug 的页面的第一级子页面时得到的 404。

我不能重命名任何一个蛞蝓以使它们不同。我需要找到一种方法让子页面和类别都按预期为事件页面工作。我无法在 .htaccess 文件中为子页面创建自定义重定向,因为客户端必须能够自己创建它们。

有没有办法修改WordPress生成的重写规则来实现我的目标?或者是否有一个我可以使用的插件会有所帮助?我猜 WordPress 期望第二个 uri 段是一个类别名称。如果没有找到类别,有没有办法让它查找具有该名称的页面?

4

1 回答 1

0

看起来这里的解决方案是为自定义帖子类型定义一个自定义分类,其中的 slug 与帖子类型本身的 slug 不同。

在这种情况下,帖子类型的 slug 是“事件”,分类的 slug 是“事件/类别”。这样做可以显示子页面以及帖子的类别。

于 2013-01-14T18:39:35.430 回答