Make WordPress Core

Ticket #48507: 48507.diff

File 48507.diff, 5.1 KB (added by afragen, 5 years ago)
  • wp-admin/includes/class-wp-ms-themes-list-table.php

    diff --git a/wp-admin/includes/class-wp-ms-themes-list-table.php b/wp-admin/includes/class-wp-ms-themes-list-table.php
    index cb1f34999d..355496f5ae 100644
    a b class WP_MS_Themes_List_Table extends WP_List_Table { 
    502502                        );
    503503                }
    504504
     505                $compatible_wp  = is_wp_version_compatible( $theme->get( 'Requires' ) );
     506                $compatible_php = is_php_version_compatible( $theme->get( 'RequiresPHP' ) );
     507                if ( ! $compatible_wp || ! $compatible_php ) {
     508                        unset( $actions['enable'] );
     509                        unset( $actions['disable'] );
     510                }
     511
    505512                if ( ! $allowed && current_user_can( 'delete_themes' ) && ! $this->is_site_themes && $stylesheet != get_option( 'stylesheet' ) && $stylesheet != get_option( 'template' ) ) {
    506513                        $url = add_query_arg(
    507514                                array(
    class WP_MS_Themes_List_Table extends WP_List_Table { 
    672679        public function single_row_columns( $item ) {
    673680                list( $columns, $hidden, $sortable, $primary ) = $this->get_column_info();
    674681
     682                $compatible_wp  = is_wp_version_compatible( $item->get( 'Requires' ) );
     683                $compatible_php = is_php_version_compatible( $item->get( 'RequiresPHP' ) );
     684
    675685                foreach ( $columns as $column_name => $column_display_name ) {
    676686                        $extra_classes = '';
    677687                        if ( in_array( $column_name, $hidden ) ) {
    class WP_MS_Themes_List_Table extends WP_List_Table { 
    682692                                case 'cb':
    683693                                        echo '<th scope="row" class="check-column">';
    684694
    685                                         $this->column_cb( $item );
     695                                        if ( $compatible_wp && $compatible_php ) {
     696                                                $this->column_cb( $item );
     697                                        }
    686698
    687699                                        echo '</th>';
    688700                                        break;
  • wp-admin/includes/update.php

    diff --git a/wp-admin/includes/update.php b/wp-admin/includes/update.php
    index 89cb1f858a..7f1ea2689d 100644
    a b function wp_theme_update_row( $theme_key, $theme ) { 
    604604        /** @var WP_MS_Themes_List_Table $wp_list_table */
    605605        $wp_list_table = _get_list_table( 'WP_MS_Themes_List_Table' );
    606606
    607         $active = $theme->is_allowed( 'network' ) ? ' active' : '';
     607        $active         = $theme->is_allowed( 'network' ) ? ' active' : '';
     608        $compatible_wp  = is_wp_version_compatible( $theme->get( 'Requires' ) );
     609        $compatible_php = is_php_version_compatible( $theme->get( 'RequirePHP' ) );
    608610
    609611        printf(
    610612                '<tr class="plugin-update-tr%s" id="%s" data-slug="%s">' .
    function wp_theme_update_row( $theme_key, $theme ) { 
    643645                        $response['new_version']
    644646                );
    645647        } else {
    646                 printf(
    647                         /* translators: 1: Theme name, 2: Details URL, 3: Additional link attributes, 4: Version number, 5: Update URL, 6: Additional link attributes. */
    648                         __( 'There is a new version of %1$s available. <a href="%2$s" %3$s>View version %4$s details</a> or <a href="%5$s" %6$s>update now</a>.' ),
    649                         $theme['Name'],
    650                         esc_url( $details_url ),
    651                         sprintf(
    652                                 'class="thickbox open-plugin-details-modal" aria-label="%s"',
    653                                 /* translators: 1: Theme name, 2: Version number. */
    654                                 esc_attr( sprintf( __( 'View %1$s version %2$s details' ), $theme['Name'], $response['new_version'] ) )
    655                         ),
    656                         $response['new_version'],
    657                         wp_nonce_url( self_admin_url( 'update.php?action=upgrade-theme&theme=' ) . $theme_key, 'upgrade-theme_' . $theme_key ),
    658                         sprintf(
    659                                 'class="update-link" aria-label="%s"',
    660                                 /* translators: %s: Theme name. */
    661                                 esc_attr( sprintf( __( 'Update %s now' ), $theme['Name'] ) )
    662                         )
    663                 );
     648                if ( $compatible_wp && $compatible_php ) {
     649                        printf(
     650                                /* translators: 1: Theme name, 2: Details URL, 3: Additional link attributes, 4: Version number, 5: Update URL, 6: Additional link attributes. */
     651                                __( 'There is a new version of %1$s available. <a href="%2$s" %3$s>View version %4$s details</a> or <a href="%5$s" %6$s>update now</a>.' ),
     652                                $theme['Name'],
     653                                esc_url( $details_url ),
     654                                sprintf(
     655                                        'class="thickbox open-plugin-details-modal" aria-label="%s"',
     656                                        /* translators: 1: Theme name, 2: Version number. */
     657                                        esc_attr( sprintf( __( 'View %1$s version %2$s details' ), $theme['Name'], $response['new_version'] ) )
     658                                ),
     659                                $response['new_version'],
     660                                wp_nonce_url( self_admin_url( 'update.php?action=upgrade-theme&theme=' ) . $theme_key, 'upgrade-theme_' . $theme_key ),
     661                                sprintf(
     662                                        'class="update-link" aria-label="%s"',
     663                                        /* translators: %s: Theme name. */
     664                                        esc_attr( sprintf( __( 'Update %s now' ), $theme['Name'] ) )
     665                                )
     666                        );
     667                } else {
     668                        printf(
     669                                /* translators: 1: Theme name, 2: Details URL, 3: Additional link attributes, 4: Version number, 5: Update URL, 6: Additional link attributes. */
     670                                __( 'There is a new version of %1$s available. <a href="%2$s" %3$s>View version %4$s details</a>.<br>Current theme requirements not met. This theme requires WordPress %5$s and PHP %6$s.' ),
     671                                $theme['Name'],
     672                                esc_url( $details_url ),
     673                                sprintf(
     674                                        'class="thickbox open-plugin-details-modal" aria-label="%s"',
     675                                        /* translators: 1: Theme name, 2: Version number. */
     676                                        esc_attr( sprintf( __( 'View %1$s version %2$s details' ), $theme['Name'], $response['new_version'] ) )
     677                                ),
     678                                $response['new_version'],
     679                                $theme->get( 'Requires' ),
     680                                $theme->get( 'RequiresPHP' )
     681                        );
     682                }
    664683        }
    665684
    666685        /**