函数文档

wp_get_abilities()

💡 云策文档标注

概述

wp_get_abilities() 函数用于检索系统中所有已注册的 WP_Ability 实例。它适用于发现、调试或构建管理界面。

关键要点

  • 返回一个包含所有已注册 WP_Ability 实例的数组,若无注册或注册表不可用则返回空数组
  • 内部通过 WP_Abilities_Registry::get_instance() 获取注册表实例,并调用 get_all_registered() 方法
  • 在 WordPress 6.9.0 版本中引入

代码示例

// 打印所有可用能力的信息。
$abilities = wp_get_abilities();
foreach ( $abilities as $ability ) {
    echo $ability->get_label() . ': ' . $ability->get_description() . "n";
}

注意事项

  • 相关函数:WP_Abilities_Registry::get_all_registered()
  • 使用场景:常用于 REST API 端点如 WP_REST_Abilities_V1_List_Controller::get_items()

📄 原文内容

Retrieves all registered abilities.

Description

Returns an array of all ability instances currently registered in the system.
Use this for discovery, debugging, or building administrative interfaces.

Example:

// Prints information about all available abilities.
$abilities = wp_get_abilities();
foreach ( $abilities as $ability ) {
    echo $ability->get_label() . ': ' . $ability->get_description() . "n";
}

See also

Return

WP_Ability[] An array of registered WP_Ability instances. Returns an empty array if no abilities are registered or if the registry is unavailable.

Source

function wp_get_abilities(): array {
	$registry = WP_Abilities_Registry::get_instance();
	if ( null === $registry ) {
		return array();
	}

	return $registry->get_all_registered();
}

Changelog

Version Description
6.9.0 Introduced.