Подключение файлов в functions.php
Это переписанный пост, так как формулировка моего старого поста полностью всех запутала.
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' );
Это будет правильным способом?
Подключение файла внутри поддиректории выполняется так же, как и любого другого, главное — знать путь к файлу. Поскольку возможно перемещение директории 'wp-content', не указывайте эту часть пути в операторе require
; вместо этого используйте константу WP_CONTENT_DIR
.
require_once WP_CONTENT_DIR . '/new-directory/my-file.php';
Также можно опустить круглые скобки, поскольку include
и require
— это инструкции, а не функции.

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

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