WordPress 永久链接如何工作(在技术层面)
How do WordPress permalinks work (at a technical level)
我是 WordPress 新手,正在处理一系列涉及永久链接的问题。我已经在我的网站上使用了 /%postname% 样式的固定链接,但我无法弄清楚 它们是如何工作的 —— URL包含通常类型的 /words-from-the-title 东西得到 rewritten/redirected/whatever 到正确的 post.
我在根目录的 .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
但是,鉴于我对 Apache 重写规则的相当了解,我不明白这是如何进行映射的。我有一半希望我的 .htaccess 文件会被一堆 RewriteRule 语句填满,每个页面都需要重定向,但这似乎并没有发生。无论如何,任何人都可以帮助我的好奇心吗?谢谢!
默认的 WordPress .htaccess 文件仅通过 index.php
重定向所有请求(来自基础 URL)——这将处理所有重写。所以重写逻辑都在 WordPress 的代码库中。这就是为什么你不需要为每个 post.
重写规则
查看 this source file 以更深入地了解逻辑部分。
真正了解 WordPress 工作原理的一个很好的练习是从 index.php
(入口点)开始并检查代码带给您的位置。
我是 WordPress 新手,正在处理一系列涉及永久链接的问题。我已经在我的网站上使用了 /%postname% 样式的固定链接,但我无法弄清楚 它们是如何工作的 —— URL包含通常类型的 /words-from-the-title 东西得到 rewritten/redirected/whatever 到正确的 post.
我在根目录的 .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
但是,鉴于我对 Apache 重写规则的相当了解,我不明白这是如何进行映射的。我有一半希望我的 .htaccess 文件会被一堆 RewriteRule 语句填满,每个页面都需要重定向,但这似乎并没有发生。无论如何,任何人都可以帮助我的好奇心吗?谢谢!
默认的 WordPress .htaccess 文件仅通过 index.php
重定向所有请求(来自基础 URL)——这将处理所有重写。所以重写逻辑都在 WordPress 的代码库中。这就是为什么你不需要为每个 post.
查看 this source file 以更深入地了解逻辑部分。
真正了解 WordPress 工作原理的一个很好的练习是从 index.php
(入口点)开始并检查代码带给您的位置。