WordPress性能优化设置个性头像缓存

    大家也都知道缓存这个东西,可以很好的提高网站的速度,当访客在次访问网站的时候会直接调用缓存,wordpress网站缓存可以使用插件来实现,今天小编(www.cco5.com)给大家在介绍一个头像设置缓存的方法,开启评论的博客可以使用,特别是对那些使用Gravatar头像的用户,大大节省加载头像的时间,虽然一个头像的图片也不算大,但是如果每一页的评论显示多的情况下加载的时间也蛮多的。
    首先使用FTP工具登录php虚拟主机在wp-content文件夹下建立一个avatar文件夹然后将下列的代码加入到当前使用主题的函数文件functions.php里。
  1. function my_avatar( $email, $size = '32', $default = '', $alt = '') {

  2.   $f = md5( strtolower( $email ) );

  3.   $a = WP_CONTENT_URL . '/avatar/'. $f . $size . '.png';

  4.   $e = WP_CONTENT_DIR . '/avatar/' . $f . $size . '.png';

  5.   $d = WP_CONTENT_DIR . '/avatar/' . $f . '-d.png';

  6.   if($default=='')

  7.     $default = 'http://www.cco5.com/default.jpg';

  8.   $t = 2592000; // 缓存有效期30天, 这里单位:秒

  9.   if ( !is_file($e) || (time() - filemtime($e)) > $t ) {

  10.     if ( !is_file($d) || (time() - filemtime($e)) > $t ) {

  11.       // 验证是否有头像

  12.       $uri = 'http://www.cco5.com/avatar/' . $f . '?d=404';

  13.       $headers = @get_headers($uri);

  14.       if (!preg_match("|200|", $headers[0])) {

  15.         // 没有头像,则新建一个空白文件作为标记

  16.         $handle = fopen($d, 'w');

  17.         fclose($handle);

  18.         $a = $default;

  19.       }

  20.       else {

  21.         // 有头像且不存在则更新

  22.         $r = get_option('avatar_rating');

  23.         $g = 'http://www.cco5.com/avatar/'. $f. '?s='. $size. '&r=' . $r;

  24.         copy($g, $e);

  25.       }

  26.     }

  27.     else {

  28.       $a = $default;

  29.     }

  30.   }

  31.   $avatar = "{$alt}";

  32.   return apply_filters('my_avatar', $avatar, $email, $size, $default, $alt);

  33. }
复制代码
代码的第7行修改成默认的头像地址,使用Gravatar头像的需要把functions.php里的
  1. get_avatar( $comment
复制代码
修改成
  1. my_avatar( $comment->comment_author_email
复制代码
修改完成后把函数文件functions.php保存上传回空间就可以开启头像缓存了,这段代码的缓存时间是30天如果觉得久可以在代码的第十行进行修改。
本文地址:http://www.cco5.com/touxiang/nansheng/20122001.html

你可能感兴趣的:(WordPress性能优化设置个性头像缓存)