WordPress替换登陆后的默认首页

如需帮忙改代码,或者WordPress二次开发、PHP网站建设等需求,可联系我购买付费服务:  点此联系我

     如果你是想实现登录后返回登录前的页面,可以参考:WordPress登陆之后返回登陆前的页面

     WordPress登陆后默认显示的"仪表盘"页面,也就是之前所说的"控制板"页面,其实这个"仪表盘"页面实际意义真的不大,现在我想登陆后就直接显示"所有文章"页面(或者是后台任何页面吧),该如何操作呢?下面的内容也算是回答 liveme 网友的提问吧。

     其实操作也很简单,使用文本编辑器打开当前主题目录下的functions.php,在末尾加上以下php代码:

/**
 * 名称:WordPress替换登陆后的默认首页
 * 作者:露兜
 * 博客:https://www.ludou.org/
 * 最后修改:2012年04月06日
 */

function my_login_redirect($redirect_to, $request){
  if( empty( $redirect_to ) || $redirect_to == 'wp-admin/' || $redirect_to == admin_url() )
    return home_url("/wp-admin/edit.php");
  else
    return $redirect_to;
}
add_filter("login_redirect", "my_login_redirect", 10, 3);

     其中第10行的:/wp-admin/edit.php,就是登陆后要跳转的后台页面地址,这里设置成所有文章页面,如果你想登陆后跳转到写文章页面,可以改成:/wp-admin/post-new.php,其他的依此类推。

     注意:如果你的WordPress安装在子目录,如wp目录,那么第10行中的地址应该加上子目录,如/wp/wp-admin/edit.php

     如果你想登录后跳转到站内任何一个网址,请将9-12行代码替换成:

$redirect_to = 'http://这里填你的网址';

     如果你非得让wp-admin/index.php完全消失,手工输入网址.../wp-admin/也要让它跳转到所有文章页面,那你就在用文本编辑器打开wp-admin/index.php,将第一个 <?php 改成:

<?php
header("Location: http://…/wp-admin/edit.php");
exit();

     其中http://…/wp-admin/是你的后台网址。这样修改的缺点是,每次WordPress更新,你就得重新修改一次。

     好了,内容就这么简单,你会了吗?不懂可以给我留言。

-- 完 --

本文采用 「CC BY-NC-SA 4.0」创作共享协议,转载请标注以下信息:
原文出处:露兜博客 https://www.ludou.org/wordpress-login-redirect.html
露兜
kaapass@outlook.com  QQ 825533758

业余编程爱好者,主业是淘宝店主,卖些工艺品,感兴趣可以到我的淘宝店看看(旺旺不提供技术咨询):西西弗sisyphe