我有一个wordpress页面http://www.mysiteurl.com/pagename/
我想要表单的任何URLhttp://www.mysiteurl.com/pagename/{any string here}
重定向或显示我的原始页面。我该怎么做呢?有没有一个wordpress插件可以让这对我来说很简单?
Wordpress URL redirect
1 个回复
最合适的回答,由SO网友:Ismail 整理而成
这是很有可能的。首先,制作pagename/{customString}
解析为页面本身而不是404,然后,您可以自由决定是保持URI不变并提供页面内容,还是重定向回某个位置,例如页面永久链接(get_the_permalink()
):
add_action( "init", function(){
$pagename = "pagename"; // page slug
add_rewrite_rule(
sprintf(\'^%s/([^/]*)/?\', $pagename),
sprintf(\'index.php?pagename=%s&pageParam=$matches[1]\', $pagename),
\'top\'
);
});
add_filter( "query_vars", function( $vars ){
$vars[] = "pageParam";
return $vars;
});
add_action( "template_redirect", function(){
if ( $param = get_query_var( "pageParam" ) ) {
/* make sure param is not for comments pagination or smth similar */
wp_redirect( get_the_permalink(), 301 );
exit;
}
});
如果不希望重定向,请删除挂接到中的代码template_redirect
(截至第15行)。要获取自定义字符串({any string here}
), 简单呼叫get_query_var( "pageParam" )
.希望这有帮助。