Make WordPress Core

Changeset 61325


Ignore:
Timestamp:
11/30/2025 03:14:11 PM (7 weeks ago)
Author:
SergeyBiryukov
Message:

Options, Meta APIs: Avoid bypassing the option_page_capability_options filter.

This ensures that the filter is available when wp-admin/options.php is accessed directly.

Follow-up to [13627], [17986], [25372].

Props amibe.
Fixes #58761.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/wp-admin/options.php

    r61179 r61325  
    3232if ( empty( $option_page ) ) {
    3333    $option_page = 'options';
    34 } else {
    35 
    36     /**
    37     * Filters the capability required when using the Settings API.
    38     *
    39     * By default, the options groups for all registered settings require the manage_options capability.
    40     * This filter is required to change the capability required for a certain options page.
    41     *
    42     * @since 3.2.0
    43      *
    44      * @param string $capability The capability used for the page, which is manage_options by default.
    45      */
    46     $capability = apply_filters( "option_page_capability_{$option_page}", $capability );
    47 }
     34}
     35
     36/**
     37 * Filters the capability required when using the Settings API.
     38 *
     39 * By default, the options groups for all registered settings require the manage_options capability.
     40 * This filter is required to change the capability required for a certain options page.
     41 *
     42 * @since 3.2.0
     43 * @since 7.0.0 Applied when `wp-admin/options.php` is accessed directly.
     44 *
     45 * @param string $capability The capability used for the page, which is manage_options by default.
     46 */
     47$capability = apply_filters( "option_page_capability_{$option_page}", $capability );
    4848
    4949if ( ! current_user_can( $capability ) ) {
Note: See TracChangeset for help on using the changeset viewer.