臻享优惠价:最高返 500 抵扣券 → 查看活动!>>>

WordPress网站防止暴露用户名的WordPress 技巧是什么?

  默认情况下,在用户注册的时候,直接过滤掉user_login一些不适合在链接中生成的字符,然后全部转成小写字母生成user_nicename。所以大部分 WordPress 用户的user_nicename和user_login是一样的,这样通过查看某个作者的文章列表链接,就能猜到他的登录账号user_login,...

  默认情况下,在用户注册的时候,直接过滤掉user_login一些不适合在链接中生成的字符,然后全部转成小写字母生成user_nicename。所以大部分 WordPress 用户的user_nicename和user_login是一样的,这样通过查看某个作者的文章列表链接,就能猜到他的登录账号user_login,然后就可以暴力破解。那么WordPress网站防止暴露用户名的WordPress 技巧是什么?

WordPress网站防止暴露用户名的WordPress 技巧是什么?

  1. 修改 user_nicename。

  WordPress 后台没有提供修改的user_nicename的地方,「WPJAM用户管理插件」已经实现了该功能。

  2. 作者的文章列表链接不出现 user_login

  如果用户的user_nicename和user_login是一样的情况下:

  作者文章链接使用author_id代替user_nicename。

add_filter('author_link', function($link, $author_id, $author_nicename){$author= get_userdata($author_id);if(sanitize_title($author->user_login) == $author_nicename){global $wp_rewrite;$link= $wp_rewrite->get_author_permastruct();$link= str_replace('%author%', $author_id, $link);$link= home_url(user_trailingslashit($link));}return $link;}, 10, 3);

  原来的作者链接直接设置为 404 页面,防止用户名暴露。

add_action('pre_get_posts',  function($wp_query) {if($wp_query->is_main_query() && $wp_query->is_author()){if($author_name = $wp_query->get('author_name')){$author_name= sanitize_title_for_query($author_name);$author= get_user_by('slug', $author_name);if($author){if(sanitize_title($author->user_login) == $author->user_nicename){$wp_query->set_404();}}else{if(is_numeric($author_name)){$wp_query->set('author_name', '');$wp_query->set('author', $author_name);}}}}});

  WPJAM用户管理插件已经集成该功能,直接启用即可。以上就是小编为大家分享的关于防止暴露用户名的WordPress 技巧。

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

给TA打赏
共{{data.count}}人
人已打赏
豆包可以帮你高效完成AI问答、AI对话、提供软件相关教程以及解决生活中遇到的各种疑难杂症,还能帮助你进行AI写作、AI绘画等等,提高你的工作学习效率。
!
你也想出现在这里?立即 联系我们吧!
信息
个人中心
购物车
优惠劵
今日签到
搜索