sma*_*chy 2 wordpress transient
我想编写更新查询来过期瞬态。我将在 wordpress 选项表中将他们的时间更新为 1。
我有以名称开头的瞬态,re_compare
并在参数更改后休息。
我的更新查询是
$wpdb->update(
'options',
array(
'option_value' => '1', // string
),
array( 'option_name' => '%re_compare%' )
);
Run Code Online (Sandbox Code Playgroud)
它不工作。基本上我想删除/过期已经存在的瞬变。
但是如果我从选项表中删除瞬态,它们仍然显示在瞬态管理器插件中。所以想将它们的过期时间设置为 1 秒。
不建议通过普通 SQL 从选项表中删除或修改瞬态。为什么?因为数据库实际上是存储瞬态的默认回退位置,而不是主要位置。如果有任何对象缓存可用,瞬态存储在那里,而不是在数据库中。因此,在您的情况下,情况很可能是这样 - 您正在从选项表中删除它们,但它们实际上是从对象缓存中读取的。
通常,您不必担心瞬变过期。WordPress 有一个垃圾收集器,可以自动清除它们。
如果瞬态中的数据变得陈旧并且您需要在它到期之前更新它,请使用 API 函数:
delete_transient( 'your_transient_name' );
Run Code Online (Sandbox Code Playgroud)
另请注意,过期时间是瞬态可以存活的最长时间。在那段时间之后,它将永远不会返回存储的值。但是,由于对象缓存逐出、数据库升级等原因,它可能在到期时间之前不可用。
所以,简而言之:
处理瞬态的经验法则是:
归档时间: |
|
查看次数: |
785 次 |
最近记录: |