wp_get_theme()
Получает объект WP_Theme, который содержит информацию о текущей теме.
Аналогичная функция для получения данных плагинов: get_plugins().
Работает на основе: WP_Theme()
1 раз — 0.00056 сек (медленно) | 50000 раз — 2.02 сек (быстро) | PHP 7.0.5, WP 4.5.2
Хуков нет.
Возвращает
WP_Theme
. Экземпляр объекта WP_Theme, который содержит следующие данные:
- Name - название темы указанное в style.css;
- ThemeURI - УРЛ страницы шаблона;
- Description - описание темы;
- Author - автор темы;
- AuthorURI - УРЛ автора темы;
- Version - текущая версия;
- Template - (произвольно используется в дочерних темах) название папки родительской темы;
- Status - опубликована ли тема;
- Tags - метки используемые для описания темы;
- TextDomain - название, используемое при локализации темы;
- DomainPath - путь до файлов перевода темы;
Использование
$theme = wp_get_theme( $stylesheet, $theme_root );
- $stylesheet(строка)
- Название каталога в котором находится тема, обычно оно совпадает с названием самой темы. По умолчанию название текущей темы.
По умолчанию: null - $theme_root(строка)
- Полный путь до каталога в котором расположена тема. По умолчанию, путь получается функцией get_raw_theme_root().
По умолчанию: null
Примеры
#1 Демонстрация
Давайте посмотрим, как выглядит получаемый объект. Используем функцию на дефолтной теме twentyfourteen:
WP_Theme Object ( [theme_root:WP_Theme:private] => C:\sites\example.com\www/wp-content/themes [headers:WP_Theme:private] => Array ( [Name] => Twenty Fourteen [ThemeURI] => http://wordpress.org/themes/twentyfourteen [Description] => In 2014, our default theme lets you create a responsive magazine website with a sleek, modern design. Feature your favorite homepage content in either a grid or a slider. Use the three widget areas to customize your website, and change your content's layout with a full-width page template and a contributor page to show off your authors. Creating a magazine website with WordPress has never been easier. [Author] => the WordPress team [AuthorURI] => http://wordpress.org/ [Version] => 1.0 [Template] => [Status] => [Tags] => black, green, white, light, dark, two-columns, three-columns, left-sidebar, right-sidebar, fixed-layout, responsive-layout, custom-background, custom-header, custom-menu, editor-style, featured-images, flexible-header, full-width-template, microformats, post-formats, rtl-language-support, sticky-post, theme-options, translation-ready, accessibility-ready [TextDomain] => twentyfourteen [DomainPath] => ) [headers_sanitized:WP_Theme:private] => [name_translated:WP_Theme:private] => [errors:WP_Theme:private] => [stylesheet:WP_Theme:private] => twentyfourteen [template:WP_Theme:private] => twentyfourteen [parent:WP_Theme:private] => [theme_root_uri:WP_Theme:private] => [textdomain_loaded:WP_Theme:private] => [cache_hash:WP_Theme:private] => ea3ba1457a0fbfd275006de061bbffe5 )
#2 Выведем название текущей активной темы
echo wp_get_theme();
#3 Выведем название установленной темы
$my_theme = wp_get_theme( 'twentyten' ); if ( $my_theme->exists() ) echo $my_theme;
#4 Выведем версию текущей темы
$my_theme = wp_get_theme(); echo $my_theme->get( 'Name' ) . " версия " . $my_theme->get( 'Version' );
#5 Выведем URL автора текущей темы
$my_theme = wp_get_theme(); echo $my_theme->get( 'AuthorURI' );
#6 Выведем другие данные текущей темы
$my_theme = wp_get_theme(); echo $my_theme->get( 'TextDomain' ); echo $my_theme->get( 'ThemeURI' );
Заметки
- Global. Массив. $wp_theme_directories
Список изменений
С версии 3.4.0 | Введена. |
Код wp_get_theme() wp get theme WP 6.6.2
function wp_get_theme( $stylesheet = '', $theme_root = '' ) { global $wp_theme_directories; if ( empty( $stylesheet ) ) { $stylesheet = get_stylesheet(); } if ( empty( $theme_root ) ) { $theme_root = get_raw_theme_root( $stylesheet ); if ( false === $theme_root ) { $theme_root = WP_CONTENT_DIR . '/themes'; } elseif ( ! in_array( $theme_root, (array) $wp_theme_directories, true ) ) { $theme_root = WP_CONTENT_DIR . $theme_root; } } return new WP_Theme( $stylesheet, $theme_root ); }