带有静态帖子页面和自定义固定链接结构的WordPress找不到带有数字永久链接的帖子

时间:2014-10-05 作者:INT

我已经设置了一个名为“Journal”的静态贴子页面,mydomain.com/journal.
此页面现在列出了我的15篇最新帖子。这么长时间都很好。

我可以通过访问mydomain.com/postname.我想改变这一点,这样我就可以通过访问mydomain.com/journal/postname.

如果我将permalink结构更改为mydomain.com/journal/%postname%/ 我可以使用permalink访问帖子,如mydomain.com/journal/im-just-a-regular-post/ 很好。

但是如果我使用一个数字永久链接,那么我最终会得到一个url,例如mydomain.com/journal/12345 或者更复杂的(这里的结局),比如mydomain.com/journal/99058672222 它只会为我提供帖子页面的内容,甚至不会重定向我。

如果我将永久链接设置还原为mydomain.com/%postname%/我可以访问我的帖子mydomain.com/99058672222 很好。为什么会这样?我能绕过这个吗?

UPDATE我安装了调试栏

这就是我得到的mydomain.com/journal/regular-old-post

请求:

日志/常规旧帖子

查询字符串:

name=常规旧帖子

匹配的重写规则:

日志/([^/]+)(/[0-9]+)?/$

匹配的重写查询:

name=常规旧帖子(&H);第页=


mydomain.com/journal/99058672222 我得到:

请求:

日记账/99058672222

查询字符串:

第=%2F99058672222页(&H);pagename=日记

匹配的重写规则:

(.?.+?)(/[0-9]+)?/$

匹配的重写查询:

pagename=journal&;页码=%2F99058672222


我可以清楚地看到它们是不同的,但我对WP中重写的机制知之甚少。有什么指示吗?

1 个回复
SO网友:INT

在一些帮助下,我能够让它与以下内容一起工作:

add_action(\'init\', \'journal_urls\');
  function journal_urls() {
      add_rewrite_rule(
          \'^journal/([^/]*)$\',
          \'index.php?name=$matches[1]\',
          \'top\'
      );
  }
也许将来有人可以从中受益。

结束

相关推荐

Show posts without term

我在一个产品页面上工作,如果产品页面标题与我在分类法“review product”中的术语相匹配,我将显示来自我的帖子类型“reviews”的评论。Example.产品页面标题:Refrigerator显示(审阅)带有以下内容的帖子:帖子类型:“评论”分类:“评论产品”术语:Refrigerator这完全可以。但有时我没有对产品的评论(因为产品名称和术语不匹配),然后我想显示“一般”评论。在我的网站中,这些帖子包含:帖子类型:“评论”分类:“评论产品”术语:No term (!!!)这篇文章没有分类法中