编辑:class-wp-roles.php
<?php /** * User API: WP_Roles class * * @package WordPress * @subpackage Users * @since 4.4.0 */ /** * Core class used to implement a user roles API. * * The role option is simple, the structure is organized by role name that store * the name in value of the 'name' key. The capabilities are stored as an array * in the value of the 'capability' key. * * array ( * 'rolename' => array ( * 'name' => 'rolename', * 'capabilities' => array() * ) * ) * * @since 2.0.0 */ #[AllowDynamicProperties] class WP_Roles { /** * List of roles and capabilities. * * @since 2.0.0 * @var array[] */ public $roles; /** * List of the role objects. * * @since 2.0.0 * @var WP_Role[] */ public $role_objects = array(); /** * List of role names. * * @since 2.0.0 * @var string[] */ public $role_names = array(); /** * Option name for storing role list. * * @since 2.0.0 * @var string */ public $role_key; /** * Whether to use the database for retrieval and storage. * * @since 2.1.0 * @var bool */ public $use_db = true; /** * The site ID the roles are initialized for. * * @since 4.9.0 * @var int */ protected $site_id = 0; /** * Constructor. * * @since 2.0.0 * @since 4.9.0 The `$site_id` argument was added. * * @global array $wp_user_roles Used to set the 'roles' property value. * * @param int $site_id Site ID to initialize roles for. Default is the current site. */ public function __construct( $site_id = null ) { global $wp_user_roles; $this->use_db = empty( $wp_user_roles ); $this->for_site( $site_id ); } /** * Makes private/protected methods readable for backward compatibility. * * @since 4.0.0 * * @param string $name Method to call. * @param array $arguments Arguments to pass when calling. * @return mixed|false Return value of the callback, false otherwise. */ public function __call( $name, $arguments ) { if ( '_init' === $name ) { return $this->_init( ...$arguments ); } return false; } /** * Sets up the object properties. * * The role key is set to the current prefix for the $wpdb object with * 'user_roles' appended. If the $wp_user_roles global is set, then it will * be used and the role option will not be updated or used. * * @since 2.1.0 * @deprecated 4.9.0 Use WP_Roles::for_site() */ protected function _init() { _deprecated_function( __METHOD__, '4.9.0', 'WP_Roles::for_site()' ); $this->for_site(); } /** * Reinitializes the object. * * Recreates the role objects. This is typically called only by switch_to_blog() * after switching wpdb to a new site ID. * * @since 3.5.0 * @deprecated 4.7.0 Use WP_Roles::for_site() */ public function reinit() { _deprecated_function( __METHOD__, '4.7.0', 'WP_Roles::for_site()' ); $this->for_site(); } /** * Adds a role name with capabilities to the list. * * Updates the list of roles, if the role doesn't already exist. * * The list of capabilities can be passed either as a numerically indexed array of capability names, or an * associative array of boolean values keyed by the capability name. To explicitly deny the role a capability, set * the value for that capability to false. * * Examples: * * // Add a role that can edit posts. * wp_roles()->add_role( 'custom_role', 'Custom Role', array( * 'read', * 'edit_posts', * ) ); * * Or, using an associative array: * * // Add a role that can edit posts but explicitly cannot not delete them. * wp_roles()->add_role( 'custom_role', 'Custom Role', array( * 'read' => true, * 'edit_posts' => true, * 'delete_posts' => false, * ) ); * * @since 2.0.0 * @since 6.9.0 Support was added for a numerically indexed array of strings for the capabilities array. * * @param string $role Role name. * @param string $display_name Role display name. * @param array<string,bool>|array<int,string> $capabilities Capabilities to be added to the role. * Default empty array. * @return WP_Role|void WP_Role object, if the role is added. */ public function add_role( $role, $display_name, $capabilities = array() ) { if ( empty( $role ) || isset( $this->roles[ $role ] ) ) { return; } if ( wp_is_numeric_array( $capabilities ) ) { $capabilities = array_fill_keys( $capabilities, true ); } $this->roles[ $role ] = array( 'name' => $display_name, 'capabilities' => $capabilities, ); if ( $this->use_db ) { update_option( $this->role_key, $this->roles, true ); } $this->role_objects[ $role ] = new WP_Role( $role, $capabilities ); $this->role_names[ $role ] = $display_name; return $this->role_objects[ $role ]; } /** * Removes a role by name. * * @since 2.0.0 * * @param string $role Role name. */ public function remove_role( $role ) { if ( ! isset( $this->role_objects[ $role ] ) ) { return; } unset( $this->role_objects[ $role ] ); unset( $this->role_names[ $role ] ); unset( $this->roles[ $role ] ); if ( $this->use_db ) { update_option( $this->role_key, $this->roles ); } if ( get_option( 'default_role' ) === $role ) { update_option( 'default_role', 'subscriber' ); } } /** * Adds a capability to role. * * @since 2.0.0 * * @param string $role Role name. * @param string $cap Capability name. * @param bool $grant Optional. Whether role is capable of performing capability. * Default true. */ public function add_cap( $role, $cap, $grant = true ) { if ( ! isset( $this->roles[ $role ] ) ) { return; } $this->roles[ $role ]['capabilities'][ $cap ] = $grant; if ( $this->use_db ) { update_option( $this->role_key, $this->roles ); } } /** * Removes a capability from role. * * @since 2.0.0 * * @param string $role Role name. * @param string $cap Capability name. */ public function remove_cap( $role, $cap ) { if ( ! isset( $this->roles[ $role ] ) ) { return; } unset( $this->roles[ $role ]['capabilities'][ $cap ] ); if ( $this->use_db ) { update_option( $this->role_key, $this->roles ); } } /** * Retrieves a role object by name. * * @since 2.0.0 * * @param string $role Role name. * @return WP_Role|null WP_Role object if found, null if the role does not exist. */ public function get_role( $role ) { if ( isset( $this->role_objects[ $role ] ) ) { return $this->role_objects[ $role ]; } else { return null; } } /** * Retrieves a list of role names. * * @since 2.0.0 * * @return string[] List of role names. */ public function get_names() { return $this->role_names; } /** * Determines whether a role name is currently in the list of available roles. * * @since 2.0.0 * * @param string $role Role name to look up. * @return bool */ public function is_role( $role ) { return isset( $this->role_names[ $role ] ); } /** * Initializes all of the available roles. * * @since 4.9.0 */ public function init_roles() { if ( empty( $this->roles ) ) { return; } $this->role_objects = array(); $this->role_names = array(); foreach ( array_keys( $this->roles ) as $role ) { $this->role_objects[ $role ] = new WP_Role( $role, $this->roles[ $role ]['capabilities'] ); $this->role_names[ $role ] = $this->roles[ $role ]['name']; } /** * Fires after the roles have been initialized, allowing plugins to add their own roles. * * @since 4.7.0 * * @param WP_Roles $wp_roles A reference to the WP_Roles object. */ do_action( 'wp_roles_init', $this ); } /** * Sets the site to operate on. Defaults to the current site. * * @since 4.9.0 * * @global wpdb $wpdb WordPress database abstraction object. * * @param int $site_id Site ID to initialize roles for. Default is the current site. */ public function for_site( $site_id = null ) { global $wpdb; if ( ! empty( $site_id ) ) { $this->site_id = absint( $site_id ); } else { $this->site_id = get_current_blog_id(); } $this->role_key = $wpdb->get_blog_prefix( $this->site_id ) . 'user_roles'; if ( ! empty( $this->roles ) && ! $this->use_db ) { return; } $this->roles = $this->get_roles_data(); $this->init_roles(); } /** * Gets the ID of the site for which roles are currently initialized. * * @since 4.9.0 * * @return int Site ID. */ public function get_site_id() { return $this->site_id; } /** * Gets the available roles data. * * @since 4.9.0 * * @global array $wp_user_roles Used to set the 'roles' property value. * * @return array Roles array. */ protected function get_roles_data() { global $wp_user_roles; if ( ! empty( $wp_user_roles ) ) { return $wp_user_roles; } if ( is_multisite() && get_current_blog_id() !== $this->site_id ) { remove_action( 'switch_blog', 'wp_switch_roles_and_user', 1 ); $roles = get_blog_option( $this->site_id, $this->role_key, array() ); add_action( 'switch_blog', 'wp_switch_roles_and_user', 1, 2 ); return $roles; } return get_option( $this->role_key, array() ); } }
保存文件
位置:
home
/
robertofarias
/
public_html
/
wp-includes
批量上传
创建
创建
批量权限
批量删除
名称
权限
大小
修改时间
操作
↑ 返回上级
-
-
-
-
ID3
drwxr-xr-x
-
2024-04-03 10:16
权限
删除
重命名
IXR
drwxr-xr-x
-
2026-04-17 05:01
权限
删除
重命名
PHPMailer
drwxr-xr-x
-
2025-12-08 18:52
权限
删除
重命名
Requests
drwxr-xr-x
-
2023-03-30 09:26
权限
删除
重命名
SimplePie
drwxr-xr-x
-
2026-04-17 16:44
权限
删除
重命名
Text
drwxr-xr-x
-
2024-11-13 13:00
权限
删除
重命名
abilities-api
drwxr-xr-x
-
2026-04-17 16:32
权限
删除
重命名
assets
drwxr-xr-x
-
2024-11-13 13:01
权限
删除
重命名
block-bindings
drwxr-xr-x
-
2025-12-04 05:41
权限
删除
重命名
block-patterns
drwxr-xr-x
-
2024-12-19 23:58
权限
删除
重命名
block-supports
drwxr-xr-x
-
2025-12-04 05:41
权限
删除
重命名
blocks
drwxr-xr-x
-
2025-12-04 05:41
权限
删除
重命名
certificates
drwxr-xr-x
-
2022-11-15 19:03
权限
删除
重命名
css
drwxr-xr-x
-
2025-04-16 11:06
权限
删除
重命名
customize
drwxr-xr-x
-
2024-11-20 16:49
权限
删除
重命名
fonts
drwxr-xr-x
-
2024-04-03 10:16
权限
删除
重命名
html-api
drwxr-xr-x
-
2024-12-20 00:03
权限
删除
重命名
images
drwxr-xr-x
-
2023-08-09 11:43
权限
删除
重命名
interactivity-api
drwxr-xr-x
-
2024-12-20 00:12
权限
删除
重命名
js
drwxr-xr-x
-
2025-12-04 05:42
权限
删除
重命名
l10n
drwxr-xr-x
-
2024-12-20 00:12
权限
删除
重命名
php-compat
drwxr-xr-x
-
2022-11-15 19:03
权限
删除
重命名
pomo
drwxr-xr-x
-
2022-11-15 19:03
权限
删除
重命名
rest-api
drwxr-xr-x
-
2024-11-20 16:51
权限
删除
重命名
sitemaps
drwxr-xr-x
-
2022-11-15 19:03
权限
删除
重命名
sodium_compat
drwxr-xr-x
-
2022-11-15 19:03
权限
删除
重命名
style-engine
drwxr-xr-x
-
2022-11-15 19:03
权限
删除
重命名
theme-compat
drwxr-xr-x
-
2025-12-08 18:51
权限
删除
重命名
widgets
drwxr-xr-x
-
2023-06-26 16:12
权限
删除
重命名
block-i18n.json
-rw-r--r--
316 B
2021-08-11 09:08
编辑
下载
权限
删除
重命名
bookmark-template.php
-rw-r--r--
12.47 KB
2025-04-16 11:06
编辑
下载
权限
删除
重命名
canonical.php
-rw-r--r--
33.83 KB
2025-12-04 05:41
编辑
下载
权限
删除
重命名
category-template.php
-rw-r--r--
55.71 KB
2025-12-04 05:41
编辑
下载
权限
删除
重命名
class-avif-info.php
-rw-r--r--
28.92 KB
2024-05-09 08:00
编辑
下载
权限
删除
重命名
class-smtp.php
-rw-r--r--
457 B
2021-01-26 13:45
编辑
下载
权限
删除
重命名
class-walker-category-dropdown.php
-rw-r--r--
2.41 KB
2023-11-08 10:55
编辑
下载
权限
删除
重命名
class-walker-category.php
-rw-r--r--
8.28 KB
2023-11-08 10:55
编辑
下载
权限
删除
重命名
class-walker-page-dropdown.php
-rw-r--r--
2.65 KB
2023-11-08 10:55
编辑
下载
权限
删除
重命名
class-wp-ajax-response.php
-rw-r--r--
5.14 KB
2022-09-12 15:47
编辑
下载
权限
删除
重命名
class-wp-block-bindings-registry.php
-rw-r--r--
8.28 KB
2025-12-04 05:41
编辑
下载
权限
删除
重命名
class-wp-block-bindings-source.php
-rw-r--r--
2.92 KB
2024-11-13 13:01
编辑
下载
权限
删除
重命名
class-wp-block-editor-context.php
-rw-r--r--
1.32 KB
2022-09-12 15:47
编辑
下载
权限
删除
重命名
class-wp-block-list.php
-rw-r--r--
4.6 KB
2025-12-04 05:41
编辑
下载
权限
删除
重命名
class-wp-block-metadata-registry.php
-rw-r--r--
11.62 KB
2025-04-16 11:06
编辑
下载
权限
删除
重命名
class-wp-block-parser-block.php
-rw-r--r--
2.5 KB
2025-12-04 05:41
编辑
下载
权限
删除
重命名
class-wp-block-parser-frame.php
-rw-r--r--
1.97 KB
2024-11-13 13:00
编辑
下载
权限
删除
重命名
class-wp-block-pattern-categories-registry.php
-rw-r--r--
5.32 KB
2025-12-04 05:42
编辑
下载
权限
删除
重命名
class-wp-block-patterns-registry.php
-rw-r--r--
10.99 KB
2026-03-11 06:39
编辑
下载
权限
删除
重命名
class-wp-block-styles-registry.php
-rw-r--r--
6.34 KB
2025-12-04 05:41
编辑
下载
权限
删除
重命名
class-wp-block-supports.php
-rw-r--r--
5.49 KB
2025-04-16 11:06
编辑
下载
权限
删除
重命名
class-wp-block-templates-registry.php
-rw-r--r--
7.02 KB
2025-12-04 05:41
编辑
下载
权限
删除
重命名
class-wp-block-type-registry.php
-rw-r--r--
4.91 KB
2025-12-04 05:41
编辑
下载
权限
删除
重命名
class-wp-block-type.php
-rw-r--r--
16.86 KB
2024-07-17 11:51
编辑
下载
权限
删除
重命名
class-wp-classic-to-block-menu-converter.php
-rw-r--r--
3.97 KB
2025-12-04 05:41
编辑
下载
权限
删除
重命名
class-wp-customize-control.php
-rw-r--r--
25.51 KB
2025-12-04 05:41
编辑
下载
权限
删除
重命名
class-wp-customize-nav-menus.php
-rw-r--r--
56.65 KB
2025-12-04 05:42
编辑
下载
权限
删除
重命名
class-wp-duotone.php
-rw-r--r--
39.83 KB
2024-07-17 11:51
编辑
下载
权限
删除
重命名
class-wp-fatal-error-handler.php
-rw-r--r--
7.96 KB
2024-11-13 13:00
编辑
下载
权限
删除
重命名
class-wp-feed-cache-transient.php
-rw-r--r--
3.23 KB
2025-12-04 05:41
编辑
下载
权限
删除
重命名
class-wp-http-ixr-client.php
-rw-r--r--
3.42 KB
2026-03-11 06:39
编辑
下载
权限
删除
重命名
class-wp-http-requests-hooks.php
-rw-r--r--
1.97 KB
2023-03-30 09:26
编辑
下载
权限
删除
重命名
class-wp-http-requests-response.php
-rw-r--r--
4.3 KB
2023-11-08 10:55
编辑
下载
权限
删除
重命名
class-wp-http-streams.php
-rw-r--r--
16.46 KB
2023-11-08 10:55
编辑
下载
权限
删除
重命名
class-wp-image-editor-gd.php
-rw-r--r--
20.22 KB
2025-12-04 05:41
编辑
下载
权限
删除
重命名
class-wp-image-editor-imagick.php
-rw-r--r--
36.11 KB
2025-12-04 05:41
编辑
下载
权限
删除
重命名
class-wp-list-util.php
-rw-r--r--
7.27 KB
2023-11-08 10:55
编辑
下载
权限
删除
重命名
class-wp-locale-switcher.php
-rw-r--r--
6.62 KB
2025-12-04 05:41
编辑
下载
权限
删除
重命名
class-wp-locale.php
-rw-r--r--
16.49 KB
2025-04-16 11:06
编辑
下载
权限
删除
重命名
class-wp-paused-extensions-storage.php
-rw-r--r--
4.99 KB
2024-11-13 13:00
编辑
下载
权限
删除
重命名
class-wp-plugin-dependencies.php
-rw-r--r--
24.72 KB
2025-04-16 11:06
编辑
下载
权限
删除
重命名
class-wp-post-type.php
-rw-r--r--
29.96 KB
2025-04-16 11:06
编辑
下载
权限
删除
重命名
class-wp-post.php
-rw-r--r--
6.34 KB
2025-12-04 05:42
编辑
下载
权限
删除
重命名
class-wp-recovery-mode-cookie-service.php
-rw-r--r--
6.72 KB
2022-10-04 03:59
编辑
下载
权限
删除
重命名
class-wp-recovery-mode-email-service.php
-rw-r--r--
10.92 KB
2023-08-09 11:43
编辑
下载
权限
删除
重命名
class-wp-recovery-mode-key-service.php
-rw-r--r--
4.77 KB
2025-04-16 11:06
编辑
下载
权限
删除
重命名
class-wp-recovery-mode-link-service.php
-rw-r--r--
3.38 KB
2022-09-12 15:47
编辑
下载
权限
删除
重命名
class-wp-recovery-mode.php
-rw-r--r--
11.18 KB
2025-04-16 11:06
编辑
下载
权限
删除
重命名
class-wp-roles.php
-rw-r--r--
9.17 KB
2026-02-27 10:54
编辑
下载
权限
删除
重命名
class-wp-session-tokens.php
-rw-r--r--
7.15 KB
2025-04-16 11:06
编辑
下载
权限
删除
重命名
class-wp-simplepie-file.php
-rw-r--r--
3.47 KB
2025-12-04 05:42
编辑
下载
权限
删除
重命名
class-wp-simplepie-sanitize-kses.php
-rw-r--r--
1.87 KB
2025-04-16 11:06
编辑
下载
权限
删除
重命名
class-wp-tax-query.php
-rw-r--r--
19.12 KB
2025-12-04 05:41
编辑
下载
权限
删除
重命名
class-wp-text-diff-renderer-inline.php
-rw-r--r--
979 B
2024-04-03 10:16
编辑
下载
权限
删除
重命名
class-wp-text-diff-renderer-table.php
-rw-r--r--
18.44 KB
2025-04-16 11:06
编辑
下载
权限
删除
重命名
class-wp-textdomain-registry.php
-rw-r--r--
10.24 KB
2024-11-22 11:55
编辑
下载
权限
删除
重命名
class-wp-theme-json-data.php
-rw-r--r--
1.77 KB
2024-07-17 11:51
编辑
下载
权限
删除
重命名
class-wp-theme-json-resolver.php
-rw-r--r--
34.9 KB
2025-04-16 11:06
编辑
下载
权限
删除
重命名
class-wp-theme-json-schema.php
-rw-r--r--
7.19 KB
2024-07-17 11:51
编辑
下载
权限
删除
重命名
class-wp-url-pattern-prefixer.php
-rw-r--r--
4.69 KB
2025-04-16 11:06
编辑
下载
权限
删除
重命名
class-wp-user-meta-session-tokens.php
-rw-r--r--
2.94 KB
2025-12-04 05:42
编辑
下载
权限
删除
重命名
class-wp-widget-factory.php
-rw-r--r--
3.27 KB
2022-09-12 15:47
编辑
下载
权限
删除
重命名
class-wp.php
-rw-r--r--
25.86 KB
2025-12-04 05:41
编辑
下载
权限
删除
重命名
compat.php
-rw-r--r--
17.41 KB
2025-12-04 05:41
编辑
下载
权限
删除
重命名
default-constants.php
-rw-r--r--
11.1 KB
2024-11-13 13:00
编辑
下载
权限
删除
重命名
default-filters.php
-rw-r--r--
37.02 KB
2025-12-04 05:41
编辑
下载
权限
删除
重命名
feed-rdf.php
-rw-r--r--
2.61 KB
2020-01-29 00:45
编辑
下载
权限
删除
重命名
fonts.php
-rw-r--r--
9.56 KB
2025-12-04 05:41
编辑
下载
权限
删除
重命名
global-styles-and-settings.php
-rw-r--r--
20.71 KB
2025-12-04 05:41
编辑
下载
权限
删除
重命名
http.php
-rw-r--r--
25.27 KB
2025-12-04 05:41
编辑
下载
权限
删除
重命名
kses.php
-rw-r--r--
81.73 KB
2026-03-11 06:39
编辑
下载
权限
删除
重命名
l10n.php
-rw-r--r--
67.18 KB
2025-12-04 05:41
编辑
下载
权限
删除
重命名
link-template.php
-rw-r--r--
156.36 KB
2025-12-04 05:42
编辑
下载
权限
删除
重命名
locale.php
-rw-r--r--
162 B
2019-10-08 17:19
编辑
下载
权限
删除
重命名
media-template.php
-rw-r--r--
61.72 KB
2025-12-04 05:42
编辑
下载
权限
删除
重命名
media.php
-rw-r--r--
216.06 KB
2026-03-11 06:39
编辑
下载
权限
删除
重命名
ms-default-filters.php
-rw-r--r--
6.48 KB
2023-03-30 09:26
编辑
下载
权限
删除
重命名
ms-files.php
-rw-r--r--
2.79 KB
2025-12-04 05:41
编辑
下载
权限
删除
重命名
ms-site.php
-rw-r--r--
40.74 KB
2025-12-04 05:41
编辑
下载
权限
删除
重命名
post-formats.php
-rw-r--r--
6.94 KB
2024-07-17 11:51
编辑
下载
权限
删除
重命名
robots-template.php
-rw-r--r--
5.06 KB
2022-04-06 15:33
编辑
下载
权限
删除
重命名
template-canvas.php
-rw-r--r--
544 B
2023-11-08 10:55
编辑
下载
权限
删除
重命名
theme-i18n.json
-rw-r--r--
1.69 KB
2026-02-27 10:54
编辑
下载
权限
删除
重命名
theme-templates.php
-rw-r--r--
6.09 KB
2025-04-16 11:06
编辑
下载
权限
删除
重命名
vars.php
-rw-r--r--
6.41 KB
2025-04-16 11:06
编辑
下载
权限
删除
重命名