if ( ! current_user_can( 'switch_themes' ) && ! current_user_can( 'edit_theme_options' ) ) {
wp_die(
'<h1>' . __( 'Cheatin’ uh?' ) . '</h1>' .
- '<p>' . __( 'You are not allowed to edit theme options on this site.' ) . '</p>',
+ '<p>' . __( 'Sorry, you are not allowed to edit theme options on this site.' ) . '</p>',
403
);
}
if ( ! current_user_can( 'delete_themes' ) ) {
wp_die(
'<h1>' . __( 'Cheatin’ uh?' ) . '</h1>' .
- '<p>' . __( 'You are not allowed to delete this item.' ) . '</p>',
+ '<p>' . __( 'Sorry, you are not allowed to delete this item.' ) . '</p>',
403
);
}
if ( is_multisite() ) {
$help_install = '<p>' . __('Installing themes on Multisite can only be done from the Network Admin section.') . '</p>';
} else {
- $help_install = '<p>' . sprintf( __('If you would like to see more themes to choose from, click on the “Add New” button and you will be able to browse or search for additional themes from the <a href="%s" target="_blank">WordPress.org Theme Directory</a>. Themes in the WordPress.org Theme Directory are designed and developed by third parties, and are compatible with the license WordPress uses. Oh, and they’re free!'), 'https://wordpress.org/themes/' ) . '</p>';
+ $help_install = '<p>' . sprintf( __('If you would like to see more themes to choose from, click on the “Add New” button and you will be able to browse or search for additional themes from the <a href="%s">WordPress Theme Directory</a>. Themes in the WordPress Theme Directory are designed and developed by third parties, and are compatible with the license WordPress uses. Oh, and they’re free!'), __( 'https://wordpress.org/themes/' ) ) . '</p>';
}
get_current_screen()->add_help_tab( array(
get_current_screen()->set_help_sidebar(
'<p><strong>' . __( 'For more information:' ) . '</strong></p>' .
- '<p>' . __( '<a href="https://codex.wordpress.org/Using_Themes" target="_blank">Documentation on Using Themes</a>' ) . '</p>' .
- '<p>' . __( '<a href="https://wordpress.org/support/" target="_blank">Support Forums</a>' ) . '</p>'
+ '<p>' . __( '<a href="https://codex.wordpress.org/Using_Themes">Documentation on Using Themes</a>' ) . '</p>' .
+ '<p>' . __( '<a href="https://wordpress.org/support/">Support Forums</a>' ) . '</p>'
);
if ( current_user_can( 'switch_themes' ) ) {
add_thickbox();
wp_enqueue_script( 'theme' );
+wp_enqueue_script( 'updates' );
wp_enqueue_script( 'customize-loader' );
require_once( ABSPATH . 'wp-admin/admin-header.php' );
$ct = wp_get_theme();
if ( $ct->errors() && ( ! is_multisite() || current_user_can( 'manage_network_themes' ) ) ) {
- echo '<div class="error"><p>' . sprintf( __( 'ERROR: %s' ), $ct->errors()->get_error_message() ) . '</p></div>';
+ echo '<div class="error"><p>' . __( 'ERROR:' ) . ' ' . $ct->errors()->get_error_message() . '</p></div>';
}
/*
$submenu[$item[2]] = array_values($submenu[$item[2]]); // Re-index.
$menu_hook = get_plugin_page_hook($submenu[$item[2]][0][2], $item[2]);
if ( file_exists(WP_PLUGIN_DIR . "/{$submenu[$item[2]][0][2]}") || !empty($menu_hook))
- $current_theme_actions[] = "<a class='button button-secondary$class' href='admin.php?page={$submenu[$item[2]][0][2]}'>{$item[0]}</a>";
+ $current_theme_actions[] = "<a class='button$class' href='admin.php?page={$submenu[$item[2]][0][2]}'>{$item[0]}</a>";
else
- $current_theme_actions[] = "<a class='button button-secondary$class' href='{$submenu[$item[2]][0][2]}'>{$item[0]}</a>";
+ $current_theme_actions[] = "<a class='button$class' href='{$submenu[$item[2]][0][2]}'>{$item[0]}</a>";
} elseif ( ! empty( $item[2] ) && current_user_can( $item[1] ) ) {
$menu_file = $item[2];
if ( current_user_can( 'customize' ) ) {
if ( 'custom-header' === $menu_file ) {
- $current_theme_actions[] = "<a class='button button-secondary hide-if-no-customize$class' href='customize.php?autofocus[control]=header_image'>{$item[0]}</a>";
+ $current_theme_actions[] = "<a class='button hide-if-no-customize$class' href='customize.php?autofocus[control]=header_image'>{$item[0]}</a>";
} elseif ( 'custom-background' === $menu_file ) {
- $current_theme_actions[] = "<a class='button button-secondary hide-if-no-customize$class' href='customize.php?autofocus[control]=background_image'>{$item[0]}</a>";
+ $current_theme_actions[] = "<a class='button hide-if-no-customize$class' href='customize.php?autofocus[control]=background_image'>{$item[0]}</a>";
}
}
}
if ( file_exists( ABSPATH . "wp-admin/$menu_file" ) ) {
- $current_theme_actions[] = "<a class='button button-secondary$class' href='{$item[2]}'>{$item[0]}</a>";
+ $current_theme_actions[] = "<a class='button$class' href='{$item[2]}'>{$item[0]}</a>";
} else {
- $current_theme_actions[] = "<a class='button button-secondary$class' href='themes.php?page={$item[2]}'>{$item[0]}</a>";
+ $current_theme_actions[] = "<a class='button$class' href='themes.php?page={$item[2]}'>{$item[0]}</a>";
}
}
}
<?php } else { ?>
<div class="theme-screenshot blank"></div>
<?php } ?>
+
+ <?php if ( $theme['hasUpdate'] ) : ?>
+ <div class="update-message notice inline notice-warning notice-alt">
+ <?php if ( $theme['hasPackage'] ) : ?>
+ <p><?php _e( 'New version available. <button class="button-link" type="button">Update now</button>' ); ?></p>
+ <?php else : ?>
+ <p><?php _e( 'New version available.' ); ?></p>
+ <?php endif; ?>
+ </div>
+ <?php endif; ?>
+
<span class="more-details" id="<?php echo $aria_action; ?>"><?php _e( 'Theme Details' ); ?></span>
<div class="theme-author"><?php printf( __( 'By %s' ), $theme['author'] ); ?></div>
<a class="button button-primary customize load-customize hide-if-no-customize" href="<?php echo $theme['actions']['customize']; ?>"><?php _e( 'Customize' ); ?></a>
<?php } ?>
<?php } else { ?>
- <a class="button button-secondary activate" href="<?php echo $theme['actions']['activate']; ?>"><?php _e( 'Activate' ); ?></a>
+ <?php
+ /* translators: %s: Theme name */
+ $aria_label = sprintf( _x( 'Activate %s', 'theme' ), '{{ data.name }}' );
+ ?>
+ <a class="button activate" href="<?php echo $theme['actions']['activate']; ?>" aria-label="<?php echo esc_attr( $aria_label ); ?>"><?php _e( 'Activate' ); ?></a>
<?php if ( current_user_can( 'edit_theme_options' ) && current_user_can( 'customize' ) ) { ?>
<a class="button button-primary load-customize hide-if-no-customize" href="<?php echo $theme['actions']['customize']; ?>"><?php _e( 'Live Preview' ); ?></a>
<?php } ?>
<?php } ?>
</div>
-
- <?php if ( $theme['hasUpdate'] ) { ?>
- <div class="theme-update"><?php _e( 'Update Available' ); ?></div>
- <?php } ?>
</div>
<?php endforeach; ?>
</div>
), admin_url( 'themes.php' ) );
$delete_url = wp_nonce_url( $delete_url, 'delete-theme_' . $stylesheet );
?>
- <td><a href="<?php echo esc_url( $delete_url ); ?>" class="button button-secondary delete-theme"><?php _e( 'Delete' ); ?></a></td>
+ <td><a href="<?php echo esc_url( $delete_url ); ?>" class="button delete-theme"><?php _e( 'Delete' ); ?></a></td>
<?php
}
), admin_url( 'update.php' ) );
$install_url = wp_nonce_url( $install_url, 'install-theme_' . $parent_theme_name );
?>
- <td><a href="<?php echo esc_url( $install_url ); ?>" class="button button-secondary install-theme"><?php _e( 'Install Parent Theme' ); ?></a></td>
+ <td><a href="<?php echo esc_url( $install_url ); ?>" class="button install-theme"><?php _e( 'Install Parent Theme' ); ?></a></td>
<?php
}
}
<# } else { #>
<div class="theme-screenshot blank"></div>
<# } #>
+
+ <# if ( data.hasUpdate ) { #>
+ <# if ( data.hasPackage ) { #>
+ <div class="update-message notice inline notice-warning notice-alt"><p><?php _e( 'New version available. <button class="button-link" type="button">Update now</button>' ); ?></p></div>
+ <# } else { #>
+ <div class="update-message notice inline notice-warning notice-alt"><p><?php _e( 'New version available.' ); ?></p></div>
+ <# } #>
+ <# } #>
+
<span class="more-details" id="{{ data.id }}-action"><?php _e( 'Theme Details' ); ?></span>
- <div class="theme-author"><?php printf( __( 'By %s' ), '{{{ data.author }}}' ); ?></div>
+ <div class="theme-author">
+ <?php
+ /* translators: %s: Theme author name */
+ printf( __( 'By %s' ), '{{{ data.author }}}' );
+ ?>
+ </div>
<# if ( data.active ) { #>
<h2 class="theme-name" id="{{ data.id }}-name">
<?php
- /* translators: %s: theme name */
+ /* translators: %s: Theme name */
printf( __( '<span>Active:</span> %s' ), '{{{ data.name }}}' );
?>
</h2>
<# } #>
<div class="theme-actions">
-
- <# if ( data.active ) { #>
- <# if ( data.actions.customize ) { #>
- <a class="button button-primary customize load-customize hide-if-no-customize" href="{{{ data.actions.customize }}}"><?php _e( 'Customize' ); ?></a>
+ <# if ( data.active ) { #>
+ <# if ( data.actions.customize ) { #>
+ <a class="button button-primary customize load-customize hide-if-no-customize" href="{{{ data.actions.customize }}}"><?php _e( 'Customize' ); ?></a>
+ <# } #>
+ <# } else { #>
+ <?php
+ /* translators: %s: Theme name */
+ $aria_label = sprintf( _x( 'Activate %s', 'theme' ), '{{ data.name }}' );
+ ?>
+ <a class="button activate" href="{{{ data.actions.activate }}}" aria-label="<?php echo $aria_label; ?>"><?php _e( 'Activate' ); ?></a>
+ <a class="button button-primary load-customize hide-if-no-customize" href="{{{ data.actions.customize }}}"><?php _e( 'Live Preview' ); ?></a>
<# } #>
- <# } else { #>
- <a class="button button-secondary activate" href="{{{ data.actions.activate }}}"><?php _e( 'Activate' ); ?></a>
- <a class="button button-primary load-customize hide-if-no-customize" href="{{{ data.actions.customize }}}"><?php _e( 'Live Preview' ); ?></a>
- <# } #>
-
</div>
-
- <# if ( data.hasUpdate ) { #>
- <div class="theme-update"><?php _e( 'Update Available' ); ?></div>
- <# } #>
</script>
<script id="tmpl-theme-single" type="text/template">
<?php echo implode( ' ', $current_theme_actions ); ?>
</div>
<div class="inactive-theme">
+ <?php
+ /* translators: %s: Theme name */
+ $aria_label = sprintf( _x( 'Activate %s', 'theme' ), '{{ data.name }}' );
+ ?>
<# if ( data.actions.activate ) { #>
- <a href="{{{ data.actions.activate }}}" class="button button-secondary activate"><?php _e( 'Activate' ); ?></a>
+ <a href="{{{ data.actions.activate }}}" class="button activate" aria-label="<?php echo $aria_label; ?>"><?php _e( 'Activate' ); ?></a>
<# } #>
<a href="{{{ data.actions.customize }}}" class="button button-primary load-customize hide-if-no-customize"><?php _e( 'Live Preview' ); ?></a>
</div>
<# if ( ! data.active && data.actions['delete'] ) { #>
- <a href="{{{ data.actions['delete'] }}}" class="button button-secondary delete-theme"><?php _e( 'Delete' ); ?></a>
+ <a href="{{{ data.actions['delete'] }}}" class="button delete-theme"><?php _e( 'Delete' ); ?></a>
<# } #>
</div>
</div>
</script>
-<?php require( ABSPATH . 'wp-admin/admin-footer.php' );
+<?php
+wp_print_request_filesystem_credentials_modal();
+wp_print_admin_notice_templates();
+wp_print_update_row_templates();
+
+wp_localize_script( 'updates', '_wpUpdatesItemCounts', array(
+ 'totals' => wp_get_update_data(),
+) );
+
+require( ABSPATH . 'wp-admin/admin-footer.php' );