【发布时间】:2014-04-17 15:32:31
【问题描述】:
如何重写 Wordpress URL,这样,如果我在 www.domain.com/A 上托管了页面 A,Wordpress 也会显示 www.domain.com/A/ABC、www.domain.com 的该页面/A/ABCDEF 等?我知道这可能不是一个好主意。我有一个非常具体的用例。我的测试服务器运行 Ubuntu,而实时服务器运行 Windows Server 2003,两个站点都在 Apache 上。
我尝试过的:
-
直接修改.htaccess:
重写规则 A/?.* A/
(我试图通过在我的 Apache 服务器配置中打开 RewriteLog 来调试为什么这不起作用。我发现所有重写最终都在 Wordpress 的 index.php 中,所以我认为使用 Wordpress 的可能更合适为此重写工具。)
-
使用 WP_Rewrite(在 functions.php 中):
函数 A_rewrite( $wp_rewrite ) { $wp_rewrite->rules["A/?.*"] = "A/"; 返回 $wp_rewrite->规则; } add_filter('generate_rewrite_rules', 'A_rewrite');
这两种方法都无法重写 URL,即请求仍然到达 /A/ABCD,产生 404。
非常感谢有关我在这些方法中做错了什么或更好的解决方案的指导。
【问题讨论】:
标签: php wordpress apache .htaccess mod-rewrite