Очистить кеш при создании страницы из фронтенда?

Использую дополнение ms2form для создания страниц через фронтенд. Беда в том, что при создании кеш не обновляется, и все ссылки, ведущие на новый документ (хлебные крошки, к примеру) не работают пока не почистить кеш вручную в админке. Это не есть хорошо, так как на сайте предполагается большое количество создаваемых пользователями страниц.

Создал плагин на событие OnDocFormSave с кодом:

<?php
	$res = $modx->getObject('modResource', 106);
	$res->clearCache();

Как я понял, при сохранении формы должен чиститься кеш родительского документа с id 106 и его дочерних документов. Но почему-то ничего не происходит.

Подскажите, что и куда нужно прописать, чтобы при создании страницы обновлялся кеш?
Александр
26 июня 2015, 17:13
modx.pro
1 046
0

Комментарии: 5

Александр
26 июня 2015, 21:44
0
В настройках системы отключал параметры cache_system_settings, cache_scripts и включал cache_disabled — без толку (
    Александр
    14 июля 2015, 06:34
    0
    В логах тоже ничего не пишет.
      Пётр Молчанов
      14 июля 2015, 10:40
      1
      +1
      Надо юзать $modx->cacheManager->refresh();
      Подробнее про опции смотри тут rtfm.modx.com/revolution/2.x/developing-in-modx/advanced-development/caching
        Александр
        14 июля 2015, 14:42
        0
        Изначально так и делал, реакции также никакой.
        Да и, на сколько я понимаю, этот вариант чистит кеш всей админки. Это плохо, т.к. если много пользователей одновременно будут создавать страницы — сайт подохнет.

        Я в тикетсах копался, но так и не понял, как там это работает. А там работает именно так, как надо.
          Пётр Молчанов
          14 июля 2015, 14:51
          0
          Если юзать чисто $modx->cacheManager->refresh();, то да, весь кеш чиститься, но я не просто так кинул тебе сцыль на доки. Посмотри там в конце примеры, эта конструкция принимает 2 параметра: $paths и $options
        Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
        5