felixarntz / global-admin
在 WordPress 中引入全局管理面板。
1.0.0-beta.1
2018-02-21 18:42 UTC
Requires
- composer/installers: ~1.0
Requires (Dev)
- phpunit/phpunit: ^6
This package is not auto-updated.
Last update: 2024-09-22 07:32:58 UTC
README
WP Global Admin
在 WordPress 中引入全局管理面板。
功能
- 引入全新的管理面板,全局管理面板
- 引入全局管理员并调整权限,以便某些网络范围内的设置操作不再允许网络管理员执行
- 在全局管理面板中显示所有用户,在网络管理面板中仅显示当前网络中的用户(如果启用了 WP 网络角色插件)
- 在新管理面板中包含全局设置页面
- 包含全局管理面板的定制仪表板小部件
- 引入全局用户数、网络数和站点数,并修复错误的网络用户数,实际上只计算相应网络的用户(如果启用了 WP 网络角色)
- 支持 WP Multi Network 插件、WP Network Roles 插件和 WP User Signups 插件
如何安装
该插件可以作为网络范围内的常规插件或作为必用插件安装。
为了显示全局管理,您的设置必须已经包含多个网络,或者您需要将 MULTINETWORK
常量添加到 wp-config.php
并将其设置为 true。
建议
- 虽然为插件函数和类添加前缀是最佳实践,但此插件是 WordPress 核心的一个概念证明,一些函数最终可能会出现在那里。此插件仅对插件特定的函数和类、自己的内部辅助函数或钩子进行前缀。未前缀的函数和类被条件包裹,以便如果 WordPress 核心采用它们,则加载其核心版本。因此,不要定义以下任何函数或类
is_multinetwork()
is_global_admin()
get_global_administrator()
is_global_administrator()
global_site_url()
global_home_url()
global_admin_url()
get_global_user_count()
get_global_network_count()
get_global_site_count()
wp_schedule_update_global_counts()
wp_update_global_counts()
wp_maybe_update_global_user_counts()
wp_maybe_update_global_network_counts()
wp_maybe_update_global_site_counts()
wp_update_global_user_counts()
wp_update_global_network_counts()
wp_update_global_site_counts()
wp_is_large_setup()
wp_global_dashboard_setup()
wp_global_dashboard_right_now()
用法
调整全局权限
任何注册为全局权限的原生权限仅对全局管理员可用,不再允许网络管理员使用。默认情况下,以下原生权限是全局权限
manage_global
manage_global_users
manage_global_themes
manage_global_plugins
manage_global_options
manage_networks
manage_signups
此列表可以通过 global_admin_capabilities
过滤器进行调整。
此外,处理服务器文件更改的所有权限映射(如更新和使用文件编辑器)已调整,仅允许全局管理员执行这些操作。
钩子
- 操作:
granted_global_administrator
- 操作:
revoked_global_administrator
- 操作:
global_admin_menu
- 操作:
global_admin_notices
- 操作:
wp_global_dashboard_setup
- 过滤器:
global_admin_capabilities
- 过滤器:
global_site_url
- 过滤器:
global_home_url
- 过滤器:
global_admin_url
- 过滤器:
enable_live_global_counts
- 过滤器:
initial_global_options
- 过滤器:
redirect_global_admin_request
- 过滤器:
global_users_columns
- 过滤器:
global_user_row_actions
- 过滤器:
wp_global_dashboard_widgets
兼容性
该插件的一些部分非常不规范,以便WordPress以所需的方式运行。不支持自定义管理面板,因此这是一个必要的邪恶。仍然可能存在一些小问题,因为目前无法解决这些问题(例如,函数如is_blog_admin()
将不会考虑全局管理面板)。此Trac票据旨在解决该问题。