首页 > 解决方案 > 如何手动将 Wordpress 永久链接从 id 更改为页面名称

问题描述

我正在修复一个不更新但保持相同状态的旧 wordpress 网站。它创建于 2012 年。多年来,托管公司自动更新了 PHP 和 Wordpress,并破坏了该网站。

我需要网站处于 2012 年的状态,以便一切正常。我已将 Wordpress 版本回滚到 3.3.1,并在网站上运行 PHP 5.4。

某些功能在该站点上再次起作用,这很好。但是,管理面板的作用不如管理菜单出现,但是当您单击选项卡时,它在右侧是空白的。如果你知道如何解决这个问题,请告诉我。错误记录似乎不会产生任何线索。

我的问题是,在回滚时,永久链接已经回到他们的 ID 路由而不是页面名称路由。我需要它们作为页面名称路由,但由于管理菜单已损坏,我必须在 functions.php 中创建一些重写规则来实现这一点。

有人可以告诉我在这上面写什么。我不熟悉重写规则。

标签: phpwordpressurl-rewriting

解决方案


这应该是不言而喻的,但在尝试之前确保你有一个备份!

我自己没有尝试过,我不确定自 3.3.1 以来发生了多少变化,但这是我会做的:

  1. 在wp_options表的option_name列下找到permalink_structure条目。

  2. 将option_value修改为您要使用的结构。例如/%postname%/

  3. 要刷新主题中的永久链接或重写规则,您需要使用该flush_rewrite_rules()功能。将函数添加到您的 functions.php 文件并刷新页面,然后将其注释掉 - 您只需运行一次。

  4. 确认.htaccess重写规则到位:

# BEGIN WordPress

RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]

# END WordPress

希望,应该就是这样!


推荐阅读