带有多个固定链接的新闻帖子?从不同页面打开时

时间:2018-11-29 作者:Tim

我有个问题。也许这是现有的东西,我不知道它的名字。或者这是一种习俗。

我有一个新闻的帖子类型。新闻帖子有类别。以下是一些单独新闻项目的示例

新闻项目1。

“紫色”类新闻第2条。

“紫色”类“红色”类新闻第3条。

“红色”类别我有3页显示和过滤新闻:

www.domain。com/news(显示所有新闻)

  • www.domain。com/purple/news(显示所有紫色新闻)
  • www.domain。com/red/news(显示所有紫色新闻)
  • 在每个新闻页面上显示过滤后的帖子网格不是问题。问题是显示它们。默认情况下,每条新闻帖子的永久链接为:

    www.domain。com/news/news-item-1 www.domain。com/news/news-item-2 www.domain。com/news/news-item-3,这对于www.domain上的新闻来说很好。com/新闻/

    但现在我想显示如下类别的新闻项目:来自www.domain。com公司/purple/新闻我要单击新闻项并打开它,如下所示:

    www.domain。com公司/purple/新闻/news-item-1 www.domain。com公司/purple/新闻/news-item-2和www.domain。com公司/red/新闻我要单击新闻项并打开它,如下所示:

    www.domain。com公司/red/新闻/news-item-2 www.domain。com公司/red/新闻/news-item-3/ul>

    问题是如何在分类新闻页面上打开新闻并在首选url上显示项目?(这也应该显示在sitemap.xml中)

    2 个回复
    最合适的回答,由SO网友:Tim 整理而成

    我找到了解决办法。这是抽象版本:

    add_rewrite_rule(
         \'^red\\/news([^/]*)/?\',
         \'index.php?event=$matches[1]\',
         \'top\'
    );
    
    //Ensure the $wp_rewrite global is loaded
    global $wp_rewrite;
    //Call flush_rules() as a method of the $wp_rewrite object
    $wp_rewrite->flush_rules( false );
    
    在实际函数中,我用我想要重定向的页面创建了一个数组。(源和目标),然后运行foreach并刷新规则。

    SO网友:Harsh Khare

    您可以使用自定义Permalinks插件。你可以创建和编辑每篇文章和分类链接。https://wordpress.org/plugins/custom-permalinks/试试这个

    结束

    相关推荐

    如何将Java脚本添加到Custom-Page.php模板?

    如何将javascript添加到自定义页面。php模板?如何使从w3schools ajax教程获得的以下javascript在自定义页面上工作。php模板?任何帮助都将不胜感激。工作javascript包含在以下HTML中:<!DOCTYPE html> <html> <style> table,th,td { border : 1px solid black; border-collapse: collapse;&#x