我必须在我的 URL 末尾添加一个查询,如下所示:
http://www.somewordpressite.com/?page_id=57?login=failed
现在我需要检查 '?login=failed' 是否存在,以便加载正确的模板。
我尝试了很多变化,但我似乎无法抓住它。
<?php
$checkurlquery[] = $_SERVER['QUERY_STRING'];
//echo json_encode($_GET, JSON_HEX_TAG);
foreach($checkurlquery as $key => $v){
$dice = $checkurlquery[$key];
echo ($dice);
}
?>
结果:page_id=57?login=failed
最终,我只是想到达这里:
if ( //LOGIN failed )) {
get_template_part( 'login', 'failed' );
} else {
get_template_part( 'login', 'form' );
}
如何检查 login=failed,以便我可以使用它来加载正确的模板部分?谢谢。
编辑:是的,我能够更改 URL,所以它可以是:http://www.somewordpressite.com/?page_id=57&login=failed,但它产生了一个问题。因为 Wordpress 使用那个“?”,所以如果我在主页上,并且登录失败,我会收到 404 错误:
这个网址没问题,抓取索引页:
www.site.com/ ?login=failed
此 URL 是 404 错误:
www.site.com/&login=failed
编辑:这是 Wordpress functions.php 中必要的更新功能: 登录后重定向,Wordpress URL
然后在 header.php(或您选择的位置)中,添加:
<?php
if(isset($_GET['login']) === true and $_GET['login'] === 'failed')
{
get_template_part( 'login', 'failed' );
} else {
get_template_part( 'login', 'form' );
}
?>