如何更正损坏的 WordPress 固定链接

How Can I correct Broken WordPress Permalinks

我的 WordPress 博客 运行 出现问题。以前,我可以使用 URL 访问页面,例如 https://mywebsite.com/index.php/all. However, something unexplainable happened such that this URL has been renamed to https://mywebsite.com/?page_id=102. I have tried to change the permalink structure under settings and the link breaks. When the link appears as https://mywebsite.com/all it does not load in the browser. When I manually write it in the browser URL bar as https://mywebsite.com/index.php/all it automatically redirects to https://mywebsite.com/all。好像我不能再使用以前包含在原始 URL 模式中的 index.php 名称,因此无法使用人类友好的名称访问链接。我怎样才能解决这个问题?

您的 .htaccess 文件似乎已被覆盖。最简单的解决方案是将永久链接设置改回 page_id 然后再次更改为 Post 名称它应该覆盖 .htaccess 文件,如果没有尝试将其放入您的 .htaccess:

# BEGIN WordPress
# The directives (lines) between "BEGIN WordPress" and "END WordPress" are
# dynamically generated, and should only be modified via WordPress filters.
# Any changes to the directives between these markers will be overwritten.
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

# END WordPress

如果只是通过在 url 中添加 index.php 来访问所有页面,那么您可以简单地使用自定义永久链接结构来允许 WP 执行此操作。

你提到它显示 page_id 代替名字,所以在永久链接中你可以使用 %postname 作为他的名字。看看截图。

完成此更改后,您的 url 将按您要求的方式工作。

Click to view screenshot of Custom permalink