Как использовать функцию GET_THEME_ROOT_URI() в WordPress
Функция get_theme_root_uri() позволяет получить URI (адрес) директории тем в WordPress. Это полезно для разработчиков и пользователей, которые хотят работать с файлами своих тем.
Что такое GET_THEME_ROOT_URI()?
- Описание: Функция возвращает URI для директории тем.
- Особенности: URI не содержит конечного слэша.
- Используемые функции: Результат этой функции можно использовать в других функциях, таких как
get_stylesheet_directory_uri()иget_template_directory_uri().
Производительность
- Время выполнения функции:
- 1 раз — 0.00004 сек (очень быстро)
- 50000 раз — 2.11 сек (быстро)
Возвращаемое значение
- Тип: Строка. Это URI директории тем.
Использование функции
Для того чтобы использовать функцию get_theme_root_uri(), необходимо указать параметры:
get_theme_root_uri( $stylesheet_or_template, $theme_root );
Параметры
-
$stylesheet_or_template(строка) — название таблицы стилей или шаблона вашей темы. Если этот параметр не указан, будет использована основная директория темы.По умолчанию: ''
-
$theme_root(строка) — директория темы, для которой будет производиться расчет. Это позволяет избежать вызова функцииget_raw_theme_root().По умолчанию: ''
Пример использования функции
Вот простой пример, как можно использовать get_theme_root_uri():
$themes_directory = get_theme_root_uri();
echo $themes_directory;
// вывод: https://ваш-сайт/wp-content/themes
Важные замечания
- Глобальная переменная: Используется массив
$wp_theme_directories, который содержит список директорий тем.
Обновления функции
- Версия: Эта функция была введена в версии WordPress 1.5.0.
Исходный код функции
Вот как выглядит функция get_theme_root_uri() в файле wp-includes/theme.php:
function get_theme_root_uri( $stylesheet_or_template = '', $theme_root = '' ) {
global $wp_theme_directories;
if ( $stylesheet_or_template && ! $theme_root ) {
$theme_root = get_raw_theme_root( $stylesheet_or_template );
}
if ( $stylesheet_or_template && $theme_root ) {
if ( in_array( $theme_root, (array) $wp_theme_directories, true ) ) {
if ( str_starts_with( $theme_root, WP_CONTENT_DIR ) ) {
$theme_root_uri = content_url( str_replace( WP_CONTENT_DIR, '', $theme_root ) );
} elseif ( str_starts_with( $theme_root, ABSPATH ) ) {
$theme_root_uri = site_url( str_replace( ABSPATH, '', $theme_root ) );
} elseif ( str_starts_with( $theme_root, WP_PLUGIN_DIR ) || str_starts_with( $theme_root, WPMU_PLUGIN_DIR ) ) {
$theme_root_uri = plugins_url( basename( $theme_root ), $theme_root );
} else {
$theme_root_uri = $theme_root;
}
} else {
$theme_root_uri = content_url( $theme_root );
}
} else {
$theme_root_uri = content_url( 'themes' );
}
return apply_filters( 'theme_root_uri', $theme_root_uri, get_option( 'siteurl' ), $stylesheet_or_template );
}
Связанные функции
Функция get_theme_root_uri() связана с несколькими другими функциями, которые могут быть полезны при работе с темами:
get_parent_theme_file_path()get_stylesheet_directory()get_template_directory()register_theme_directory()
Эти функции помогут вам управлять файлами тем и получать информацию о них.
Теперь вы можете использовать функцию get_theme_root_uri() в своих проектах WordPress и знать, как правильно её применять!