tommiforsstrm
  • 0
Новичок

На какие хуки цепляться для автоматической очистки кеша

  • 0

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

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

Итак, я немного запутался во всех хуках/фильтрах WordPress. Я могу достаточно легко добавлять слушателей к хукам, но я слишком перегружен количеством доступных хуков, поэтому мой вопрос:

Какие хуки я должен подключить, чтобы иметь возможность выполнять скрипт при каждой операции INSERT/UPDATE/DELETE в таблице сообщений?

Любые указатели на пути вперед очень ценятся!

Share
  1. Подключение к каждому отдельному запросу, вероятно, было бы огромной тратой ресурсов. Не могли бы вы более четко указать, что именно вы хотите запустить очистку кеша?

    • 0
  2. Хотя я понимаю, что на самом деле это не ответ на ваш вопрос, это может вдохновить вас на то, как это сделал кто-то другой: Очистить общий кэш W3C

    • 0
  3. Я хочу, чтобы кеш очищался только при обновлении, удалении или добавлении сообщений.

    Не нужно возиться с SQL для этого. В WordPress есть динамические (сформированные из переменных, а не жестко запрограммированные) хуки для изменения статуса записи. См. раздел «Переходы статуса сообщения» в Кодексе.

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

    • 0
  4. Я написал пост в своем блоге, который напрямую отвечает на эту тему. В моем посте подробно рассказывается, как установить код, как использовать код и что он делает.

    Если вы прочтете мой пост в блоге, вы сможете легко автоматически очищать кеши с помощью хука действия WordPress: save_post из плагина WordPress: W3 Total Cache.

    Автоматически очищайте все кеши с помощью W3 Total Cache

    У вас есть следующие варианты того, какие кеши очищать при хуке действия WordPress save_post:

    $this->clear_db_caches();
        Calls the W3TC function: w3tc_dbcache_flush();
        Clears the DB caches completely. Note: Doesn’t clear MySQL Query Cache, just WP based DB caches.
    $this->clear_minify_caches();
        Calls the W3TC function: w3tc_minify_flush();
        Clears the minified content caches completely.
    $this->clear_object_caches();
        Calls the W3TC function: w3tc_objectcache_flush();
        Clears the object caches completely.
    $this->clear_page_caches();
        Calls the W3TC function: w3tc_pgcache_flush();
        Clears the Page Cache completely.
    $this->clear_all_caches();
        Calls each of the W3TC functions in one instance.
        Attempts to clear all W3TC caches completely.
    
    • 0

Оставить ответ

You must login to add an answer.