Не правильно кэшируются лексиконы
Всем привет. Сталкивался ли кто-нибудь с такой проблемой как не правильное кэширование лексиконов?
Есть свой компонент. Очищаю кэш, если первая загрузка страницы происходит с фронт-энда, то кэш лексиконов генерируется не правильно — не из моего файла с лексиконами, какой-то общий файл. Если же первая загрузка страницы с админки, то кэш генерируется правильно.
Понимаю, что что-то не так в моем компоненте. Но что именно понять не могу, так как не понимаю где начинается процесс кеширования лексиконов.
Есть свой компонент. Очищаю кэш, если первая загрузка страницы происходит с фронт-энда, то кэш лексиконов генерируется не правильно — не из моего файла с лексиконами, какой-то общий файл. Если же первая загрузка страницы с админки, то кэш генерируется правильно.
Понимаю, что что-то не так в моем компоненте. Но что именно понять не могу, так как не понимаю где начинается процесс кеширования лексиконов.
Поблагодарить автора
Отправить деньги
Комментарии: 6
Очень интересен комментарий человека поставившего минус =)
Случайно добавил вопрос не в ту категорию. Исправил, моя ошибка.
Обычно лексикон вызывается к классе компонента. Вот пример из modExtra.
Да, это я знаю и у меня также.
Сегодня лог MODX порадовал меня ошибками, связанными с моими лексиконами.
Сегодня лог MODX порадовал меня ошибками, связанными с моими лексиконами.
PHP warning: unlink(/var/www/******/data/www/****.**/core/cache/lexicon_topics/lexicon/en/***/default.cache.php): Permission denied
PHP warning: closedir(): 25 is not a valid Directory resource
PHP warning: unlink(/var/www/******/data/www/****.**/core/cache/lexicon_topics/lexicon/ru/***/default.cache.php): Permission denied
PHP warning: closedir(): 31 is not a valid Directory resource
Никода не сталкивался с таким.
Из ошибки ясно, что сервер неправильно настроен. Закешенные файлы не может открыть из-за нехватки прав.
Так и не разобрался с этой проблемой, решил таким костылем: плагин на событие OnMODXInit
<?php
switch ($modx->event->name) {
case 'OnMODXInit':
// $modx->getService('lexicon','modLexicon');
$modx->lexicon->load('tournaments:default');
break;
}
Еще этот вариант помог мне выводить лексиконы в параметре tpl, сниппета pdoResources, выводящиеся через pdoPage. Когда листаешь страницу, ajax пагинация не подгружает кастомные лексиконы.
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.