Получить URL-адрес директории плагина

28 дек. 2013 г., 19:46:08
Просмотры: 23.9K
Голосов: 3

Я пытаюсь использовать SMOF Options Framework в плагине и столкнулся с такой проблемой. SMOF использует следующие константы для получения URL директории темы:

if( !defined('ADMIN_PATH') )
    define( 'ADMIN_PATH', get_template_directory() . '/admin/' );
if( !defined('ADMIN_DIR') )
    define( 'ADMIN_DIR', get_template_directory_uri() . '/admin/' );

Но я хочу использовать SMOF в плагине, а не в теме. Как я могу получить URL-адрес директории плагина? Чем заменить get_template_directory() и get_template_directory_uri() для использования в плагине?

0
Все ответы на вопрос 2
1
11

Используйте plugin_dir_url( __FILE__ ); для получения URL и plugin_dir_path( __FILE__ ); для получения пути.

Передайте главный файл плагина в обе функции, чтобы получить аналогичные результаты.

Кроме того, ADMIN_PATH и ADMIN_DIR — действительно плохие названия для пользовательского кода. Они могут привести к конфликтам с другим кодом в будущем. Попробуйте использовать более подходящие имена, например, с уникальным префиксом.

28 дек. 2013 г. 19:57:07
Комментарии

работает как часы для локальных вызовов ресурсов, спасибо!

jonbarlo jonbarlo
15 мая 2018 г. 22:05:50
1

Я создал плагин для WordPress, который использует пользовательский CSS/JS код. Чтобы подключить эти ресурсы локально, добавьте строку наподобие этой:

wp_enqueue_style( 'wp-aa-style', plugin_dir_url( __FILE__ ) . 'css/wp-aa-style.css',false,'1.1','all');

wp-aa-style — это идентификатор элемента. Убедитесь, что вы создали папку css и файл wp-aa-style.css в основной директории вашего плагина WordPress.

Добавляю этот ответ в надежде, что он поможет тем, кто хочет использовать plugin_dir_url( __FILE__ ) для локального подключения ресурсов (вместо статических публичных URL) в своих пользовательских плагинах WordPress.

15 мая 2018 г. 22:04:44
Комментарии

Полагаю, ваш "демо" плагин больше не доступен на GitHub... ну что ж. В любом случае, спасибо за подсказку.

Gwyneth Llewelyn Gwyneth Llewelyn
27 мая 2023 г. 18:23:08