We launched new forums in March 2019—join us there. In a hurry for help with your website? Get Help Now!
    • 38788
    • 5 Posts
    Есть сайт - http://дхш-выкса.рф/

    На главной странице я вывожу обложки альбомов из галлереи

    [[GalleryAlbums?
    &limit=`10`
    &albumCoverSort=`random`
    &sort=`random`
    &prominentOnly=`0`
    &rowTpl=`gallery-main`
    &thumbWidth=`524`
    &thumbHeight=`393`]]


    Хочеться, что бы обложки регулярно менялись, и для этого надо постоянно очищать кэш. Как сделать очистку кеша именно для данного компонента через определенное ко-во времени?

    Что делал:
    1) Ставил в настройках Время жизни кэша cache_expires - 60сек - не помогает
    2) Пробовал использовать сниппет getCache
    [[!getCache?
    &element=`GalleryAlbums` 
    &cacheExpires=`1800`
    &limit=`10`
    &albumCoverSort=`random`
    &sort=`random`
    &prominentOnly=`0`
    &rowTpl=`gallery-main`
    &thumbWidth=`524`
    &thumbHeight=`393`]]
    [ed. note: blagoy52 last edited this post 14 years, 8 months ago.]
      • 31246 ☆ A M B ☆
      • 428 Posts
      установите CronManager - http://modx.com/extras/package/cronmanager
      создайте сниппет, который будет очищать вам только один ресурс (главное, чтобы он не был связан с другими ресурсами, но в вашем случае думаю можно применять смело).
      К примеру удаление кэша для ресурса с id = 2
      $res = $modx->getObject('modResource',array('id'=>2));
      $modx->cacheManager->delete($res->getCacheKey(), array(
                  xPDO::OPT_CACHE_KEY => $modx->getOption('cache_resource_key', null, 'resource'),
                  xPDO::OPT_CACHE_HANDLER => $modx->getOption('cache_resource_handler', null, $modx->getOption(xPDO::OPT_CACHE_HANDLER)),
                  xPDO::OPT_CACHE_FORMAT => (integer) $modx->getOption('cache_resource_format', null, $modx->getOption(xPDO::OPT_CACHE_FORMAT, null, xPDOCacheManager::CACHE_PHP)))
      );

      и запускаете этот сниппет через крон.
        Valentin Rasulov - Industrial design (Hobbies - Web Development)
        Development not standard projects on CMF MODx Revolution.
        Small sample of extensions
        • 38788
        • 5 Posts
        Сниппет создал, крон настроил, лог в CronManager пишеться, но кэш не обновляеться.

        Удаление кэша прописано для ресурса 1, в котором и прописан вывод обложек
        [[GalleryAlbums? &limit=`10` &albumCoverSort=`random` &sort=`random` &prominentOnly=`0` &rowTpl=`gallery-main` &thumbWidth=`524` &thumbHeight=`393`]]
          • 31246 ☆ A M B ☆
          • 428 Posts
          а вы для теста создайте пустой ресурс и вызовите сниппет для очистки кэша. Тогда будете знать, что у вас не работает - крон или сниппет. Я уверен что с кроном что-то вы недонастроили.
          Если всё-же с CronManager траболы, тогда просто у себя в сервере или хостинг панеле в крон забейте этот ресурс который вы создали для очистки кэша.
            Valentin Rasulov - Industrial design (Hobbies - Web Development)
            Development not standard projects on CMF MODx Revolution.
            Small sample of extensions