WordPress как на ладони
Недорогой хостинг для сайтов на WordPress: wordpress.jino.ru Рекомендуемые продукты со скидкой от Template Monster

get_template_directory_uri() WP 1.5

Получает URL текущей темы. Не учитывает наличие дочерней темы. Не содержит закрывающий слэш.

Вместо этой функции можно использовать: get_bloginfo('template_url');

Если нужно получить URL дочерней темы, когда она используется, то используйте функцию get_stylesheet_directory_uri().

Когда нужно получить путь до папки темы, используйте get_template_directory()

Когда нужно получить такой URL для плагина, используйте plugin_dir_url()

Является основой для: get_parent_theme_file_uri(), get_theme_file_uri()
Работает на основе: get_theme_root_uri(), get_template()
✈ 1 раз = 0.002132с = очень медленно | 50000 раз = 3.37с = быстро | PHP 7.1.2, WP 4.7.3
Хуки из функции
Возвращает

Строку. URL темы (шаблона).

Использование

$template_url = get_template_directory_uri();

Примеры

#1. Получим путь до шаблона:

echo get_template_directory_uri();

// получим: http://example.com/wp-content/themes/theme_name

#2. Используем get_template_directory_uri(), чтобы подключить скрипт:

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: wp-includes/theme.php WP 5.2.4

<?php
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 current theme directory URI.
	 *
	 * @since 1.5.0
	 *
	 * @param string $template_dir_uri The URI of the current theme directory.
	 * @param string $template         Directory name of the current theme.
	 * @param string $theme_root_uri   The themes root URI.
	 */
	return apply_filters( 'template_directory_uri', $template_dir_uri, $template, $theme_root_uri );
}

Cвязанные функции

Из метки: theme path url (папка темы)

Еще из раздела: Подключение файлов темы

10 комментов
  • Serg

    строку, URL пусть до шаблона.

    Очепятка.
    "Путь к теме".

    Тимур, ещё в кодексе, в описании этой функции что-то про дочерние темы сказано. Переведи плз. и это.

    Ответить5.9 лет назад #
  • @ Дамир gabdrahimov.ru

    сайт супер, спасибо Тимур smile

    Ответить4.8 года назад #
  • YAKOVLEV

    Здравствуйте!
    А если я хочу, чтобы

    echo get_template_directory_uri();
    // получим: http://test.ru/wp-content/themes/theme_name

    Чтобы ссылка была не http, а https
    Как это сделать?

    Ответить4.8 года назад #
  • @ Елена

    Я скачала шаблон для ворд пресс, там эта строка стоит второй в описании. И в ней ссылка на сторонний сайт. Что это значит? Оставлять ее или это надо удалить (заменить на свой ресурс)?
    Выглядит вот так:

    /*
    Theme Name: BeautyMagazine
    Theme URI: <a href="http://themesjunction.com" rel="nofollow">http://themesjunction.com</a>
    Description: WordPress шаблон в магазинном исполнении.
    Version: 1.0
    Author: Themes Junction Team
    Author URI:
    */

    Спасибо за ответ. Желательно немного подробный.... для "чайников"

    Ответить4.7 года назад #
    • campusboy3417 www.youtube.com/c/wpplus

      Елена, в Вашем случае эту информацию можно не трогать. Она выводиться на странице с выбором тем у вас в админке и больше нигде. По этой ссылке Вы можете ознакомиться с автором темы, посмотреть его другие работы или почитать о своей теме.

      2
      Ответить4.7 года назад #
  • Иван

    Разобрался, применил другую функцию dance

    $mythemes = get_template();
    return site_url( "/wp-content/themes/$mythemes/image/{$img}", __FILE__ );}

    Все работает! Только вот сомневаюсь в правильности, может намудрил и можно сделать проще без

    $mythemes = get_template();

    ?

    Ответить4.4 года назад #
    • campusboy3417 www.youtube.com/c/wpplus

      Может так?

      return  get_template_directory_uri().'/'.__FILE__;
      Ответить4.4 года назад #
      • Иван

        Нет, так не работает. Когда добавляю image/{$img} то ссылка на файл не работает и дублирует два раза одно и тоже в пути, а на конце вместо файла который в папке ссылается на functions.php

        Ответить4.4 года назад #
Здравствуйте, !     Войти . Зарегистрироваться