【即将关站通知●已关闭注册功能】,倒计时剩余:计算中...

分享几个 WordPress有关七牛云和评论邮件的实用代码


年前明月登楼就已经将手里的三个博客站都开启了七牛云,并在年后启用本地缓存神器插件 WP-Rocket ,至此我的 CDN 加速方案: WordPress 本地缓存+七牛云静态存储+七牛云融合 CDN (只针对静态存储空间)算是告一段落了。

本着“生命不止、折腾不息”的宗旨,又利用七牛云存储缓存了 Gravatar 头像,解决了 Gravatar 被“墙”后总是拖慢 WordPress 的问题。


为了更有效率的使用七牛云,一口气注册并实名认证了三个七牛账户,根据不同博客站和需求来分别使用,并且都绑定了自定义域名,现在无论是头像、文章图片、缩略图调用都已部署成自由的二级域名,感觉逼格提升了不少,嘿嘿!

1、 WordPress 首页、文章列表缩略图调用七牛图片。

其实这段代码利用缓存插件 WP Super Cache 和 W3 Total Cache 里面的 CDN 支持就可以实现的,但是这两个插件严重拖慢了 WordPress 后台载入速度,明月也是不得不放弃,还好有 WP-Rocket 这个神器来替换,但是 WP-Rocket 对七牛云的支持就简单的多了,无法实现缩略图调用七牛图片,所以才找到了这段代码,昨晚我的博客已经率先使用上了,目前本博已经通过下面的代码实现了WordPress 首页、文章列表缩略图调用七牛图片,再次减轻了主机负载。


function QiNiuCDN(){
    function Rewrite_URI($html){
        /* 前面是需要用到七牛的域名也就是博客网站的域名,后面是需要加速的静态文件类型,使用分隔符 | 隔开即可 */
        $pattern = '/http:\/\/(blog\.|)ymanz\.com\/wp-content\/uploads([^"\']*?)\.(js|css|jpg|gif|png|jpeg|bmp|webp|svg|tiff|webm|mp3|mp4|3gp|mov|ico)/i';
        /* 七牛CDN空间地址,请自行替换成实际空间地址或者空间绑定的自定义域名 */ 
        $replacement = 'http://空间地址或者空间绑定的自定义域名/wp-content/uploads$2.$3';
        $html = preg_replace($pattern, $replacement, $html);
        return $html;
    }
    if(!is_admin()){
        ob_start("Rewrite_URI");
    }
}
add_action('init', 'QiNiuCDN');


上述代码的实现可能会消耗一定的七牛云空间以及融合 CDN 流量,如果你的博客网站流量已经多到收费了,那就不建议你采用了,免费情况下还是可以玩玩的,提升装逼逼格!


2、文章内调用七牛图片默认尺寸属性。

这段代码比较适合高清图片多的场景,一篇文章内高清、高分辨率图片多的时候会严重影响网页载入效率的,可以借助下面的代码设定一个默认的小尺寸的图片来加快网页载入时间,再配合 WordPress 的图片暗箱功能(就是点击图片看原图)方便用户快速查看原图片(这里需要在编辑文章插入图片时将图片链接到“媒体(图片)文件”的)来变相的实现速度优化,还可以减小一些无谓的七牛云流量消耗。目前,明月登楼和其他人都在使用这段代码,效果很明显。

//设置调用七牛图片默认尺寸属性
add_filter('the_content', 'removeimg_size');
function removeimg_size($content) {
    global $post;
    //去掉srcset属性
    $content = preg_replace("/srcset=('|\")(.*?)('|\")/i", '', $content);
    //设置图片默认尺寸,下面一行的400即为图片宽高,可以根据情况自己调整
    $content = preg_replace('/<img(.*?)width="(.*?)" height="(.*?)"(.*?)>/i', '<img$1width="400" height="400"$4>', $content);
    return $content;
}


使用这段代码,大家不用担心图片被裁剪的有缺失,因为默认都是居中裁剪的,所以几乎没有影响的,并且我还发现在手机移动端载入速度也提升不少,图片小了嘛。



3、替换 WordPress 头像地址为七牛云空间缓存Gravatar的头像地址。


//缓存Gravatar 头像到七牛云存储,WordPress 4.0+ 适用
function qiniu_avatar($avatar) {
  $avatar = preg_replace('/.*\/avatar\/(.*)\?s=([\d]+)&.*.srcset=.*/','<img src="http://你的七牛域名或者绑定的自定义域名/avatar/$1-$2" class="avatar avatar-$2" height="$2" width="$2">',$avatar);
  return $avatar;
}
add_filter( 'get_avatar', 'qiniu_avatar', 10, 3 );




4、评论审核通过后邮件通知评论者

add_action('comment_unapproved_to_approved', 'ludou_comment_approved');
function ludou_comment_approved($comment) {
  if(is_email($comment->comment_author_email)) {
    $post_link = get_permalink($comment->comment_post_ID);
    // 邮件标题,可自行更改
    $title = '您在 [明月登楼博客] 的评论已通过审核';
    // 邮件内容,按需更改。如果不懂改,可以给我留言
    $body = '您在明月登楼博客《<a href="'.$post_link.'">'.get_the_title($comment->comment_post_ID).'</a>》发表的评论:<br />
            '.$comment->comment_content.'<br /><br />
            已通过管理员审核并显示。<br />
            您可在此查看您的评论:<a href="'.get_comment_link( $comment->comment_ID ).'">前往查看</a>';
    @wp_mail($comment->comment_author_email, $title, $body, "Content-Type: text/html; charset=UTF-8");
  }
}


上述代码大家记得要修改一下提示内容为自己博客的哦,明月个人感觉这是一个很贴心的评论邮件提醒,需要审核的评论还是不少的,审核后通知评论者,其实就是在拉回头客。
最后分享一个(我爱水煮鱼)的“防止 WordPress 遭受恶意 URL 请求”的代码:


//防止 WordPress 遭受恶意 URL 请求。From:http://blog.wpjam.com/m/block-bad-queries/  
if(strlen($_SERVER['REQUEST_URI']) > 384 ||  
    strpos($_SERVER['REQUEST_URI'], "eval(") ||  
    strpos($_SERVER['REQUEST_URI'], "base64")) {  
        @header("HTTP/1.1 414 Request-URI Too Long");  
        @header("Status: 414 Request-URI Too Long");  
        @header("Connection: Close");  
        @exit;  
}  


分享的代码都是需要放在主题function.php里,本文到此结束!

收藏 邀请

路过

雷人

握手

鲜花

鸡蛋


最新评论

在线支持
关闭
欢迎来到魔趣吧
如果你有建站技术问题、仿站需求、模板插件修改需求,请联系我们的技术支持!高效率,低价格的帮你搞定!
请认准魔趣吧唯一官网:www.moqu8.com,谨防假冒网站!

一般问题请到【求助区】发帖咨询(免费)!

邮箱咨询:
winkill2012@qq.com

邮箱咨询需注明:资源地址+本站用户名+具体问题,三者缺一不做处理。非本站资源不处理!
在线支持

关于魔趣吧|魔趣建站

魔趣吧,志在打造全国最大的建站资源共享平台。 本站提供海量免费的建站资源,包括WordPress模板、Discuz精仿模板、PHPWind模板、phpcms模板、Discuz精仿插件、帝国cms模板、织梦模板等上万精品模板!同时,提供各种建站素材、JS特效、整站程序源码!
服务中文站长,传播分享精神!建站,就来魔趣吧!!
2015-2024 魔趣吧 ( 豫ICP备2021024354号 )   豫公网安备41030402000182号 百度统计
HTTPS安全认证
|网站地图 | 已运行:天 
温馨提示:本站所有资源、教程、源码,不得用于非法站点及用途,否则,本站将终止提供任何服务! Powered by Discuz! Licensed