From 9296c9025a2ea66b85792e3700f254149d853032 Mon Sep 17 00:00:00 2001 From: John Blackbourn Date: Thu, 3 Aug 2017 13:49:01 +0000 Subject: [PATCH] Networks and Sites: Display an indicator for the active theme or child theme when viewing a site's themes within Network Admin. Props palmiak, euthelup Fixes #41168 git-svn-id: https://develop.svn.wordpress.org/trunk@41214 602fd350-edb4-49c9-b593-d223f7449a82 --- .../class-wp-ms-themes-list-table.php | 21 ++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) diff --git a/src/wp-admin/includes/class-wp-ms-themes-list-table.php b/src/wp-admin/includes/class-wp-ms-themes-list-table.php index d2a2203056..fb3c33e7ad 100644 --- a/src/wp-admin/includes/class-wp-ms-themes-list-table.php +++ b/src/wp-admin/includes/class-wp-ms-themes-list-table.php @@ -618,7 +618,26 @@ class WP_MS_Themes_List_Table extends WP_List_Table { break; case 'name': - echo "" . $item->display('Name') . ""; + + $active_theme_label = ''; + + /* The presence of the site_id property means that this is a subsite view and a label for the active theme needs to be added */ + if ( ! empty( $this->site_id ) ) { + $stylesheet = get_blog_option( $this->site_id, 'stylesheet' ); + $template = get_blog_option( $this->site_id, 'template' ); + + /* Add a label for the active template */ + if ( $item->get_template() === $template ) { + $active_theme_label = ' — ' . __( 'Active Theme' ); + } + + /* In case this is a child theme, label it properly */ + if ( $stylesheet !== $template && $item->get_stylesheet() === $stylesheet) { + $active_theme_label = ' — ' . __( 'Active Child Theme' ); + } + } + + echo "" . $item->display( 'Name' ) . $active_theme_label . ''; $this->column_name( $item );