]]>
]]>
Рейтинг@Mail.ru

Как использовать MODx плагин для кэширования сниппетов

Материал из Веб программирование.

Перейти к: навигация, поиск

Хороший способ кэшировать сниппет MODX через плагины, используя событие OnDocFormSave.

По шагам:

1. Создайте чанк и оставьте его пустым. Назовите его любым именем, например: "Menu"

2. Создайте плагин. Добавьте код:

$myChunk = 'Menu'; //Ваше название чанка
$params['startId'] = '0'; //Дополнительные параметры сниппета
$params['level'] = '4'; //Дополнительные параметры сниппета
$html = addslashes($modx->runSnippet('Wayfinder', $params));
$sql= "UPDATE " . $modx->getFullTableName("site_htmlsnippets") . " SET snippet='$html' WHERE name='$myChunk'";
$result= $modx->dbQuery($sql);

3. Поставьте событие OnDocFormSave + сохраните плагин.

4. Поменяйте ваш шаблон: замените вызов сниппета на чанк: [!Wayfinder?startId=0&level=4!] -> "testMenu"

Теперь, каждый раз, когда вы редактируете документ и сохраняете его, плагин срабатывает и сохраняет сниппет в чанк. Это немного ускорит сайт.

Таким способом, Вы можете кэшировать сниппет и дать PHP и MySQL перерыв на обработку кода.

]]>
Google+
]]>
Личные инструменты
Хочешь еще цитату? Программирование – это искусство. Совершенство достигается тогда, когда программа, выполняющая свою функцию, занимает всего несколько строк; когда одна программа может делать то, чего не может делать другая; когда одни программы могут проникать в другие; когда программа может манипулировать с файлами такими способами, которые раньше считались невозможными. Совершенные программы, отдельные приемы программирования, удачные алгоритмы могут быть предметом коллекционирования и почитания.Стивен Леви
веб-программирование
Просмотры
чтим

Deprecated: Function set_magic_quotes_runtime() is deprecated in /var/www/webproger/data/www/webproger.ru/1c6a72389c0fd92079ac7ae7cd356173/sape.php on line 218 Deprecated: Function set_magic_quotes_runtime() is deprecated in /var/www/webproger/data/www/webproger.ru/1c6a72389c0fd92079ac7ae7cd356173/sape.php on line 224

]]>
Rambler's Top100
]]>
]]>
]]>