Make WordPress Core

Changeset 61063


Ignore:
Timestamp:
10/26/2025 10:00:51 AM (7 weeks ago)
Author:
jorgefilipecosta
Message:

Abilities API: Include initial core abilities and categories registration.

Without this patch we would introduce the Abilities API without any core abilities being registered.
This patch includes the following initial abilities:

  • core/get-bloginfo - Retrieve individual site information fields (name, description, url, wpurl, admin_email, charset, language, version).
  • core/get-current-user-info - Get current authenticated user data (id, display_name, user_nicename, user_login, roles, locale).
  • core/get-environment-type - Get WordPress environment type (production, staging, development, local).

Developed in #10411.

Follow-up [64098].

Props gziolo, jorgefilipecosta, mukesh27, isotropic, jorbin, justlevine, jason_the_adams.
Fixes #64146.

Location:
trunk
Files:
3 added
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/wp-includes/default-filters.php

    r61029 r61063  
    533533add_action( 'parse_request', 'rest_api_loaded' );
    534534
     535// Abilities API.
     536add_action( 'wp_abilities_api_categories_init', 'wp_register_core_ability_categories' );
     537add_action( 'wp_abilities_api_init', 'wp_register_core_abilities' );
     538
    535539// Sitemaps actions.
    536540add_action( 'init', 'wp_sitemaps_get_server' );
  • trunk/src/wp-settings.php

    r61045 r61063  
    291291require ABSPATH . WPINC . '/abilities-api/class-wp-abilities-registry.php';
    292292require ABSPATH . WPINC . '/abilities-api.php';
     293require ABSPATH . WPINC . '/abilities/wp-core-abilities.php';
    293294require ABSPATH . WPINC . '/rest-api.php';
    294295require ABSPATH . WPINC . '/rest-api/class-wp-rest-server.php';
  • trunk/tests/phpunit/includes/functions.php

    r60946 r61063  
    365365}
    366366tests_add_filter( 'init', '_unhook_font_registration', 1000 );
     367
     368/**
     369 * Before the abilities API categories init action runs, unhook the core ability
     370 * categories registration function to prevent core categories from being registered
     371 * during tests.
     372 *
     373 * @since 6.9.0
     374 */
     375function _unhook_core_ability_categories_registration() {
     376    remove_action( 'wp_abilities_api_categories_init', 'wp_register_core_ability_categories' );
     377}
     378tests_add_filter( 'wp_abilities_api_categories_init', '_unhook_core_ability_categories_registration', 1 );
     379
     380/**
     381 * Before the abilities API init action runs, unhook the core abilities
     382 * registration function to prevent core abilities from being registered during tests.
     383 *
     384 * @since 6.9.0
     385 */
     386function _unhook_core_abilities_registration() {
     387    remove_action( 'wp_abilities_api_init', 'wp_register_core_abilities' );
     388}
     389tests_add_filter( 'wp_abilities_api_init', '_unhook_core_abilities_registration', 1 );
Note: See TracChangeset for help on using the changeset viewer.