这里不是说的的使用缓存插件之类的东西,是关于如何利用wordpress自带的缓存体系。很多时候,比如输出最新评论、相关文章、读者墙等地方, 基本是不需要实时更新的,然而每次打开页面就会去数据库里查询一次
用静态化当然可以解决这些问题,不过对于流量不大的博客就没必要了。 wordpress自带有缓存体系,关键的函数你可以在wp-includes/cache.php或 Codex里查找到所有的函数。
你可以使用下列函数来实现添加缓存。
wp_cache_add($key, $data, $flag = ”, $expire = 0)
相反的,要删除缓存数据可以通过下面的方法实现。
wp_cache_delete($id, $flag = ”)
提取缓存数据:
wp_cache_get($id, $flag = ”)
替换缓存数据:
wp_cache_replace($key, $data, $flag = ”, $expire = 0)
举个例子,如果想输出最新评论,可以先从缓存里读取需要输出的HTML,如果没有,请求一次,成功后加入缓存,当然时间可以控制。
我知道有很多最新评论,相关文章免插件输出的方法,原理都一样,可以自行改改,贴个我用的:
config.php里面添加
define(‘WP_CACHE’, true);
如果你用了其它缓存插件,基本上这个就没效果了。因为这些插件有类似的方法。
/**
* get recent comments
* @param unknown_type $args
* @return unknown_type
*/
function DeamworkRecentcomments($args=’number=5&status=approve’){
$cacheID = md5($args);
//有缓存就直接输出
if($output = wp_cache_get(‘recentComments_’.$cacheID, ‘Winysky’)){
echo $output;
return;
}
//$rcms = get_comments($args);
global $wpdb;
$my_email = “‘” . get_bloginfo (‘admin_email’) . “‘”;
//自动获取博主邮箱
$rcms = $wpdb->get_results(“
SELECT ID, post_title, comment_ID, comment_author, comment_author_email, comment_content
FROM $wpdb->comments LEFT OUTER JOIN $wpdb->posts
ON ($wpdb->comments.comment_post_ID = $wpdb->posts.ID)
WHERE comment_approved = ‘1’
AND comment_type = ”
AND post_password = ”
AND comment_author_email != $my_email
ORDER BY comment_date_gmt
DESC LIMIT 10
“);
//print_r($rcms);return;
if(empty($rcms)){
_e(‘没有数据’);
return;
}
//历遍数据
$output = ”;
foreach( $rcms as $rcm ){
$author = $rcm->comment_author;
//if($author ==’admin’){continue;}
$content = DeamworkStriptags( $rcm->comment_content);
$the_title = get_the_title($rcm->comment_post_ID);
$s_excerpt = convert_smilies( DeamworkSubstr( $content, 200 ) );
$contents = ‘ on ‘ . $the_title . ‘
‘;
$output .= ‘
-
免费下载或者VIP会员资源能否直接商用?本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
-
免费下载或者VIP会员资源能否直接商用?本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
-
免费下载或者VIP会员资源能否直接商用?本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
-
免费下载或者VIP会员资源能否直接商用?本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
-
提示下载完但解压或打开不了?最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,若小于网盘提示的容量则是这个原因。这是浏览器下载的bug,建议用百度网盘软件或迅雷下载。 若排除这种情况,可在对应资源底部留言,或联络我们。
-
找不到素材资源介绍文章里的示例图片?对于会员专享、整站源码、程序插件、网站模板、网页模版等类型的素材,文章内用于介绍的图片通常并不包含在对应可供下载素材包内。这些相关商业图片需另外购买,且本站不负责(也没有办法)找到出处。 同样地一些字体文件也是这种情况,但部分素材会在素材包内有一份字体下载链接清单。
-
付款后无法显示下载地址或者无法查看内容?如果您已经成功付款但是网站没有弹出成功提示,请联系站长提供付款信息为您处理
-
购买该资源后,可以退款吗?源码素材属于虚拟商品,具有可复制性,可传播性,一旦授予,不接受任何形式的退款、换货要求。请您在购买获取之前确认好 是您所需要的资源

评论(0)