Yoast SEO打破了自定义重写规则

时间:2016-11-25 22:32:51

标签: wordpress url-rewriting

我有一个在循环中生成自定义重写的类。

如下例所示

foreach($pages as $page)
{
    $cityRewrite = sprintf('^(%s)/(%s)?$', substr($permalink['permalink'],1), $page->post_name);
    $cityRewriteLocation = sprintf('index.php?page_id=%s&city=%s', $page->ID, $permalink['city_id']);
    add_rewrite_rule($cityRewrite, $cityRewriteLocation,'top');
}

这很有效,并且会产生多次重写。

wp-cli rewrite list采用以下格式:

^(the-city)/(checkout)?$ | index.php?page_id=[integer-here]&city=[uuid-here]
...

今天有些东西破了,突然所有页面都返回了404。 几个小时后我发现这是由插件Yoast SEO引起的,它似乎可以消除我的自定义类创建的所有重写。

所以我的问题是。

  • 我是否通过在wordpress 'init'操作上运行此自定义重写循环来解决问题?
  • 使用Yoast SEO时,您是否应该以不同方式处理自定义重写?
  • 这可能只是Yoast SEO中的错误吗?

0 个答案:

没有答案