get_theme_root_uri() WP 1.5.0

Отримує УРЛ каталог з темами. УРЛ немає закінчуючого слеша.

Ця функція є обгорткою для конструкції content_url(‘themes’) .

Використовує глобальну змінну $wp_theme_directories .

Щоб отримати абсолютний шлях до папки з темами, використовуйте get_theme_root()

Працює на основі:
content_url()
1 раз – 0.00004 сек
(дуже швидко) | 50000 разів – 2.11 сек
(швидко)

Хуки з функції

Повертає

Строку. УРЛ на директорію шаблонів.

Використання

get_theme_root_uri ($ stylesheet_or_template, $ theme_root);
$stylesheet_or_template
(рядок)
Назву теми, УРЛ якої потрібно отримати.


За замовчуванням: ”
$theme_root
(рядок)

Шлях до кореня теми, яка буде використана у визначенні URL. Замінює виклик функції get_raw_theme_root() .

Приклади значень:

'/themes'

$ theme_root = get_option( 'stylesheet_root' );

$ theme_root = get_option( 'template_root');

$theme_roots = get_theme_roots();
$theme_root = $theme_roots[ $stylesheet_or_template ];

За замовчуванням: ”

Приклади

0

#1 Приклад роботи функції

<?php
$themes_directory = get_theme_root_uri();
echo $themes_directory;

// Поверне:
// http://www.wp-kama.ru/wp-content/themes

нотатки

  • Global. Масив. $wp_theme_directories

список змін

З версії 1.5.0Введено.

Код get_theme_root_uri() WP 6.0.2

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 ) ) {
			// Absolute path. Make an educated guess. YMMV - але завантажити фільтр.
			if ( 0 === strpos( $theme_root, WP_CONTENT_DIR ) ) {
				$theme_root_uri = content_url( str_replace( WP_CONTENT_DIR, '', $theme_root ) );
			} elseif ( 0 === strpos( $theme_root, ABSPATH ) ) {
				$ theme_root_uri = site_url (str_replace (ABSPATH, '', $ theme_root));
			} elseif ( 0 === strpos( $theme_root, WP_PLUGIN_DIR ) || 0 === strpos( $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');
	}

	/**
	 * Filters the URI для теми директорії.
	 *
	 * @ Since 1.5.0
	 *
	 * @param string $theme_root_uri The URI for themes directory.
	 * @param string $siteurl WordPress web address which is set in General Options.
	 * @param string $stylesheet_or_template The stylesheet або template name of theme.
	 */
	return apply_filters( 'theme_root_uri', $theme_root_uri, get_option( 'siteurl' ), $stylesheet_or_template );
}

Залишити відповідь

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *