Main menu

Отключаем кеширование K2 для зарегистрированных пользователей

Yazov Rating Yazov Rating Yazov Rating Yazov Rating Yazov Rating Рейтинг 4.92 (73 Голосов)
Если у вас на сайте большое кол-во контента и вообще у сайта сложная структура с большим количеством посетителей, то скорее всего вы используете кеширование на сайте. Но если вы используете K2 и разрешаете пользователям сайта добавлять или редактировать материалы? В таком случае материалы будут появляться на сайте и обновляться по окончании жизни кеша, а это зачастую немалый период времени. Приходится отключать кеширование, что приводит к медленной работе сайта и большой нагрузки на сервер. Однако компромисс есть - отключение кеширования в компоненте K2 только для зарегистрированных пользователей... Для того, чтобы отключить кеширование только в компоненте K2 и только для авторизованных пользователей нам нужно в файле /components/com_k2/controllers/item.php изменить параметры кеширования для различных групп. В данном случае нам нужно в районе 30-ой строки найти отрезок кода:
if ($user->guest)
 { $cache = true;
 }
 else
 { $cache = true;
} 
И заменяем его на следующий
if ($user->guest)
{
$cache = true;
{
 else
{
$cache = false;
} 
Данная поправка будет делать следующее: не авторизованному пользователю будет отдаваться страница из кеша, а авторизованному - некешированная страница.
ru-teamviewer.ru

Follow me on TwitterЯ ВКонтакте