СправошнаяПоиск

EXT:news: Очистка кеша после изменения записей новостей

Новости имеют встроенный механизм, который заботится об очистке кеша после манипулирования записями новостей.

Когда на странице отображается список или подробное представление, tx_news_pid_PIDдобавляется тег кеша в формате (где PID — это uid папки хранилища новостей). Каждый раз, когда запись новостей редактируется, удаляется или создается, эта запись кэша сбрасывается. Никакой дополнительной настройки кеша не требуется, если используются только новостные плагины.

Если вы используете другие способы отображения записей новостей (например, RSS-канал, созданный TypoScript на странице без плагина новостей), кэш не очищается автоматически.

Это можно сделать автоматически с помощью этой команды в PageTsConfig: :

страница TSconfig

 

TCEMAIN.clearCacheCmd = 123,456,789

 

Код нужно добавить в папку sys, где редактируются записи новостей. Измените идентификаторы страниц примера на те, которые следует очистить, например, страницу с RSS-каналом. Ты можешь использовать:

страница TSconfig

 

TCEMAIN.clearCacheCmd = pages

 

чтобы также очистить полные кеши:

страница TSconfig

 

TCEMAIN.clearCacheCmd = cacheTag:tx_news

 

чтобы очистить все кэши страниц, на которых используются плагины новостей, но остерегайтесь проблем с производительностью, когда записи новостей часто редактируются.

Намекать

Упомянутые настройки TCEMAIN являются частью ядра TYPO3 и поэтому могут использоваться не только для новостного расширения.

Время жизни кеша и автоматическая публикация (путем установки даты начала)

По умолчанию кэш страниц TYPO3 становится недействительным каждые 24 часа. Если вы установите конкретную дату и время для публикации записи новости на вкладке «Доступ»:

../../../_images/NewsRecordAccess.png

Эта новость должна быть опубликована в определенную дату, 12:00

Новость будет опубликована в следующий раз, когда кеш будет удален, что обычно происходит после полуночи.

Когда вы используете поле «Дата публикации», вы можете использовать следующую конфигурацию установки TypoScript: config.cache

Предположим, что у вас есть новостной плагин на странице 42 и вы храните свои записи новостей в системной папке с uid 27, тогда следующая настройка будет учитывать дату публикации ваших записей новостей при расчете времени истечения срока действия кеша:

EXT:my_sitepackage/Configuration/TypoScript/setup.typoscript

 

config.cache.42 = tx_news_domain_model_news:27

 

Если существует более одной страницы, содержащей новостной плагин, который может отображать новости, вам необходимо выполнить настройку для каждой страницы:

EXT:my_sitepackage/Configuration/TypoScript/setup.typoscript

 

config.cache {
   42 = tx_news_domain_model_news:27
   43 = tx_news_domain_model_news:27
   365 = tx_news_domain_model_news:27
}

 

Если вы используете новостной плагин на каждой странице, также можно определить очистку кеша для всех страниц:

EXT:my_sitepackage/Configuration/TypoScript/setup.typoscript

 

config.cache.all = tx_news_domain_model_news:27

 

Вы также можете определить серверные таблицы для одной страницы, например, чтобы включить категории:

EXT:my_sitepackage/Configuration/TypoScript/setup.typoscript

 

config.cache.42 = tx_news_domain_model_news:27,sys_category:26