2016-01-05 2 views
0

Я попытался включить некоторые php-файлы в header.php. Я использую скрипт ниже: -WordPress включить файл в заголовок не работает

get_template_part('custom/tos_functions'); 

Однако get_template_part не работает для меня, поэтому я использую включать, который работает отлично.

include (TEMPLATEPATH . "custom/tos_functions.php"); 

Этот вопрос, если я надену эту линию в header.php, я хочу использовать некоторые функции в пользовательском шаблоне, скажем profile.php. В файле profile.php файл как бы не вызывается вообще. Я не могу получить данные, которые мне нужны в profile.php.

Затем я попытался вынуть скрипт include из заголовка и поместить его в файл profile.php, и нужные мне данные можно назвать совершенно точными. Это будет проблемой, так как будет создано множество настраиваемых PHP-страниц, поэтому каждая страница вызовет сценарий include.

Вопрос: почему файл не может быть вызван из header.php? Данные могут быть получены только в header.php, и любая пользовательская страница, вызывающая заголовок, не может получить данные из включенного файла.

В любом случае я могу исправить это, чтобы разместить файл include в header.php?

Спасибо!

+2

Почему вы не включаете эти функции в функции functions.php? –

+0

Это список API для другой системы, поэтому хотелось бы их разделить. – Sylph

+1

Это ** неправильное место **, чтобы включить их. Включите файл из функции functions.php (не помещайте функции в functions.php, а скорее ** require_once ** ваш файл внутри functions.php). –

ответ

0

Вместо того, чтобы включать файлы в файлы шаблона темы (например, header.php), вы должны включить их в файл functions.php темы.

Включение их в файлы шаблонов почти всегда слишком поздно в прогоне WP, чтобы оно было полезным, и это может вызвать неожиданные результаты и неожиданный вывод в ваших шаблонах.

Вместо этого в файле functions.php, сделать что-то вроде этого:

require_once 'custom/tos_functions.php'; 

Затем ваш код API доступен, где вам это нужно, и он находится в «правильном» месте и в соответствии с «WordPress путь».

+0

Большое спасибо за подробное объяснение! – Sylph

Смежные вопросы