欢迎光临
我们一直在努力

四合一简化 WordPress 个人信息,更符合国人使用习惯

建站超值云服务器,限时71元/月

今天缙哥哥想增加个人信息字段,方便管理中医体质档案,可是发现默认情况下,WordPress 后台让用户可以在后台设置:姓,名,昵称,然后选择显示的名称。大概就是下图这个样子:

四合一简化 WordPress 个人信息,更符合国人使用习惯

简直神烦有木有?搞的跟个外国佬一样,中国哪那么复杂,顶多也就姓名、昵称、显示三项。后面一想,一般人总不会显示姓名吧,那显示的选项也就没有必要了,为什么不直接留个昵称就好了呢?

其实只是用来写写博客,很少的编辑会填这么多的东西,但是如果删掉的话,又怕某些字段需要引用,所以最好的方法就是把他们隐藏起来,看了一下 WordPress 源代码,名称设置这里竟然没有 filter,没有filter 那就用 JS 来隐藏,然后提交的时候,把显示的名称强制设置为昵称就好了。

最后的代码如下,同样复制到当前主题的 functions.php 文件即可:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
/** 
* 四合一简化 WordPress 后台用户个人信息姓名昵称设置 
* https://www.dujin.org/fenxiang/wp/10138.html 
*/ 
add_action('show_user_profile','wpjam_edit_user_profile');
add_action('edit_user_profile','wpjam_edit_user_profile');
function wpjam_edit_user_profile($user){
	?>
	<script>
        jQuery(document).ready(function($) {
                $('#first_name').parent().parent().hide();
                $('#last_name').parent().parent().hide();
                $('#display_name').parent().parent().hide();
                $('.show-admin-bar').hide();
        });
        </script>
<?php 
} 
 
//更新时候,强制设置显示名称为昵称 
add_action('personal_options_update','wpjam_edit_user_profile_update'); 
add_action('edit_user_profile_update','wpjam_edit_user_profile_update'); 
function wpjam_edit_user_profile_update($user_id){ 
        if (!current_user_can('edit_user', $user_id)) 
                  return false; 
        $user = get_userdata($user_id); 
        $_POST['nickname'] = ($_POST['nickname'])?:$user->user_login;
	$_POST['display_name']	= $_POST['nickname'];
	$_POST['first_name']	= '';
	$_POST['last_name']		= ''

/** * 四合一简化 WordPress 后台用户个人信息姓名昵称设置 * https://www.dujin.org/fenxiang/wp/10138.html */ add_action(‘show_user_profile’,’wpjam_edit_user_profile’); add_action(‘edit_user_profile’,’wpjam_edit_user_profile’); function wpjam_edit_user_profile($user){ ?> <script> jQuery(document).ready(function($) { $(‘#first_name’).parent().parent().hide(); $(‘#last_name’).parent().parent().hide(); $(‘#display_name’).parent().parent().hide(); $(‘.show-admin-bar’).hide(); }); </script> <?php } //更新时候,强制设置显示名称为昵称 add_action(‘personal_options_update’,’wpjam_edit_user_profile_update’); add_action(‘edit_user_profile_update’,’wpjam_edit_user_profile_update’); function wpjam_edit_user_profile_update($user_id){ if (!current_user_can(‘edit_user’, $user_id)) return false; $user = get_userdata($user_id); $_POST[‘nickname’] = ($_POST[‘nickname’])?:$user->user_login; $_POST[‘display_name’] = $_POST[‘nickname’]; $_POST[‘first_name’] = ”; $_POST[‘last_name’] = ”; }

赞(0)
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com 特别注意:本站所有转载文章言论不代表本站观点! 本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。未经允许不得转载:IDC资讯中心 » 四合一简化 WordPress 个人信息,更符合国人使用习惯
分享到: 更多 (0)