是否获取已保存的瞬变的超时值?

时间:2012-05-02 作者:Adam Christianson

有人知道是否有Wordpress函数可以获取保存瞬态的超时值吗?我正在使用一个具有5分钟超时的瞬态来缓存来自本地web API调用的数据。在瞬态超时之间,我从瞬态本地加载数据,作为缓存和辅助API节流阀。我想做的是读取并显示当前保存的瞬态数据的超时值,以便用户知道在下次数据刷新之前需要等待多长时间。该值以“\\u transient\\u timeout\\u transient-name”的形式存储在“wp\\u options”表中,因此我假设可以使用全局$wpdb对象,只需执行SQL查询,但我想确保没有更优雅的方法。

1 个回复
最合适的回答,由SO网友:fischi 整理而成

因此,经过一分钟的思考,有一个简单的解决方案,尽管我自己没有尝试:

$transient = \'_transient_timeout_\' . $_your_transient_name;
$transient_timeout = get_option ( $transient );
你应该做好准备。

通过数据库的另一种方式是:

$transient = \'_transient_timeout_\' . $_your_transient_name;

global $wpdb;

$query = \'SELECT option_value FROM \' . $wpdb->prefix . \'options WHERE option_name = \' . $transient;

$transient_timeout = $wpdb->get_var( $wpdb->prepare( $query ) );
返回的值是一个时间戳,但我相信您知道如何从这里处理它。

结束