У меня есть шаблон цикла, loop-event-details.php
где у меня есть код для отображения каждого события.
Мой шаблон главной страницы называется events-page.php
. Я использую следующий код для включения шаблона цикла:
get_template_part( 'loop', 'event-details' );
Я также пробовал этот код:
include(TEMPLATEPATH . '/loop-event-details.php');
Однако при просмотре страницы всегда жалуется на ошибку синтаксического анализа:
Parse error: syntax error, unexpected T_ENDWHILE in /<my_templatepath>/loop-event-details.php on line 1
Это loop
не в строке 1, а в строке 15. Код в loop
файле правильный, потому что, когда я копирую и вставляю весь код из loop
файла в page
файл, все работает. Как только я пытаюсь включить его в любой контракт ( get_template_part()
или include()
), он не работает и всегда жалуется на строку 1.
Любые советы и помощь будут очень признательны.
Спасибо, Даша
РП 3.1.0
Версия PHP 5.2.6-1+lenny9
Может быть, какие-то случайные пробелы в конце
loop-event-details.php
?+1 @t31os. Попробуйте просто записать его по частям еще раз в новый файл и посмотреть, что получится.
@kaiser сделал это, все так же: S так запутанно! Кстати, у меня такая же настройка на моей локальной машине (PHP 5.3.1), и она работает нормально. Но отображает эту ошибку на онлайн-сайте разработчиков с версией PHP 5.2.6-1+lenny9.
Попробуйте включить полностью пустой loop-event-details.php с помощью get_template_part() и посмотрите, появляется ли ошибка по-прежнему?
@DashaLuna: Вы можете сами написать ответ и принять его. Вы не получите повышения репутации, но вопрос будет помечен как отвеченный.
Я создал новый файл, указал кодировку «UTF-8» и перепечатал все вручную — никакого копирования/вставки из старого файла. Потребовалось время, но теперь все работает. Должно быть, были какие-то ошибки кодирования.
Спасибо всем, кто помог: @t31os, @kaiser, @Chip Bennett