【问题标题】:Wordpress: Rewrite rules custom post typeWordpress:重写规则自定义帖子类型
【发布时间】:2013-11-09 01:30:03
【问题描述】:

我创建了一个新的自定义帖子类型“视频”和一个新的分类“歌手”。有 3 位歌手:迈克尔·杰克逊、麦当娜、阿姆。

我想更改固定链接,所以我想要这个网址:www.example.com/madonna/video-like-a-prayer(其中“madonna”是歌手,“video”是帖子类型而“like-a-prayer”是帖子名称)。

请问我该如何解决?谢谢。

【问题讨论】:

  • 您可以添加自己的重写规则和标签,以允许您使用自定义永久链接结构。请参阅 add_rewrite_rule 和 add_rewrite_tag。另请查看这篇文章,了解如何实现它们。 webtipblog.com/update-url-rewrite-rules-wordpress

标签: wordpress custom-post-type taxonomy


【解决方案1】:

为所有视频帖子类型设置一个永久领先的固定链接会更容易做到这一点,因此您的网址将是:

www.example.com/artist/madonna/video-like-a-prayer

设置您的自定义帖子类型选项以设置 permalink_starts_with 属性。

/**
 * Settable options for this plugin.
 *
 * @var mixed[] $options
 */
public  $options                = array(
    'default_comments'                  => '1',
    'default_page_status'               => 'draft',
    'default_trackbacks'                => '1',
    'pages_replace_websites'            => '0',
    'page_template'                     => '',
    'permalink_starts_with'             => 'artist',
    'prevent_new_window'                => '0',
);

然后,您可以使用带有如下选项数组的标题创建帖子:

    $this->pageData = array(
        'ID'            => '',
        'post_type'     => $this->pageType,
        'post_status'   => $this->pageDefaultStatus,
        'post_title'    => $this->artist.'-'.$this->video-title,
        'post_content'  => '',
        'slp_notes'     => 'new page'
    );

然后永久链接将显示为 www.example.com/artist//。

还有其他方法可以为每个艺术家创建永久链接结构,但我还没有找到一个简单而优雅的解决方案,不需要深入了解 WordPress 中的重写规则和永久链接堆栈。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-12-09
    • 1970-01-01
    • 2021-03-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多