Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/wordpress/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Wordpress页面重写_Php_Wordpress_Apache_.htaccess_Mod Rewrite - Fatal编程技术网

Php Wordpress页面重写

Php Wordpress页面重写,php,wordpress,apache,.htaccess,mod-rewrite,Php,Wordpress,Apache,.htaccess,Mod Rewrite,我如何重写Wordpress URL,以便如果我在www.domain.com/a上托管了一个页面a,Wordpress也会为www.domain.com/a/ABC、www.domain.com/a/ABCDEF等显示该页面。?我知道这通常不是一个好主意。我对此有一个非常具体的用例。我的测试服务器运行Ubuntu,而live服务器运行Windows server 2003,这两个站点都在Apache上 我所尝试的: 直接修改.htaccess: 重写规则A/?*A/ (我试图通过在Apac

我如何重写Wordpress URL,以便如果我在www.domain.com/a上托管了一个页面a,Wordpress也会为www.domain.com/a/ABC、www.domain.com/a/ABCDEF等显示该页面。?我知道这通常不是一个好主意。我对此有一个非常具体的用例。我的测试服务器运行Ubuntu,而live服务器运行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->rules; } 添加过滤器(“生成重写规则”、“A重写”)

这两种方法都无法重写URL,即请求仍然转到/A/ABCD,生成404


如果您能为我提供指导,说明我在这两种方法中犯了什么错误,或者是一个更好的解决方案,我将不胜感激。

在wordpress中,不要使用任何代码。转到设置并永久链接单击更多选项您可以选择任何选项,或者选择其他选项并编写您想要显示的代码

由于缺乏适合我的更好的解决方案,我最终在我的functions.php中执行了以下操作:

$original_request = $_SERVER['REQUEST_URI'];
$new_request = preg_replace("/\/A\/?.*\?id\=([A-Za-z0-9]+)$/", "/A/?id=$1", $original_request);

if ($original_request !== $new_request) {
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, "http://" . $_SERVER['HTTP_HOST'] . $new_request);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    $ret = curl_exec($ch);
    echo $ret;
    die();
}

不知道你的意思。我不认为Permalinks面板中的任何东西对我有帮助。