【问题标题】:WordPress archive/taxonomy locationWordPress 存档/分类位置
【发布时间】:2018-10-14 06:28:43
【问题描述】:

尽管我在 WordPress 开发人员还好,但我仍然在为此苦苦挣扎。

我创建了一个名为 links

的自定义帖子类型

我还创建了一个名为 link-type

的自定义分类法

在主题的根目录中使用archive.php 时一切正常。

但我希望 links 成为资源的子 页面,因此:

example.com/links/ 将变为 example.com/resources/links/

然后单击分类术语链接,例如 downloads 将带您到 example.com/resources/links/downloads/

我知道has_archiverewritewith_frontslug 但不明白如何使用它们来实现上述结构。

一如既往,我们非常感谢专家的帮助。

【问题讨论】:

    标签: wordpress archive permalinks taxonomy slug


    【解决方案1】:

    当你注册你的帖子类型时,只需在 rewrite 参数中添加任何你想要的内容,正斜杠在 slug 中是可以接受的。

    $args = array(
        'labels' => $labels,
        ...
        'rewrite' => array(
            'slug' => 'resources/links',
            'with_front' => true
        ),
    );
    

    这会给你https://example.com/resources/links/,即使你已经在https://example.com/resources/有一个页面。

    我差点忘了,您需要确保刷新您的重写规则(这可以在注册 CPT 时以编程方式完成,或者您可以直接转到您的 设置 > 永久链接 选项页面,然后单击Save Changes 一次性完成同样的事情。

    【讨论】:

    • 这太好了,非常感谢@Xhynk,正是我所需要的。出于兴趣,我们知道with_front 做了什么吗?
    • 我的荣幸!它实际上默认为true,因此在这种情况下可能没有必要。但是你可以阅读它here。这只是意味着如果您的永久链接结构中有额外的路径,它将被包含(例如,如果您有 /blog/,默认情况下将是 /blog/cpt/(true)或者如果设置为 false,则只是 /cpt/
    猜你喜欢
    • 2016-08-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-11-05
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多