- 资源介绍
- 更新记录
- 安装教程
WordPress制作前端会员用户中心实用功能代码
前端会员中心,制作过程中也整合了几个实用的前端会员中心功能,现在将代码整理分享给大家
WordPress 支持中文用户名
//让wordpress支持中文用户名
function xh_sanitize_user ($username, $raw_username, $strict) {
$username = wp_strip_all_tags( $raw_username );
$username = remove_accents( $username );
// Kill octets
$username = preg_replace( ‘|%([a-fA-F0-9][a-fA-F0-9])|’, ”, $username );
$username = preg_replace( ‘/&.+?;/’, ”, $username ); // Kill entities
// 网上很多教程都是直接将$strict赋值false,
// 这样会绕过字符串检查,留下隐患
if ($strict) {
$username = preg_replace (‘|[^a-z\p{Han}0-9 _.\-@]|iu’, ”, $username);
}
$username = trim( $username );
// Consolidate contiguous whitespace
$username = preg_replace( ‘|\s+|’, ‘ ‘, $username );
return $username;
}
add_filter (‘sanitize_user’, ‘xh_sanitize_user’, 10, 3);
非管理员不允许进入后台
PS:既然有了前端会员中心,用户就没必要进入后台了,禁止非管理员进入可提高安全性。
/非管理员不允许进入后台
if ( is_admin() && ( !defined( ‘DOING_AJAX’ ) || !DOING_AJAX ) ) {
$current_user = wp_get_current_user();
if($current_user->roles[0] == get_option(‘default_role’)) {
wp_safe_redirect( home_url() );
exit();
}
}
让 WordPress 支持Email登录
邮箱登录大家并陌生,忘记用户名用邮箱登录岂不是更友好。
// 修改WordPress用户名过滤机制,通过Email获取用户名
function ludou_allow_email_login($username, $raw_username, $strict) {
if (filter_var($raw_username, FILTER_VALIDATE_EMAIL)) {
$user_data = get_user_by(’email’, $raw_username);
if (empty($user_data))
wp_die(__(‘<strong>ERROR</strong>: There is no user registered with that email address.’), ‘用户名不正确’);
else
return $user_data->user_login;
}
else {
return $username;
}
}
if (strpos($_SERVER[‘REQUEST_URI’], ‘?action=register’) === FALSE && strpos($_SERVER[‘REQUEST_URI’], ‘?action=lostpassword’) === FALSE && strpos($_SERVER[‘REQUEST_URI’], ‘?action=rp’) === FALSE ) {
add_filter(‘sanitize_user’, ‘ludou_allow_email_login’, 10, 3);
}
让用户默认不显示工具栏
//让用户默认不显示工具栏
add_action(“user_register”, “set_user_admin_bar_false_by_default”, 10, 1);
function set_user_admin_bar_false_by_default($user_id) {
update_user_meta( $user_id, ‘show_admin_bar_front’, ‘false’ );
update_user_meta( $user_id, ‘show_admin_bar_admin’, ‘false’ );
}
猜你在找
- 2021-04-26Hi,初次和大家见面了,请多关照!
最后编辑:2021-04-26



