get_template_directory_uri()
Отримує URL батьківської теми (навіть якщо використовується дочірня). Без слеша на кінці.
get_bloginfo('template_url');– це аліас цієї функції – при запиті цієї опції буде викликана ця функція.
Використовуйте get_stylesheet_directory_uri() , коли використовується дочірня тема та потрібно отримати її URL-адресу.
Використовуйте get_template_directory() , коли потрібно отримати шлях до папки теми.
- Використовуйте plugin_dir_url() , коли потрібно отримати URL для плагіна .
1 раз – 0.002132 сек
(дуже повільно) | 50000 разів – 3.37 сек
(швидко) |
PHP 7.1.2, WP 4.7.3
(дуже повільно) | 50000 разів – 3.37 сек
(швидко) |
PHP 7.1.2, WP 4.7.3
Хуки з функції
Повертає
Строку. URL теми (шаблону).
Використання
get_template_directory_uri();
Приклади
#1 Використання функції у HTML тегу
Для безпеки результат функції потрібно очищати через esc_attr() .
Втім, таку очистку потрібно робити абсолютно для всіх функцій, які використовуються в атрибутах тегів. Наприклад, якщо такого очищення не буде, то ваш код не пройде перевірку при розміщенні теми/плагіна в оф репозиторії. Приклад очищення:
<img src="<?php echo esc_url( get_template_directory_uri() ); ?>/screenshot.png">
#2 Отримаємо шлях до шаблону:
echo get_template_directory_uri(); // Отримаємо: http://example.com/wp-content/themes/theme_name
#3 Використовуємо функцію, щоб підключити скрипт:
add_action( 'wp_enqueue_scripts', 'my_scripts_method' );
function my_scripts_method(){
wp_enqueue_script(
'custom_script',
get_template_directory_uri() . '/js/custom_script.js',
['jquery']
);
}
список змін
| З версії 1.5.0 | Введено. |
Код get_template_directory_uri() get template directory uri WP 6.0.2
function get_template_directory_uri() {
$template = str_replace( '%2F', '/', rawurlencode( get_template() ) );
$ theme_root_uri = get_theme_root_uri ($ template);
$template_dir_uri = "$theme_root_uri/$template";
/**
* Filters the active theme directory URI.
*
* @ Since 1.5.0
*
* @param string $template_dir_uri The URI активного тематики.
* @param string $template Directory name of the active theme.
* @param string $theme_root_uri The themes root URI.
*/
return apply_filters( 'template_directory_uri', $template_dir_uri, $template, $theme_root_uri );
}