我有一个关于永久链接的 Wordpress 问题。
当我有一个固定链接为 /2009/10/podcasts 的帖子时,尝试访问 /podcasts 会重定向到 /2009/10/podcasts。有什么办法可以阻止这种行为,以便我可以将其作为 404 处理?
我正在使用自定义 404 处理程序来检查请求是否为 404 错误并从 Wordpress 中执行 Kohana 请求。
我有一个关于永久链接的 Wordpress 问题。
当我有一个固定链接为 /2009/10/podcasts 的帖子时,尝试访问 /podcasts 会重定向到 /2009/10/podcasts。有什么办法可以阻止这种行为,以便我可以将其作为 404 处理?
我正在使用自定义 404 处理程序来检查请求是否为 404 错误并从 Wordpress 中执行 Kohana 请求。
I just got the answer on the WP forums. It's
remove_filter('template_redirect', 'redirect_canonical');
刚刚检查了 wordpress 的默认安装 - 事实上,无论如何寻找路径似乎是 wordpress 的默认行为 - 无论您添加隐藏什么目录。因此,将“/2010/01/some-long-url”替换为“/error/some-long-url”也会将请求重定向到“/2010/01/some-long-url”。
无论如何 - 我仍然可以建议两种解决方法:1)如果你真的想得到一个真正的 404 错误,你可以在你的 htaccess 中使用 redirect 方法将请求转发到一个不存在的 url - 只需添加一个像这样的重定向行:
Redirect /podcasts /podcasts-error
所有的 htacces 可能看起来像这样:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
Redirect /podcasts /podcasts-error
</IfModule>
2) 如果您真的不需要 404 错误,您也可以添加一个页面并为其提供完全相同的 url - 在这种情况下,它将是“播客”。这将停用转发。然后,您可以将您自己的自定义“错误消息”添加到该页面。
格瑞兹, t..