Themes: Fix inconstancies between theme and plugin editor.

This updates the header area of the theme and plugin file editor screen to make them more consistent. It now displays the name of theme or plugin, the active or inactive state, and the path to the file that is selected.

Props karmatosed, poena, audrasjb.
Fixes #41142.


Built from https://develop.svn.wordpress.org/trunk@59884


git-svn-id: http://core.svn.wordpress.org/trunk@59226 1a063a9b-81f0-0310-95a4-ce76da25c4cd
This commit is contained in:
audrasjb
2025-02-27 23:04:27 +00:00
parent ac2ce38de7
commit 33952d5069
3 changed files with 33 additions and 18 deletions

View File

@@ -85,6 +85,9 @@ if ( empty( $file ) ) {
$file = validate_file_to_edit( $file, $plugin_files );
$real_file = WP_PLUGIN_DIR . '/' . $file;
$plugin_data = get_plugin_data( WP_PLUGIN_DIR . '/' . $plugin_files[0] );
$plugin_name = $plugin_data['Name'];
// Handle fallback editing of file when JavaScript is not available.
$edit_error = null;
$posted_content = null;
@@ -220,23 +223,30 @@ endif;
<?php
if ( is_plugin_active( $plugin ) ) {
if ( is_writable( $real_file ) ) {
/* translators: %s: Plugin file name. */
printf( __( 'Editing %s (active)' ), '<strong>' . esc_html( $file ) . '</strong>' );
/* translators: %s: Plugin name. */
printf( __( 'Editing %s (active)' ), '<strong>' . esc_html( $plugin_name ) . '</strong>' );
} else {
/* translators: %s: Plugin file name. */
printf( __( 'Browsing %s (active)' ), '<strong>' . esc_html( $file ) . '</strong>' );
/* translators: %s: Plugin name. */
printf( __( 'Browsing %s (active)' ), '<strong>' . esc_html( $plugin_name ) . '</strong>' );
}
} else {
if ( is_writable( $real_file ) ) {
/* translators: %s: Plugin file name. */
printf( __( 'Editing %s (inactive)' ), '<strong>' . esc_html( $file ) . '</strong>' );
/* translators: %s: Plugin name. */
printf( __( 'Editing %s (inactive)' ), '<strong>' . esc_html( $plugin_name ) . '</strong>' );
} else {
/* translators: %s: Plugin file name. */
printf( __( 'Browsing %s (inactive)' ), '<strong>' . esc_html( $file ) . '</strong>' );
/* translators: %s: Plugin name. */
printf( __( 'Browsing %s (inactive)' ), '<strong>' . esc_html( $plugin_name ) . '</strong>' );
}
}
?>
</h2>
<?php
printf(
/* translators: %s: File path. */
' <span><strong>' . __( 'File: %s' ) . '</strong></span>',
esc_html( $file )
);
?>
</div>
<div class="alignright">
<form action="plugin-editor.php" method="get">

View File

@@ -182,12 +182,7 @@ if ( ! empty( $posted_content ) ) {
$content = esc_textarea( $content );
}
$file_description = get_file_description( $relative_file );
$file_show = array_search( $file, array_filter( $allowed_files ), true );
$description = esc_html( $file_description );
if ( $file_description !== $file_show ) {
$description .= ' <span>(' . esc_html( $file_show ) . ')</span>';
}
$file_show = array_search( $file, array_filter( $allowed_files ), true );
?>
<div class="wrap">
<h1><?php echo esc_html( $title ); ?></h1>
@@ -235,12 +230,22 @@ if ( preg_match( '/\.css$/', $file ) && ! wp_is_block_theme() && current_user_ca
<div class="alignleft">
<h2>
<?php
echo $theme->display( 'Name' );
if ( $description ) {
echo ': ' . $description;
if ( wp_get_theme()->get( 'Name' ) === $theme->display( 'Name' ) ) {
/* translators: %s: Theme name. */
printf( __( 'Editing %s (active)' ), '<strong>' . $theme->display( 'Name' ) . '</strong>' );
} else {
/* translators: %s: Theme name. */
printf( __( 'Editing %s (inactive)' ), '<strong>' . $theme->display( 'Name' ) . '</strong>' );
}
?>
</h2>
<?php
printf(
/* translators: %s: File path. */
' <span><strong>' . __( 'File: %s' ) . '</strong></span>',
esc_html( $file_show )
);
?>
</div>
<div class="alignright">
<form action="theme-editor.php" method="get">

View File

@@ -16,7 +16,7 @@
*
* @global string $wp_version
*/
$wp_version = '6.8-alpha-59883';
$wp_version = '6.8-alpha-59884';
/**
* Holds the WordPress DB revision, increments when changes are made to the WordPress DB schema.