【问题标题】:How to get the Following URL Structure in WordPress?如何在 WordPress 中获取以下 URL 结构?
【发布时间】:2018-06-28 16:09:42
【问题描述】:

我有一个

  • 自定义帖子类型 - 奖项(slug = 奖项)
  • 自定义分类法 - 颁奖者(awards-giver)(例如奥斯卡、金球奖等)
  • Custon 分类法 - 奖项类型(奖项类型)(例如最佳男演员、最佳电影等)
  • 自定义分类法 - 奖励年份(award-year)

现在我想在我的网站上动态拥有具有以下 URL 结构的页面

example.com/awards/oscars/year/2011

example.com/awards/oscars/best-actor/(将列出所有年度最佳男演员奖的所有获奖者)

我需要让这些 url 结构在 WordPress 中工作。有什么建议吗?

在此先感谢 :)

【问题讨论】:

  • oscars中选择父页面也是最佳演员
  • 我没有页面,这些是自定义帖子类型!
  • 在哪里发布您的内容?
  • 您是否为以上两个网址创建了自定义模板?因为重写 url 需要相应地设置,因为我们需要在重写规则中也提供实际的工作文件 url。

标签: php wordpress url-rewriting taxonomy custom-taxonomy


【解决方案1】:

示例:example.com/awards/oscars/year/2011

这可能会对您有所帮助。将以下代码放入您的 functions.php 文件中:

function custom_rewrite_basic() {
    add_rewrite_rule('^awards/([A-Za-z0-9._-]+)/year/([0-9]+)/?', 'your_actual_working_file_url.php?award_type_slug=$matches[0]&year=$matches[3]', 'top');
}
add_action('init', 'custom_rewrite_basic');

RewriteRule ^awards/([A-Za-z0-9._-]+)/year/([0-9]+)/?$  your_actual_working_file_url.php?award_type_slug=$1&year=$2

确保根据您的自定义模板文件名或默认模板文件名将您的实际工作文件 url/路径放在上面的代码中。

【讨论】:

    猜你喜欢
    • 2018-02-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-09-26
    • 2017-08-10
    • 2023-03-08
    • 2013-08-15
    • 1970-01-01
    相关资源
    最近更新 更多