[Решено] как ускорить getPage
Вопрос может очень старый и глупый, но можно ли как то использовать кеш в getPage? Сам сниппет не получится использовать кешированным, но от этого страдает обернутый сниппет (например getResource) и великолепный и скоростной кеш модекса сходит на нет, особенно грустно когда в постраничной разбивке участвуют картинки. Решение нашлось.
Решение:
суть в следующем, надо выставить параметры в таком варианте:
Остался вопрос, что делать при участии нескольких сниппетов в getPage (происходит переопределение кеша), у меня это getResources и Wayfinder, я повесил кеш на первый, потому что в нем вывожу картинки из кеша, что намного весомей, wayfinder и так хорошо работает, но хорошо бы было и его закешировать.
чтоб не было недосказанных вещей, вот как выглядит несколько сниппетов на одной странице для общей пагинации
в кешовых файлах встретил переменную cachePageKey, которая показывает откуда берется кеш, но добавить доп. страницу для другого сниппета не получилось
Решение:
суть в следующем, надо выставить параметры в таком варианте:
&cache=`true`
&cache_key=``
&cache_expires=`31536000`, где cache_key означает каталог resource/ по умолчанию (его даже можно не выставлять пустым, можно просто упустить), в этом каталоге модекс чистит кеш при добавлении редактировании ресурсов. cache_expires время в секундах, это понятно. Также можно задать свой cache_key, но тогда он не будет участвовать в общем очищении кеша, что и хорошо и плохо. Остался вопрос, что делать при участии нескольких сниппетов в getPage (происходит переопределение кеша), у меня это getResources и Wayfinder, я повесил кеш на первый, потому что в нем вывожу картинки из кеша, что намного весомей, wayfinder и так хорошо работает, но хорошо бы было и его закешировать.
чтоб не было недосказанных вещей, вот как выглядит несколько сниппетов на одной странице для общей пагинации
[[!getPage@myGetPage?
&elementClass=`modSnippet`
&element=`getResources`
&parents=`[[*id]]`
&cache=`true`
&cache_key=``
&cache_expires=`31536000`
]]
[[!getPage@myGetPage?
&elementClass=`modSnippet`
&element=`Wayfinder`
&startId=`[[*id]]`
]]в кешовых файлах встретил переменную cachePageKey, которая показывает откуда берется кеш, но добавить доп. страницу для другого сниппета не получилось
Комментарии: 7
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
rtfm.modx.com/display/ADDON/getPage#getPage-CachingProperties
для теста, увидел, что соответствующие кешевые папочки создаются, но скорости это не дало, что до, что после