WordPress.org

Make WordPress Core

Ticket #44591: 44591-3.diff

File 44591-3.diff, 4.6 KB (added by jeherve, 3 months ago)

Refreshed patch with 5.9.0 version numbers

  • src/wp-includes/capabilities.php

     
    7373                        break;
    7474                case 'delete_post':
    7575                case 'delete_page':
     76                        if ( ! isset( $args[0] ) ) {
     77                                _doing_it_wrong(
     78                                        __FUNCTION__,
     79                                        sprintf(
     80                                                /* translators: 1: Capability name. 2: Type of content, such as "post" or "comment". */
     81                                                esc_html__( 'When checking for the "%1$s" capability, you must always check it against a specific %2$s.' ),
     82                                                esc_html( $cap ),
     83                                                ( ( 'delete_page' === $cap ) ? esc_html__( 'page' ) : esc_html__( 'post' ) )
     84                                        ),
     85                                        '5.9.0'
     86                                );
     87                                $caps[] = 'do_not_allow';
     88                                break;
     89                        }
     90
    7691                        $post = get_post( $args[0] );
    7792                        if ( ! $post ) {
    7893                                $caps[] = 'do_not_allow';
     
    146161                // edit_others_posts.
    147162                case 'edit_post':
    148163                case 'edit_page':
     164                        if ( ! isset( $args[0] ) ) {
     165                                _doing_it_wrong(
     166                                        __FUNCTION__,
     167                                        sprintf(
     168                                                /* translators: 1: Capability name. 2: Type of content, such as "post" or "comment". */
     169                                                esc_html__( 'When checking for the "%1$s" capability, you must always check it against a specific %2$s.' ),
     170                                                esc_html( $cap ),
     171                                                ( ( 'edit_page' === $cap ) ? esc_html__( 'page' ) : esc_html__( 'post' ) )
     172                                        ),
     173                                        '5.9.0'
     174                                );
     175                                $caps[] = 'do_not_allow';
     176                                break;
     177                        }
     178
    149179                        $post = get_post( $args[0] );
    150180                        if ( ! $post ) {
    151181                                $caps[] = 'do_not_allow';
     
    215245                        break;
    216246                case 'read_post':
    217247                case 'read_page':
     248                        if ( ! isset( $args[0] ) ) {
     249                                _doing_it_wrong(
     250                                        __FUNCTION__,
     251                                        sprintf(
     252                                                /* translators: 1: Capability name. 2: Type of content, such as "post" or "comment". */
     253                                                esc_html__( 'When checking for the "%1$s" capability, you must always check it against a specific %2$s.' ),
     254                                                esc_html( $cap ),
     255                                                ( ( 'read_page' === $cap ) ? esc_html__( 'page' ) : esc_html__( 'post' ) )
     256                                        ),
     257                                        '5.9.0'
     258                                );
     259                                $caps[] = 'do_not_allow';
     260                                break;
     261                        }
     262
    218263                        $post = get_post( $args[0] );
    219264                        if ( ! $post ) {
    220265                                $caps[] = 'do_not_allow';
     
    268313                        }
    269314                        break;
    270315                case 'publish_post':
     316                        if ( ! isset( $args[0] ) ) {
     317                                _doing_it_wrong(
     318                                        __FUNCTION__,
     319                                        sprintf(
     320                                                /* translators: 1: Capability name. 2: Type of content, such as "post" or "comment". */
     321                                                esc_html__( 'When checking for the "%1$s" capability, you must always check it against a specific %2$s.' ),
     322                                                esc_html( $cap ),
     323                                                esc_html__( 'post' )
     324                                        ),
     325                                        '5.9.0'
     326                                );
     327                                $caps[] = 'do_not_allow';
     328                                break;
     329                        }
     330
    271331                        $post = get_post( $args[0] );
    272332                        if ( ! $post ) {
    273333                                $caps[] = 'do_not_allow';
     
    297357                case 'delete_user_meta':
    298358                case 'add_user_meta':
    299359                        $object_type = explode( '_', $cap )[1];
    300                         $object_id   = (int) $args[0];
    301360
     361                        if ( ! isset( $args[0] ) ) {
     362                                _doing_it_wrong(
     363                                        __FUNCTION__,
     364                                        sprintf(
     365                                                /* translators: 1: Capability name. 2: Type of content, such as "post" or "comment". */
     366                                                esc_html__( 'When checking for the "%1$s" capability, you must always check it against a specific %2$s.' ),
     367                                                esc_html( $cap ),
     368                                                esc_html( $object_type )
     369                                        ),
     370                                        '5.9.0'
     371                                );
     372                                $caps[] = 'do_not_allow';
     373                                break;
     374                        }
     375
     376                        $object_id = (int) $args[0];
     377
    302378                        $object_subtype = get_object_subtype( $object_type, $object_id );
    303379
    304380                        if ( empty( $object_subtype ) ) {
     
    392468                        }
    393469                        break;
    394470                case 'edit_comment':
     471                        if ( ! isset( $args[0] ) ) {
     472                                _doing_it_wrong(
     473                                        __FUNCTION__,
     474                                        sprintf(
     475                                                /* translators: 1: Capability name. 2: Type of content, such as "post" or "comment". */
     476                                                esc_html__( 'When checking for the "%1$s" capability, you must always check it against a specific %2$s.' ),
     477                                                esc_html( $cap ),
     478                                                esc_html__( 'comment' )
     479                                        ),
     480                                        '5.9.0'
     481                                );
     482                                $caps[] = 'do_not_allow';
     483                                break;
     484                        }
     485
    395486                        $comment = get_comment( $args[0] );
    396487                        if ( ! $comment ) {
    397488                                $caps[] = 'do_not_allow';
     
    532623                case 'edit_term':
    533624                case 'delete_term':
    534625                case 'assign_term':
     626                        if ( ! isset( $args[0] ) ) {
     627                                _doing_it_wrong(
     628                                        __FUNCTION__,
     629                                        sprintf(
     630                                                /* translators: 1: Capability name. 2: Type of content, such as "post" or "comment". */
     631                                                esc_html__( 'When checking for the "%1$s" capability, you must always check it against a specific %2$s.' ),
     632                                                esc_html( $cap ),
     633                                                esc_html__( 'term' )
     634                                        ),
     635                                        '5.9.0'
     636                                );
     637                                $caps[] = 'do_not_allow';
     638                                break;
     639                        }
     640
    535641                        $term_id = (int) $args[0];
    536642                        $term    = get_term( $term_id );
    537643                        if ( ! $term || is_wp_error( $term ) ) {