【问题标题】:PHP Wordpress Cache XML VariablePHP Wordpress 缓存 XML 变量
【发布时间】:2011-09-16 23:42:35
【问题描述】:

我目前正在将一个 XML HTTP 请求加载到一个数组中,然后将其缓存,尽管有时我从中提取数据的站点不是最可靠的,并且我返回空白页或没有填写所有内容。我认为解决此问题的一种方法是确保数组中的数据量相同或更多,然后将其缓存一个小时。现在这是我的问题,当它数组没有数据时,我没有以前的缓存,给我一个缓存变量错误。我知道我是否理解缓存吗?我可以缓存变量并仅在给定特定条件时才覆盖吗?任何帮助都会很棒。我的想法是将数据存储在mysql中,如果变量没有通过则查询它。
if ( $checksize>=8 ){ weather_result = wp_cache_get( 'my_result' );
if ( false == $weather_result ) { $weather_result= $insert_array; wp_cache_add( 'weather_cache', $weather_result,$flag = '',$expire = 0); } }

现在 checksize 只是一个数组,用于计算数组中元素的数量。我只想在它拥有所有信息时更新它。

【问题讨论】:

  • 你可以缓存任何你想要的东西。如果你这样做了,你可以对缓存做任何你想做的事情。但是你应该保持缓存非常简单。
  • 对,但是当我以 if ( $checksize>=8 ) { $weather_result = wp_cache_get( 'my_result' ); 运行代码时如果 ( 假 == $weather_result ) { $weather_result= $insert_array; wp_cache_add('weather_cache', $weather_result,$flag = '',$expire = 3600); } } 然后如果它缓存一次,但下次你去该站点时,如果它不大于我需要的量,它应该从以前的缓存中运行
  • Dan,请添加该代码并对您的问题发表评论。

标签: php xml wordpress caching


【解决方案1】:

WordPress 有一个用于在数据库中缓存的 API,即临时 API。它易于使用,您可以要求 vars,已缓存。

$tag_cloud = get_transient( 'tag_cloud' );
if ( false === $tag_cloud || '' === $tag_cloud ){
    $args = array('echo' => false);
    $tag_cloud = wp_tag_cloud( $args );
    set_transient( 'tag_cloud', $tag_cloud, 60*60*12 );
}
echo $tag_cloud;

另请参阅 postcodex

【讨论】:

  • 对,但是有了这个变量,我只想在满足条件时重新缓存,但如果不满足,则保留以前的缓存。这行得通吗
猜你喜欢
  • 1970-01-01
  • 2013-08-31
  • 2011-08-05
  • 2015-04-15
  • 1970-01-01
  • 2014-03-24
  • 2018-12-14
  • 2013-11-12
相关资源
最近更新 更多