Бетон5 "Площадь" вызывает пустой экран - PullRequest
0 голосов
/ 25 апреля 2018

На относительно простом бетонном сайте5 у меня есть следующий код:

        $a = new Area('Full width');
        $a->display($c);

Вторая строка ломает страницу, но я не могу понять, почему. Если вы закомментируете это, страница будет отображена (явно без показа контента), с этим страница будет полностью пустой (вообще ничего в источнике).

Нет ничего релевантного ни в журнале concrete5, ни в журнале ошибок php, и у меня нет идей, как выяснить, что могло пойти не так (я могу только предположить, что это проблема с данными, как и остальная часть сайт в порядке).

Я надеюсь, что кто-то, возможно, испытал нечто подобное с идеями о том, как отладить или диагностировать это.

(это не дубликат другого более общего "php white screen of death" - я следовал за ними, и у них нет ответа на этот, возможно, более конкретный, вопрос)

Ответы [ 2 ]

0 голосов
/ 04 июля 2018

Вам больше не следует использовать глобальный $ c (вы не говорите, какая версия), но установите его явно:

$c = \Page::getCurrentPage();

Кроме того, вы можете попробовать это (просмотреть источник после рендеринга страницы):

<code>// $a->display($c);    
echo '<!--<pre>'. print_r($c, 1). '
-> ';

Вы также должны включить отладку во время разработки (Вывод информации об ошибке и Показать отладку):

http://yoursite.com/index.php/dashboard/system/environment/debug

@ Nour - я думал, что $ c нельзя использовать только с глобальными областями ...

0 голосов
/ 26 апреля 2018

Если вы используете более новую версию C5, попробуйте без $ c, так как в этом больше нет необходимости, и это может вызвать проблемы в зависимости от настроек PHP.

...