如何使用WordPress瞬态API

  • A+
所属分类:WordPress技巧

在使用 WordPress 构建 Web 应用程序时,其强大的 API 使其变得更加容易。 添加或恢复 数据 使用选项 API 并不复杂。 但有时我们需要存储 数据 临时有有效期

WordPress 提供了一个 高速缓存 通过直观 瞬变 “(暂态或英语)允许这样做,即存储 数据 临时的,有有效期的。 我们将使用瞬态,所以我想为什么不重新审视一下这个 WordPress API?

据WordPress的食品:

Transients API与Options API非常相似,但是具有到期时间的附加功能,该功能简化了使用wp_options数据库表临时存储缓存的信息的过程。 。

在本系列中,当用户通过存储临时数据激活插件时,瞬变是将用户重定向到主页的有效方法。

在本教程中,我们将探讨Transient API的概念(瞬变),以及它与Options API的区别。

瞬态API

瞬态提供了一种通过提供自定义名称来临时存储缓存信息的方法(键值对)和到期时间。 一旦设定的时限结束,瞬变将终止并被消除。 这些瞬变可提高性能并加快Web应用程序的整体性能。

但是,一个问题出现了: 到期时间是“瞬态”的唯一优势吗?

答案是不 ! 尽管选项API达到了数据存储,卫生和检索的相同目的,但是对于大型数据集,它无法提供最佳的性能。

添加过期后,瞬态变得更适合临时存储数据。 为了确保更少的网络请求,transients 有能力将数据存储在快速内存中,例如 Memcached,而不是传统的 WordPress 数据库。 另外值得注意的是,瞬变本质上是由 高速缓存 插件,经典选项没有。 如法典中所述:

例如,Memcached插件会将WordPress瞬态值存储在快速内存中,而不是数据库中。 因此,应使用瞬态来存储应过期或随时可能过期的数据。 也不应期望瞬态出现在数据库中,因为它们可以保存在其他位置。

如何使用WordPress瞬态API

因此,每当您需要过期或在特定时间后删除的功能时,请使用瞬变代替选项。

使用“瞬态”

瞬态通过非常简单的界面工作。 您可以执行以下三个基本功能:

  • 使用功能«创建/更新数据 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上,引入了几个常量来轻松表达时间。 这些常量使代码更加完整和准确。 这是清单:

如何使用WordPress瞬态API
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

2-瞬态恢复

通过函数保存值后  set_transient()您可以通过调用函数来检索值  get_transient().

它使用一个参数,即瞬态$瞬态的键,并返回(混合型)瞬态的值。

标准格式如下:

在我们的示例中,该值是通过以下方式检索的:

很简单? 但是,如果瞬态不存在或已过期,将会发生什么? 如果是这种情况,则该函数  get_transient() 返回不正确的值。

我建议您在操纵瞬态值的检索时使用标识运算符(===)。

3-去除瞬变

在某些情况下,您可能希望在瞬变终止之前将其删除。 功能 delete_transient() 你会帮助。 它的格式类似于功能 get_transient().

它采用单个参数(瞬态$瞬态的键),并永久删除瞬态。

这是常规格式:

在我们的例子中,我们可以像这样删除它:

瞬变的用途

瞬变可用于缓存某些内容(基本数据到完整的小部件)。 自启动以来,瞬态已在不同的Web项目中使用。 以下是瞬态的一些实际用途:

  • 您可以在插件的主页上使用它们。
  • 您可以在列出最佳评论数据的侧边栏小部件中使用它们。
  • 您可以通过瞬变加快WordPress导航菜单。
  • 您可以缓存带有瞬变的标签。

本教程就是这样。 希望您现在知道如何在WordPress上使用Transient API。

  • 我的微信
  • 这是我的微信扫一扫
  • weinxin
  • 我的微信公众号
  • 我的微信公众号扫一扫
  • weinxin