WordPress 后台用户资料页元素清理代码 的逐行注释与说明

VFX大学 wordpress开发 WordPress 后台用户资料页元素清理代码 的逐行注释与说明

正在查看 0 条回复
  • 作者
    帖子
    • #368

      追光
      管理员

      下面是对你提供的 WordPress 后台用户资料页元素清理代码 的逐行注释与说明,可作为开发者文档或教学用途使用。


      📌 作用概述:

      该函数通过注入 JavaScript(jQuery)代码,动态隐藏或移除 WordPress 后台“编辑个人资料”页中不必要的字段和标题。适用于简化用户界面、限制普通用户编辑敏感信息、提升后台体验。


      ✅ 完整代码 + 中文注释:

      // 定义一个函数,用于清理 WordPress 后台用户个人资料页面的多余选项
      function remove_personal_options() {
          echo '<script type="text/javascript">
          jQuery(document).ready(function($) {
      
              // 移除 “个人选项” 的标题(位于表单顶部的第一个 <h2>)
              $(\'form#your-profile > h2:first\').remove();
      
              // 移除 “可视化编辑器” 开关选项
              $(\'form#your-profile tr.user-rich-editing-wrap\').remove();
      
              // 移除 “后台配色方案” 选择器
              $(\'form#your-profile tr.user-admin-color-wrap\').remove();
      
              // 移除 “评论快捷键” 开关
              $(\'form#your-profile tr.user-comment-shortcuts-wrap\').remove();
      
              // 移除 “工具栏” 显示与否的选项(用于前台显示顶部工具栏)
              $(\'form#your-profile tr.user-admin-bar-front-wrap\').remove();
      
              // 移除 “语言” 选择器
              $(\'form#your-profile tr.user-language-wrap\').remove();
      
              // 移除 “名字” 输入框
              $(\'form#your-profile tr.user-first-name-wrap\').remove();
      
              // 移除 “姓氏” 输入框
              $(\'form#your-profile tr.user-last-name-wrap\').remove();
      
              // 隐藏 “昵称(必填)” 字段,而不是彻底移除(防止部分依赖出错)
              $(\'form#your-profile tr.user-nickname-wrap\').hide();
      
              // 移除 “公开显示的名称” 选择器
              $(\'table.form-table tr.user-display-name-wrap\').remove();
      
              // 移除 “网站” 字段(在联系方式部分)
              $(\'table.form-table tr.user-url-wrap\').remove();
      
              // 移除 “关于你自己” 或 “关于用户” 的区域标题(兼容不同语言)
              $(\'h2:contains("About Yourself"), h2:contains("About the user")\').remove();
      
              // 移除 “个人简历” 文本框
              $(\'form#your-profile tr.user-description-wrap\').remove();
      
              // 移除 “头像” 显示区域
              $(\'form#your-profile tr.user-profile-picture\').remove();
      
              // 移除“联系信息”中的 AIM 字段
              $(\'table.form-table tr.user-aim-wrap\').remove();
      
              // 移除“联系信息”中的 Yahoo IM 字段
              $(\'table.form-table tr.user-yim-wrap\').remove();
      
              // 移除“联系信息”中的 Jabber / Google Talk 字段
              $(\'table.form-table tr.user-jabber-wrap\').remove();
      
              // 移除 “名称” 部分的标题
              $(\'h2:contains("Name")\').remove();
      
              // 移除 “联系方式” 的标题
              $(\'h2:contains("Contact Info")\').remove();
      
          });
          </script>';
      }
      
      // 将该函数挂载到 admin_head 钩子,使其在后台页面加载时注入上述脚本
      add_action('admin_head','remove_personal_options');

      🧠 使用建议:

      目的

      建议说明

      限制普通用户权限

      可避免他们修改昵称、语言等影响站点显示的信息

      简化 UI

      特别适用于非技术用户

      安全性考虑

      避免暴露敏感字段或破坏显示设置

      搭配角色控制插件

      例如搭配 User Role Editor,实现完整权限管理


      🧩 兼容性说明:

      • 本代码依赖 jQuery,WordPress 后台默认加载,无需额外引入;

      • 对于非默认字段(如扩展插件添加的字段),你可以追加选择器进行隐藏;

      • 不影响管理员使用,只作用于界面层展示;

      • 推荐将该函数写入主题或子主题的 functions.php 文件,或自定义插件中。


      如你有其他 UI 简化或限制编辑需求,也可基于此方式扩展更多字段控制逻辑。是否需要我帮你生成一份插件形式的版本?

正在查看 0 条回复
  • 在下方一键注册,登录后就可以回复啦。