WordPress 3.9中断了无效的固定链接。有可能修复代码吗?

时间:2014-08-08 作者:miked

wordpress 3.9显然对permalinks的内部工作方式进行了一些更改。

在我的例子中,这些更改似乎导致一些以前的工作页面开始返回404错误。

这些问题大多适用于多年前写的旧帖子,当时我认为Wordpress在从帖子标题创建permalink slug方面做得并不好。所以一篇旧文章可能会有标题

Ornamental design - Floral background

在我以前的帖子中,它创建了一个永久链接:

/articles/2184/1/Ornamental-design---Floral-background

有3个破折号不是很好,但至少它是有效的。现在,3.9不再是这样了。。上述permalink已停止工作并返回404。

要解决这个问题,我必须进入wordpress,找到帖子并按update。。这会在内部更新slug,将其更改为应该的状态:

/articles/2184/1/ornamental-design-floral-background

问题是,这影响了700多篇帖子,我真的不想在Wordpress admin和press update中找到每篇帖子。我还有一个问题,旧的url在更新后返回301,所以我也因此失去了一点谷歌公关。

My question

有什么方法可以让WP 3.9处理我的旧(不太好)URL吗?如果没有,我有没有办法批量更新帖子以更正URL?

1 个回复
最合适的回答,由SO网友:Scott Weber 整理而成

如果您有权访问数据库,则可以运行以下查询。不久前我也遇到过类似的问题。

UPDATE wp_posts SET post_name = REPLACE(post_name, \'---\', \'-\')

这将用post\\u名称中的单个“-”大容量替换每个“---”。明智的做法是在“guid”字段上运行相同的命令。

也许有人有更好的解决方案,但这在过去对我很有效。

结束

相关推荐