WordPress登录后如何跳转到指定页面
之前写模板的时候,北京网站建设的朋友要求网站登录后跳转到指定页面,以前没遇到过。于是用万能搜索(很少用百度)找到了。方法基本就一个。代码如下:
?PHP
//重定向函数的字段custom_login_fields() {
?
plabelstrongChoose your location: /strong
选择名称='login_location'
option value=''选择hellip;/option
选项值='?php bloginfo('url');#banking'银行业务/期权
选项值='?php bloginfo('url');#insurance'保险/选项
选项值='?php echo get_permalink(2);'证券/期权
/选择/标签
/pbr/
?PHP
} //重定向函数
函数location_redirect() {
$location=$_POST['login_location'];
wp_safe_redirect($location);
出口(); } //向登录表单添加字段
add_action('login_form','custom_login_fields'); //确保只有当你的字段被提交时才会发生重定向
if ( (isset($_GET['action']) $_GET['action'] !='logout') || (isset($_POST['login_location']) !empty($_POST['login_location']) ) )
add_filter('login_redirect', 'location_redirect', 10, 3);
?
但是我试过没有成功,我不知道为什么。于是又搜索了一下,登录后又回到了登录前的页面(北京网站制作),有以下几种方法:
方法一:
wordpress 安装文件中有一个名为“wp_login_url()”的函数。该函数用于登录后跳转到用户指定的页面。它可以接收一个参数,这个入参的值就是可以访问的url地址。
通过使用“get_permalink()”作为入参(get_permalink()函数用于获取当前页面的地址),登录后的页面可以自动跳转到登录前的页面。
代码如下:
a title='Login' href='?php echo wp_login_url(get_permalink());'登录查看/a
只需要复制上面的代码,放在用户登录后需要返回的页面(也就是登录前的页面),就可以了。
方法二:
函数back_curPageURL() {
$pageURL='http';
如果(isset($_SERVER['HTTPS'])和$_SERVER['HTTPS']=='on')
$pageURL .='s';
$pageURL .='://';
如果(isset($_SERVER['SERVER_PORT'])和$_SERVER['SERVER_PORT']!='80')
$pageURL .=$_SERVER['SERVER_NAME'].':'.$_SERVER['SERVER_PORT'].$_SERVER['REQUEST_URI'];
别的
$pageURL .=$_SERVER['SERVER_NAME'].$_SERVER['REQUEST_URI'];
返回$pageURL;
}
add_filter('login_redirect', 'back_curPageURL');
将以上代码添加到function.php 文件中。
我认为这种方法与前一种方法类似。
于是我改了,变成了登录后跳转到指定页面的方法。这也是论坛里有朋友回复我的内容。代码如下:
add_filter('login_redirect', 'new_login_redirect');
函数new_login_redirect()
{
return '登录成功后重定向的URL地址';
}
我们专注高端建站,小程序开发、软件系统定制开发、BUG修复、物联网开发、各类API接口对接开发等。十余年开发经验,每一个项目承诺做到满意为止,多一次对比,一定让您多一份收获!