Подключение файлов в functions.php

16 июн. 2015 г., 15:42:14
Просмотры: 40.4K
Голосов: 5

Это переписанный пост, так как формулировка моего старого поста полностью всех запутала.

MikeSchinkel показывает, как он использует подключение файлов в файле functions.php своей темы в этом посте на Stackexchange: Организация кода в файле functions.php вашей темы WordPress?

Пример:

require_once('includes/my-file.php');

Как бы вы написали эту PHP строку, если файл для подключения находится внутри директории, которая находится в wp-content? Расположение: [wordpress install]/wp-content/new-directory/my-file.php

Единственный способ, который я могу предложить, выглядит так:

require_once( ABSPATH . '/wp-content/new-directory/my-file.php' );

Это будет правильным способом?

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

Подключение файла внутри поддиректории выполняется так же, как и любого другого, главное — знать путь к файлу. Поскольку возможно перемещение директории 'wp-content', не указывайте эту часть пути в операторе require; вместо этого используйте константу WP_CONTENT_DIR.

require_once WP_CONTENT_DIR . '/new-directory/my-file.php';

Также можно опустить круглые скобки, поскольку include и require — это инструкции, а не функции.

16 июн. 2015 г. 17:59:01
Комментарии

Подсказка насчёт const верна. Но если вам нужна большая гибкость, подумайте о загрузчике файлов. Так проще поддерживать код и нет избыточности. Небольшой пример можно посмотреть здесь: https://github.com/bueltge/simple-masonry-wordpress-theme/blob/master/functions.php

bueltge bueltge
16 июн. 2015 г. 18:58:25
1
-1

Это также работает:

require_once( ABSPATH . 'wp-content/new-directory/my-file.php' );

или

require_once get_stylesheet_directory() . '/my-file.php';
16 сент. 2024 г. 00:28:40
Комментарии

Ваш первый пример предполагает, что директория контента WordPress по-прежнему называется wp-content, что не гарантировано.

Pat J Pat J
17 сент. 2024 г. 22:59:05