| Server IP : 104.171.130.249 / Your IP : 216.73.216.146 Web Server : nginx/1.25.5 System : Linux 0dac65491b7e 6.8.0-134-generic #134-Ubuntu SMP PREEMPT_DYNAMIC Fri Jun 26 18:43:11 UTC 2026 x86_64 User : root ( 0) PHP Version : 8.4.23 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : OFF | Perl : ON | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /var/www/html/wp-content/plugins/woocommerce/src/Internal/Abilities/ |
Upload File : |
<?php
/**
* Abilities Registry class file.
*/
declare( strict_types=1 );
namespace Automattic\WooCommerce\Internal\Abilities;
defined( 'ABSPATH' ) || exit;
/**
* Abilities Registry class for WooCommerce.
*
* Centralized registry that initializes all WooCommerce abilities.
* These abilities can be consumed by MCP, REST API, or other tools.
*/
class AbilitiesRegistry {
/**
* Initialize the registry.
*/
public function __construct() {
$this->init_abilities();
}
/**
* Initialize all WooCommerce abilities.
*/
private function init_abilities(): void {
AbilitiesCategories::init();
AbilitiesRestBridge::init();
}
/**
* Get all ability IDs from the WordPress Abilities API.
*
* @return array Array of all ability IDs.
*/
public function get_abilities_ids(): array {
// Check if the abilities API is available.
if ( ! function_exists( 'wp_get_abilities' ) ) {
return array();
}
$all_abilities = wp_get_abilities();
return array_keys( $all_abilities );
}
}