Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/278.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_Regex - Fatal编程技术网

Php 通过正则表达式重定向Wordpress中的自定义分类

Php 通过正则表达式重定向Wordpress中的自定义分类,php,regex,Php,Regex,我正在尝试将自定义查询与正则表达式匹配,以便可以重定向: 为此: 我尝试过这样重定向: 源url:http://www.mysite.com/category/(.*)/?标记=(.*) 目标URL:http://www.mysite.com/category/?tags=$2 但这本身也与目标URL相匹配,因此重定向陷入了一个循环中 我感谢你的帮助 这段代码在这里对我有用:(正则表达式的分隔符是#,但是您可以很容易地更改它) 非常感谢。多亏了你的回答,我解决了这个问题,但我不得不修改它,因

我正在尝试将自定义查询与正则表达式匹配,以便可以重定向:

为此:

我尝试过这样重定向:

源url:
http://www.mysite.com/category/(.*)/?标记=(.*)

目标URL:
http://www.mysite.com/category/?tags=$2

但这本身也与目标URL相匹配,因此重定向陷入了一个循环中


我感谢你的帮助

这段代码在这里对我有用:(正则表达式的分隔符是#,但是您可以很容易地更改它)


非常感谢。多亏了你的回答,我解决了这个问题,但我不得不修改它,因为我必须在重定向插件中使用它,而不是直接在PHP中使用它。我是这样做的:源URL:
/category/(.*)/(.*)/(.*)/\?标记=(.*)
目标URL:
/category/?标记=$4
HTTP代码:301
$subject = 'http://www.mysite.com/category/2010/11/title-of-post/?tags=titleoftag';
$subject2 = 'http://www.mysite.com/category/?tags=titleoftag';

$regex = '#http://www.mysite.com/category/(.*)/\?tags=(.*)#i';

$replace = 'http://www.mysite.com/category/?tags=$2';

var_dump(preg_replace($regex, $replace, $subject)); // replaces the text correctly


$result = preg_match($regex, $subject2);
var_dump($result); // finds 0 results