Подскажи пожалуйста, как запретить чистить весь кэш при удалении и восстановлении нового документа в админке modx revo 2.14, заранее спасибо
Здравствуйте! Николай, не похоже что из-за браузера, IE 8,11, Opera 24, 25, Crome 37,38, скрола нет ни в одном. Не подскажете путь до скрипта и, если это возможно, код, для сравнения. Спасибо!
Fatal error: Call to a member function get() on a non-object in /home/m/maa197cv/maa197cv.bget.ru/public_html/core/cache/includes/elements/modplugin/23.include.cache.php on line 17 Вот как раз здесь и говорит, что попытка вызова метода на необъекте. Суть этого кроется в этом топике. В процессоре обычных документов тип объекта - resource, а ShopmodxResourceProduct - shopmodxresourceproduct. Разница типов была использована для различных лексиконов. Это несовершенство MODX-а, которое и было описано в том топике.
хотя, я из консоли запускал скрипт, который ты показал. может, потому и ругался не $resource. Но я закомментировал OnBeforeDocFormSave и OnDocFormSave (они мне не нужны) - и работает.
в принципе, мне автообновление autoredirect не требуется. я эти события отключил, теперь все работает :)
Похоже, объекта нет, он пишет, что есть попытка обратиться к несуществующему методу: Fatal error: Call to a member function get() on a non-object in /home/m/maa197cv/maa197cv.bget.ru/public_html/core/cache/includes/elements/modplugin/23.include.cache.php on line 17 и как раз на тот кусок кода, что я указал выше
А как именно ругается? Сообщение покажи. Объект $resource вообще есть?
У нас здесь сайт тоже на мемкеше работает. Конечно быстрее чем на файлах. Особенно это критично для очистки кеша. Когда на файлах кеш и собирается куча файлов, очистка кеша долго выполняется. А на мемкеше раз и все :)
Нашел проблему. это autoredirector ругается. Правда, пока не разобрался, почему. И сбой идет только при сохранении (onBeforeDocFormSave): case "OnBeforeDocFormSave":
$resources = array(
$resource,
$modx->getObject('modResource',$resource->get('parent')) // ругается на get
);
if($child_ids = $modx->getChildIds($resource->id,50,array('context' => $resource->context_key))){
$resources = array_merge($resources, $modx->getCollection('modResource',array("id:IN" => $child_ids)));
}
Установил memcached! Работает без удаления папок :D + без очистки кеша. Zendopchache тоже работает честно говоря шустро чем APC-cache