Make WordPress Core


Ignore:
Timestamp:
06/10/2020 06:15:48 PM (4 years ago)
Author:
whyisjake
Message:

General: Backport several commits for release.

Embeds: Ensure that the title attribute is set correctly on embeds.
Editor: Prevent HTML decoding on by setting the proper editor context.
Formatting: Ensure that wp_validate_redirect() sanitizes a wider variety of characters.
Themes: Ensure a broken theme name is returned properly.
Administration: Add a new filter to extend set-screen-option.

Merges [47947-47951] to the 3.7 branch.
Props xknown, sstoqnov, vortfu, SergeyBiryukov, whyisjake.

Location:
branches/3.7
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • branches/3.7

  • branches/3.7/src

  • branches/3.7/src/wp-admin/includes/misc.php

    r25796 r47962  
    391391                break;
    392392            default:
    393                 $value = apply_filters('set-screen-option', false, $option, $value);
     393                if ( '_page' === substr( $option, -5 ) || 'layout_columns' === $option ) {
     394                    /**
     395                     * Filters a screen option value before it is set.
     396                     *
     397                     * The filter can also be used to modify non-standard [items]_per_page
     398                     * settings. See the parent function for a full list of standard options.
     399                     *
     400                     * Returning false to the filter will skip saving the current option.
     401                     *
     402                     * @since 2.8.0
     403                     * @since 5.4.2 Only applied to options ending with '_page',
     404                     *              or the 'layout_columns' option.
     405                     *
     406                     * @see set_screen_options()
     407                     *
     408                     * @param bool   $keep   Whether to save or skip saving the screen option value.
     409                     *                       Default false.
     410                     * @param string $option The option name.
     411                     * @param int    $value  The number of rows to use.
     412                     */
     413                    $value = apply_filters( 'set-screen-option', false, $option, $value ); // phpcs:ignore WordPress.NamingConventions.ValidHookName.UseUnderscores
     414                }
     415
     416                /**
     417                 * Filter a screen option value before it is set.
     418                 *
     419                 * The dynamic portion of the hook, `$option`, refers to the option name.
     420                 *
     421                 * Returning false to the filter will skip saving the current option.
     422                 *
     423                 * @since 5.4.2
     424                 *
     425                 * @see set_screen_options()
     426                 *
     427                 * @param bool   $keep   Whether to save or skip saving the screen option value.
     428                 *                       Default false.
     429                 * @param string $option The option name.
     430                 * @param int    $value  The number of rows to use.
     431                 */
     432                $value = apply_filters( "set_screen_option_{$option}", false, $option, $value );
     433
    394434                if ( false === $value )
    395435                    return;
Note: See TracChangeset for help on using the changeset viewer.