| Server IP : 5.129.245.98 / Your IP : 216.73.217.19 Web Server : Apache/2.4.66 (Debian) System : Linux 1b8c17c336b9 6.8.0-111-generic #111-Ubuntu SMP PREEMPT_DYNAMIC Sat Apr 11 23:16:02 UTC 2026 x86_64 User : www-data ( 33) PHP Version : 8.3.30 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 );
}
}