get_theme_file_uri()
Получает URL указанного файла темы. Учитывает дочерние темы.
Функция пытается найти указанный файл сначала в дочерней теме, если его там нет, то берет его из основной. Таким образом дочерняя тема может переписывать файл основной темы.
Функция создана, для того, чтобы повсеместно использоваться при создании тем, чтобы все URL в теме поддерживали дочерние темы...
Функция отличается от похожих на нее функций: get_stylesheet_directory_uri() и get_template_directory_uri(), тем что она на основе этих функций ищет указанный файл: сначала в дочерней теме, если его там нет, то ищет его в родительской. А с помощью этих двух функций можно просто получить URL либо дочерней (если она есть или родительской если её нет), либо напрямую родительской темы.
Используйте get_parent_theme_file_uri(), когда НЕ нужно учитывать дочернюю тему.
Используйте get_theme_file_path(), когда нужно аналогичным способом получить путь файла (не URL).
Читайте мой ответ на вопрос «Что лучше использовать» по этой функции.
Хуки из функции
Возвращает
Строку
. URL файла.
Использование
get_theme_file_uri( $file );
- $file(строка)
Название файла который нужно найти в теме. Например
file.js
. Можно указать вложенный файлjs/file.php
или так/js/file.js
.Если оставить строку пустой, то вернет URL активной темы, учитывая дочернюю тему. См. get_stylesheet_directory_uri()
По умолчанию: ''
Примеры
#1 Получим URL файла темы с учетом дочерней темы
Допустим нам нужно подключить в теме файл js/my-script.js
, но при этом нужно сделать так, чтобы при создании дочерней темы и такого же файла в ней, подключался файл дочерней темы.
Теперь в WP 4.7 это можно записать очень просто с помощью функции get_theme_file_uri():
wp_enqueue_script( 'my-script', get_theme_file_uri( 'js/my-script.js' ), array(), filemtime( get_theme_file_path('js/my-script.js') ) );
Список изменений
С версии 4.7.0 | Введена. |