plugins_url()
Получает URL папки плагинов или mu (must use) плагинов (без слэша на конце).
Дополнить полученный URL можно указав первый параметр $path.
Также можно использовать волшебную PHP константу __FILE__
для второго параметра, чтобы получить путь до папки в которой находится указанный __FILE__
. Функция сравнит путь до папки плагинов и полный путь до файла из которого вызывается функция, и дополнит недостающий путь от директорией плагинов до указанного файла.
Использует константы: WP_PLUGIN_URL
или WPMU_PLUGIN_URL
в качестве базы для создания итогового URL.
Заметки
-
Не рекомендуется использовать константы WP_PLUGIN_URL, WPMU_PLUGIN_URL для получения путей.
- Функцию не рекомендуется вызывать из глобального контекста плагина. Её лучше вызывать позже, после того как все плагины подключатся - это хук plugins_loaded и любые более поздние хуки. Нужно это, чтобы быть уверенным, что на хуке plugins_url уже висят функции, которые могут добавить другие плагины, для изменения результата работы этой функции.
Используйте plugin_dir_url( __FILE__ ) в основном файле плагина, чтобы получить URL на основную папку плагина.
Хуки из функции
Возвращает
Строку
. URL до указанного файла плагина.
Использование
plugins_url( $path, $plugin );
- $path(строка)
- Путь до файла плагина (относительно каталога плагинов), URL на который нужно получить,
По умолчанию: '' - $plugin(строка)
- Путь после директории плагинов, который должен быть после каталога плагинов и до указанного файла в первом параметре. В этом параметре часто используется константа __FILE__ смотрите примеры.
По умолчанию: ''
Примеры
#1 Еще одни пример с __FILE__
В папке плагина есть каталог images и файл wordpress.png, и в этой же папке лежит исполняемый php файл, в котором нам нужно получить ссылку на картинку, тогда в нем используем такой код:
echo '<img src="'. plugins_url( 'images/wordpress.png' , __FILE__ ) .'" > '; // получим: <img src="http://www.example.com/wp-content/plugins/my-plugin/images/wordpress.png">.
#2 Демонстрация работы функции:
echo plugins_url(); // вернет: http://example.com/wp-content/plugins echo plugins_url( 'plugin-name/style.css' ); // вернет: http://example.com/wp-content/plugins/plugin-name/style.css
#3 Динамическое указание пути до файла плагина
Мы можем указать путь в первом параметре жестко: plugin-name/style.css
, но в этом случае, если мы переименуем папку плагина, то ссылка окажется битой, чтобы этого не произошло, можно использовать __FILE__ во втором параметре, тогда функция сама допишет недостающий путь между папкой плагинов и указанным файлом.
Допустим, папка нашего плагина называется plugin-name
и в ней лежит файл style.css
, нам нужно получить ссылку на этот файл, пишем так:
$plugins_url = plugins_url( 'style.css', __FILE__ ); echo $plugins_url; // вернет: http://example.com/wp-content/plugins/plugin-name/style.css
В этом случае функция должна вызываться из той же директории, где лежит файл.
#4 Вызов из подкатегории категории плагина
Если plugins_url() вызывается из файла, который находится в подкаталоге плагина, то во втором параметре нужно использовать dirname():
echo '<img src="' . plugins_url( 'images/wordpress.png' , dirname(__FILE__) ) . '" > ';
Тут во втором параметре мы указали путь до родительской директории каталога файла из которого вызывается функция.
Список изменений
С версии 2.6.0 | Введена. |