WordPress 禁止用户编辑“我的个人资料”的电子邮件等字段

渐渐地,那原本被夜幕笼罩的天空出现了微明。一颗颗启明星逐渐变得苍白无力,在浅浅的日光的照射下,胆怯的它们终于退却了。随着启明星的消失,害羞的太阳射出了几道耀眼的金光。

前些天, @iweb 询问如何才能禁止用户编辑“我的个人资料”中的电子邮件,倡萌今天就分享下,通过 jQuery 给表单添加禁用 disabled="disabled" 或 只读 readonly="readonly" 属性来禁止用户编辑字段的方法。将下面的代码添加到主题的 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
32
33
/**
 * WordPress 禁止用户编辑个人资料的某些字段
 * https://www.wpdaxue.com/disable-profile-fields.html
 */
global $pagenow;
if ( !current_user_can( 'manage_options' ) && $pagenow == 'profile.php' ) {
	add_action( 'admin_footer', 'disable_userprofile_fields' );
}

function disable_userprofile_fields() {
	?>
	<script>
		jQuery(document).ready( function($) {

			//禁止编辑“电子邮件”(input 举例)
			if ( $('input[name=email]').length ) {
				$('input[name=email]').attr("disabled", "disabled");
			}

			//禁止编辑“个人说明”(textarea 举例)
			if ( $('textarea[name=description]').length ) {
				$('textarea[name=description]').attr("readonly", "readonly");
			}

			//禁止编辑“公开显示为”(select 举例)
			if ( $('select[name=display_name]').length ) {
				$('select[name=display_name]').attr("disabled", "disabled");
			}

		});
	</script>
	<?php
}

/** * WordPress 禁止用户编辑个人资料的某些字段 * https://www.wpdaxue.com/disable-profile-fields.html */ global $pagenow; if ( !current_user_can( 'manage_options' ) && $pagenow == 'profile.php' ) { add_action( 'admin_footer', 'disable_userprofile_fields' ); } function disable_userprofile_fields() { ?> <script> jQuery(document).ready( function($) { //禁止编辑“电子邮件”(input 举例) if ( $('input[name=email]').length ) { $('input[name=email]').attr("disabled", "disabled"); } //禁止编辑“个人说明”(textarea 举例) if ( $('textarea[name=description]').length ) { $('textarea[name=description]').attr("readonly", "readonly"); } //禁止编辑“公开显示为”(select 举例) if ( $('select[name=display_name]').length ) { $('select[name=display_name]').attr("disabled", "disabled"); } }); </script> <?php }

以上代码可以实现 非管理员用户无法编辑 电子邮箱、个人说明、公开显示为 。你可以根据自己的需要进行修改,只要查看源代码找到表单的 name 属性,修改一下就可以禁止修改任何字段。

如果要禁止访问“我的个人资料”,可以参考:https://www.wpdaxue.com/disallow-editing-profile-information.html

以上就是WordPress 禁止用户编辑&ldquo;我的个人资料&rdquo;的电子邮件等字段。抱最大的但愿,为最大的努力,做最坏的打算。更多关于WordPress 禁止用户编辑&ldquo;我的个人资料&rdquo;的电子邮件等字段请关注haodaima.com其它相关文章!

标签: amp WordPress