LiveInternetMail.ru
Форум русской поддержки Joomla!® CMS
26.05.2012, 12:24:13 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
   
   Начало   Поиск Joomla 1.7 FAQ Joomla 1.5 FAQ Joomla 1.0 FAQ Правила форума Новости Joomla Войти Регистрация Помощь  
Страниц: [1]   Вниз
  Добавить закладку  |  Печать  
Автор Тема: Как работать с кешированием в модулях?  (Прочитано 1214 раз)
0 Пользователей и 2 Гостей смотрят эту тему.
temniy
Живу я здесь
******

Репутация: +80/-9
Offline Offline

Пол: Мужской
Сообщений: 873



« : 04.08.2010, 20:07:28 »

Коля, ну или если еще кто знает - расскажите, как использовать кеширование в модулях?
Джустина 1.3.0.3
Записан
boston
Moderator
*****

Репутация: +222/-3
Offline Offline

Пол: Мужской
Сообщений: 2699



« Ответ #1 : 05.08.2010, 14:18:25 »

Кешировать модуль целиком можно через простое добавление параметра в соответствующий XML файл этого модуля:
Код
<param type="cache_list" name="cache_time" label="Кэшировать" description="Выберите время на которое необходимо кэшировать данный модуль. По умолчанию используется время, указанное в глобальной конфигураци." />
Такой параметр добавляет в настройки модуля новый пункт - "Кешировать", с временем на которое собственно кешировать этот модуль.
Записан
temniy
Живу я здесь
******

Репутация: +80/-9
Offline Offline

Пол: Мужской
Сообщений: 873



« Ответ #2 : 05.08.2010, 19:59:05 »

Кешировать модуль целиком можно через простое добавление параметра в соответствующий XML файл этого модуля:
А в самом модуле ничего не надо?
Записан
temniy
Живу я здесь
******

Репутация: +80/-9
Offline Offline

Пол: Мужской
Сообщений: 873



« Ответ #3 : 06.08.2010, 20:39:12 »

Перефразирую - я в модуле сделал так -

Код:
$cache = mosCache::getCache('имя модуля');

$data = $cache->call('имя функции');

Вроде работает. Правильно?
Записан
Vladzimir
Давно я тут
****

Репутация: +22/-0
Offline Offline

Пол: Мужской
Сообщений: 334


В очередь! в очередь! День Сурка © М.Борзыкин


« Ответ #4 : 06.08.2010, 22:17:28 »

В модуле ничего дополнительно вызывать не надо. Кешем будет заниматься сама система.
Записан
danik.html
Практически профи
*******

Репутация: +305/-3
Offline Offline

Пол: Мужской
Сообщений: 2974



« Ответ #5 : 06.08.2010, 23:41:19 »

В модуле ничего дополнительно вызывать не надо. Кешем будет заниматься сама система.
Это в случае если нужно кешировать полностью результат вывода модуля. Иногда, это не допустимо, как скажем меню, в котором то появляются то скрываются дочерние пункты.
Вот тогда используется техника, описанная temniy, она позволяет закешировать результат какойнибудь ресурсозатратной функции, например, делающей выборку из бд, так что фишка полезная. Правда с joostina не работал, но аналогия видна)
Записан
boston
Moderator
*****

Репутация: +222/-3
Offline Offline

Пол: Мужской
Сообщений: 2699



« Ответ #6 : 30.08.2010, 19:34:14 »

danik.html всё правильно написал, если указать кеширование через настройки в XML - то модуль закешируется целиком. А если надо что-то конкртено внутри кода модуля - то вариант предложенный temniy
Записан
Страниц: [1]   Вверх
  Добавить закладку  |  Печать  
 
Перейти в:  

Рейтинг@Mail.ru Rambler Top100 Powered by SMF 1.1.16 | SMF © 2006, Simple Machines

Joomlaforum.ru is not affiliated with or endorsed by the Joomla! Project or Open Source Matters.
The Joomla! name and logo is used under a limited license granted by Open Source Matters
the trademark holder in the United States and other countries.

LiveInternet