3 часа назад
а если этот opcash отключить?
При нажатии на файлы в разделе ресурсы вылезают пустые страницы. 7
4 часа назад
Тогда открой логи сервера и почитай, что там пишут.
[miniShop2] - Ошибка при инициализации 3
9 часов назад
извините перепутал выше, по запаре свое из головы написал
[[msOptions?options=`color`]]
Вывести цвет из свойств товара Mininshop2 5
Вчера в 12:56
не работает старый видать кто может обновить
слетает
[Ideas] - как добавить фильтр по user_id ??? 2
Вчера в 10:09
Да, все так! Спасибо огромное!
pdoPage фильтр по TV (список одиночный выбор) [РЕШЕНО] 2
20 мая 2024, 10:19
Скажите, а есть какое-то понимание по срокам? Хотя бы приблизительно, спасибо
msOrderFields. Управление полями заказа. 36
20 мая 2024, 10:13
MiniShop3 использует компоненты composer, а значит перед установкой нужно запустить композер, чтобы он скачал необходимые для работы компоненты.
MiniShop3 для MODX3. Отчет за месяц 14
19 мая 2024, 09:47
добавить можно с помощью &includeDocs
исключить с помощью &excludeDocs
Шрифты меняются в стилях css
Найти место редактирования меню 3
19 мая 2024, 07:27
Оперативно. На ум приходит только старый анекдот:
— Скажите, больной перед смертью потел?
— Да.
— Это хорошо.
Facade Laravel в Modx 2/3 22
Всего 122 950 комментариев
Именно. Но это такое не благодарное дело получится.
Но если уж заморачиваться, то логика должна быть примерно такой:
КАЖДЫЙ сниппет при КАЖДОМ своём выводе должен сверять ПРЕДЫДУЩУЮ выводимую им информацию с ТЕКУЩЕЙ выводимой им информацией. Т.е. надо завести отдельную таблицу и хранить там, к примеру, md5 от выводимых сниппетом данных и дату этих данных. И если md5 от текущих данных отличается от md5 из таблицы, то перезаписывать md5 и дату.
Потом на то же событие «OnLoadWebDocument» проверять количество сниппетов, в которых данные изменились с последнего вызова (эту переменную можно держать в сессии и каждый сниппет при необходимости инкрементирует её). И если это количество отлично от нуля, то отдавать 200. Иначе отдавать 304 (естесственно, не забыть проверять и дату последнего редактирования ресурса, как в текущем варианте).
НО:
1. Мы здесь теряем одно преимущество этого заголовка — снижение реальной нагрузки на сервер (это при достаточно годной посещаемости). Ведь фактически нагрузка увеличится! Это +1 запрос к вызову каждого сниппета и, если использовать md5, то ещё и на хэширование ресурсы тратить.
2. Как определить уникальность вызова сниппета и однозначно идентифицировать его в нашей специальной таблице?
В принципе, можно написать сниппет-обёртку (как getPage), который будет делать всю эту грязную работу. Ну и плагин доработать слегка.
Для поисковиков будет хорошо, да. Эту задачу этот сниппет+плагин будет решать.
Но со вторым «НО» из списка выше пока не понятно. Да и популярностью данное решение пользоваться не будет — оно сложно для понимания и оборачивать нужно КАЖДЫЙ вызов КАЖДОГО сниппета, что, естесственно, подавляющее большинство делать не будет.
Да и кому это вообще надо-то?))) Нафига я всё это писал? xDD
Судя по записям в логе — что то не так с ключами. Можно еще попробовать разлогиниться с сайта и почистить кэш бразуера. Настройки кэшируются в сессии, это может помешать как-то.
Ну и еще бы &limit=`0` добавить, чтобы индексировались не 10, а все товары.
Нет ничего удивительного, что на неинтересные вопросы отвечать не интересно.
спецовкоторые хотят получить все готовое и т.д…Общая суть — этот сайт так или иначе поддерживает уровень не дилетантов и такие вопросы как — «Можно пошаговую инструкцию по применению данного снипета.» почти всегда игнорируются.
Василий пойми правильно — я за такие методы. )))
А глюк сессии может быть либо от php-apc, либо оттого, что браузер ориентируясь на заголовки что-то не грузит.
Я одно время интересовался этой темой и пришел к выводу, что она не перспективна. Время и силы лучше потратить на оптимизацию сервера и скриптов, чем на глючное кэширование.
1) качаю, ставлю mSearch из репозитория
2) на одной из страниц сайта пишу в контент документа:
3) захожу на страницу, вижу:
4) создаю страницу — поиск. в нее добавляю вызов сниппета:
5) добавляю на страницу поиск форму:
Дак вот, если post меняю на get — редиректит на главную страницу.
Соль в том, что сейчас поиск заработал ) еще раз все повторил. НО вопрос актуален.У меня не проиндексировались поля color,tags (из minShop2). Хотя я вызвал индексирование же с правильными параметрами или как?
В MODX это просто не имеет перспектив, если только не прописывать работу с заголовками каждому используемому сниппету.
Поиск будет работать, фильтр — нет.
А редирект на главную говорит о том, что неверно настроена либо форма, либо friendly url. От поиска это точно никак не зависит.
Ах, этот жестокий несправедливый мир.
Так же, на этом сервисе есть 2 занятные статьи, после прочтения которых, вывод (относительно MODx) не такой уж и однозначный…
Дело в том, что у вас идёт проверка на последнее изменение КОНТЕНТА страницы, т.е. последнее сохранение ресурса.
И, если
дата последнего Last-modified, который запомнил клиент (браузер или робот поисковика) больше (или равна) дате последнего сохранения ресурса в modx, то вы отдаёте 304 и клиент эту страницу загружать уже НЕ БУДЕТ.
Но вот нюансы:
— если вы добавили новый ресурс, который должен быть виден в меню;
— или у вас появился новый комментарий к статье;
— или у вас стоит какой-нибудь модуль финансовых сводок, который должен отображать актуальную информацию;
— да мало ли что ещё…
то пользователь этих изменений уже не увидит! Потому что он будет брать эту страницу из своего кэша.
ИМХО вопрос с Last-Modified нужно продумывать ГОРАЗДО тщательнее и на каждом конкретном сайте в индивидуальном порядке. И простым плагином здесь уже не обойтись.
Всё зависит от (кхм) зависимостей данных, отображаемых на текущей странице, от данных на других страницах (к примеру вывод новостей) или сниппетов и модулей (к примеру галереи или комментарии).
Вот такие пироги. Решайте — выбирать вам.