Устранение ошибок MODX Revolution на php v.5.4.13


В ходе развертывания MODX Revolution на сервере с php v.5.4.13 столкнулся с неработающей админкой и поиском.

В логе апача обнаружил следующую ошибку:

PHP Fatal error: Call to a member function setCacheable() on a non-object in core/cache/includes/elements/modsnippet/31.include.cache.php on line 31

Поиски в тырнетах не дали результата. Все советуют переустановить ModX, очистить папку core/cache и т.д.

Стоит ли говорить, что все эти советы бессмысленны.

Для устранения ее, нужно обернуть $tpl->setCacheable(false); в условный оператор, а именно:

    if (is_object($tpl)) {
        $tpl->setCacheable(false);
    }

Таким же подходом устраняется следующая бяка:

PHP Fatal error: Call to a member function get() on a non-object in core/model/modx/modmanagerresponse.class.php on line 41

    if (is_object($action)){
        $action = $action->get('id');
    }
Share Button
(Visited 772 times, 1 visits today)

2 комментария на «“Устранение ошибок MODX Revolution на php v.5.4.13”»

  1. К сожалению у меня нету под рукой cломаного ModX чтобы сказать точно, но полагаю, что нужно редактировать файл «core/cache/includes/elements/modsnippet/31.include.cache.php»

    Более точно определить можно выполнив следующую команду в папке сайта:

    grep «setCacheable(false)» * -RI

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *