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

WordPress предлагает Кэширование интуитивно понятный через переходные процессы "(Перепады или английский), которые позволяют это сделать, а именно хранить данные временный со сроком годности. Мы собираемся использовать переходные процессы, поэтому я подумал, почему бы не взглянуть по-новому на этот WordPress API?

Согласно WordPress Codex:

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

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

В этом руководстве мы исследуем концепцию Transient API (Перепады) на WordPress и чем он отличается от Options API.

Переходные API

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

Но возникает вопрос: Время истечения срока действия - единственное преимущество «переходных»?

Ответ - нет ! Несмотря на то, что API опций служит той же цели хранения, очистки и поиска данных, он не может обеспечить наилучшую возможную производительность с большим набором данных.

С добавлением истечения срока действия переходные процессы становятся более подходящими для временного хранения данных. Чтобы обеспечить меньшее количество веб-запросов, транзиенты имеют возможность хранить данные в быстрой памяти, например Memcached, вместо традиционной базы данных WordPress. Также следует отметить, что переходные процессы по своей природе ускоряются Кэширование плагины, где классических вариантов нет. Как указано в кодексе:

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

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

Использование «переходных процессов»

Переходные процессы работают с очень простым интерфейсом. Вы можете выполнять три основных функции с этими:

  • Создать / обновить данные с помощью функции « set_transient »
  • Восстановите данные с помощью функции « get_transient »
  • Удалить переходные процессы с помощью функции " delete_tansient »

Эти три основные операции могут помочь вам повысить производительность приложения.

1 - Создание / обновление переходного процесса

Используйте функцию  set_transient () создать или обновить шип. Эта функция принимает три параметра:

  • Ключ: (введите строку) Имя переходного процесса. Должно быть не более 172 символов.
  • Значение: (смешанный тип) Это данные, которые следует сохранить. Может быть, переменная PHP или объект массива.
  • Срок действия: (тип int) время жизни в секундах. По умолчанию 0 (без срока годности).

Вывод: установленная вами дата истечения срока - это период, в течение которого переходный процесс будет храниться. По истечении этого срока переходный процесс удаляется. Но переходный процесс также может быть удален до этой даты.

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

Итак, скажите себе, что время истечения - это предел, который никогда не пройдет через переходный период.

<?php set_transient( string $transient, mixed $value, int $expiration ) ?>

Первые два параметра являются парой ключ - значение И являются обязательными, в то время как третий параметр, который устанавливает максимальное время истечения, является необязательным.

Вот практический пример:


Постоянное время в переходном

В приведенном выше примере яai устанавливает 60 секунд для третьего параметра, который устанавливает время ожидания, по истечении которого переходный процесс должен быть удален. Согласно приведенному выше примеру, объект _welcome_redirect_wpw  не может превышать 60 секунд жизни.

В WordPress 3.5 было введено несколько констант, чтобы легко выразить время. Эти константы делают код более полным и точным. Вот список:

MINUTE_IN_SECONDS = 60 (секунд) HOUR_IN_SECONDS = 60 * MINUTE_IN_SECONDS DAY_IN_SECONDS = 24 * HOUR_IN_SECONDS WEEK_IN_SECONDS = 7 * DAY_IN_SECONDS YEAR_IN_SECONDS_IN = 365SEC DAY_IN = XNUMXSECONDS

2 - Восстановление переходного процесса

После сохранения значения через функцию  set_transient ()вы можете получить значение, вызвав функцию  get_transient ().

Он принимает единственный параметр, ключ переходного процесса $ transient, и возвращает (смешанный тип) Значение переходного процесса.

Стандартный формат выглядит следующим образом:


В нашем примере значение извлекается через:


Достаточно просто? Но что произойдет, если переходный процесс не существует или истек? Если это так, то функция  get_transient () возвращает неправильное значение.

Я рекомендую вам использовать оператор идентификации (===), когда вы манипулируете извлечением значений переходного процесса.

3 - Удаление переходного процесса

Могут возникнуть ситуации, когда вы захотите удалить переходные процессы до их истечения. Функция delete_transient () ты поможешь. Его формат похож на функцию get_transient ().

Он принимает единственный параметр, ключ переходного процесса $ transient, и удаляет переходный процесс навсегда.

Вот общий формат:


В нашем случае, мы можем удалить его, как это:


Пользы транзиентов

Переходные процессы могут быть использованы для кэширования чего-либо (Основные данные для полного виджета). С момента их запуска переходные процессы использовались в различных веб-проектах. Вот некоторые практические применения переходных процессов:

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

Вот именно для этого урока. Я надеюсь, что теперь вы знаете, как использовать Transient API на WordPress.