X-Git-Url: https://scripts.mit.edu/gitweb/autoinstalls/wordpress.git/blobdiff_plain/9cd344f9b14dd8e0743c1417fdb379b1431c3988..fef8173b8c3bad08f495551e43cfdeac1cae6021:/wp-admin/theme-editor.php diff --git a/wp-admin/theme-editor.php b/wp-admin/theme-editor.php index 1d1b95ab..7760d507 100644 --- a/wp-admin/theme-editor.php +++ b/wp-admin/theme-editor.php @@ -7,14 +7,35 @@ */ /** WordPress Administration Bootstrap */ -require_once('admin.php'); +require_once('./admin.php'); + +if ( is_multisite() && ! is_network_admin() ) { + wp_redirect( network_admin_url( 'theme-editor.php' ) ); + exit(); +} if ( !current_user_can('edit_themes') ) - wp_die('

'.__('You do not have sufficient permissions to edit templates for this blog.').'

'); + wp_die('

'.__('You do not have sufficient permissions to edit templates for this site.').'

'); $title = __("Edit Themes"); $parent_file = 'themes.php'; +$help = '

' . __('You can use the Theme Editor to edit the individual CSS and PHP files which make up your theme.') . '

'; +$help .= '

' . __('Begin by choosing a theme to edit from the dropdown menu and clicking Select. A list then appears of all the template files. Clicking once on any file name causes the file to appear in the large Editor box.') . '

'; +$help .= '

' . __('For PHP files, you can use the Documentation dropdown to select from functions recognized in that file. Lookup takes you to a web page with reference material about that particular function.') . '

'; +$help .= '

' . __('After typing in your edits, click Update File.') . '

'; +$help .= '

' . __('Advice: think very carefully about your site crashing if you are live-editing the theme currently in use.') . '

'; +$help .= '

' . __('Upgrading to a newer version of the same theme will override changes made here. To avoid this, consider creating a child theme instead.') . '

'; +if ( is_network_admin() ) + $help .= '

' . __('Any edits to files from this screen will be reflected on all sites in the network.') . '

'; +$help .= '

' . __('For more information:') . '

'; +$help .= '

' . __('Documentation on Theme Development') . '

'; +$help .= '

' . __('Documentation on Using Themes') . '

'; +$help .= '

' . __('Documentation on Editing Files') . '

'; +$help .= '

' . __('Documentation on Template Tags') . '

'; +$help .= '

' . __('Support Forums') . '

'; +add_contextual_help($current_screen, $help); + wp_reset_vars(array('action', 'redirect', 'profile', 'error', 'warning', 'a', 'file', 'theme', 'dir')); wp_admin_css( 'theme-editor' ); @@ -30,16 +51,19 @@ if (empty($theme)) { if ( ! isset($themes[$theme]) ) wp_die(__('The requested theme does not exist.')); -$allowed_files = array_merge($themes[$theme]['Stylesheet Files'], $themes[$theme]['Template Files']); +$allowed_files = array_merge( $themes[$theme]['Stylesheet Files'], $themes[$theme]['Template Files'] ); -if (empty($file)) { - $file = $allowed_files[0]; +if ( empty( $file ) ) { + if ( false !== array_search( $themes[$theme]['Stylesheet Dir'] . '/style.css', $allowed_files ) ) + $file = $themes[$theme]['Stylesheet Dir'] . '/style.css'; + else + $file = $allowed_files[0]; } else { $file = stripslashes($file); if ( 'theme' == $dir ) { - $file = dirname(dirname($themes[$theme]['Template Dir'])) . $file ; + $file = dirname(dirname($themes[$theme]['Template Dir'])) . $file ; } else if ( 'style' == $dir) { - $file = dirname(dirname($themes[$theme]['Stylesheet Dir'])) . $file ; + $file = dirname(dirname($themes[$theme]['Stylesheet Dir'])) . $file ; } } @@ -79,13 +103,14 @@ break; default: - require_once('admin-header.php'); + require_once(ABSPATH . 'wp-admin/admin-header.php'); update_recently_edited($file); if ( !is_file($file) ) $error = 1; + $content = ''; if ( !$error && filesize($file) > 0 ) { $f = fopen($file, 'r'); $content = fread($f, filesize($file)); @@ -101,17 +126,18 @@ default: $docs_select .= ''; } - $content = htmlspecialchars( $content ); - $codepress_lang = codepress_get_lang($file); + $content = esc_textarea( $content ); } ?> -

+

$description (%s)" : "%s"; +$desc_header = ( $description != $file_show ) ? "$description ($file_show)" : $file_show; + +$is_child_theme = $themes[$theme]['Template'] != $themes[$theme]['Stylesheet']; ?>
@@ -119,7 +145,7 @@ $desc_header = ( $description != $file_show ) ? "$description (
- +

@@ -135,37 +161,33 @@ $desc_header = ( $description != $file_show ) ? "$description ( } ?> - +

-

- -

+

+ +

+ -

+