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 ); }