使用七牛、阿里云的oss对静态资源加速
目前在wordpress网站维护上,有不少的朋友选择将网站的静态资源,如图片、css、js等放入CDN进行加速处理,那么如果我们已经设置好了cdn的一些数据,并已经同步好了本地数据,那么我们如何调用cdn的数据呢?
一般来说,我们使用集中方式来调用,一种是使用插件,比如七牛就有专门适配的wordpress插件进行操作,如果你在使用静态化插件WP Super Cache ,那么你也可以使用这个插件的CDN功能对url进行替换,从而达到加速的效果。
如果你不想要使用插件,那么下面我们就来介绍一些代码,教你如何对网站的本地资源url替换为CDN资源的url。
使用代码将wordpress本地资源替换为CND资源
将文章附件图片url替换为cdn资源,这里指的是,文章内插入的本地图片、本地附件以及设置的特色图片,加入以下代码之后,所有url均会更改为你的CNDurl:
注意替换掉你的cdn的链接,这个cdn链接将会替换你的本地url:
define('CDN_HOST','http://你的CDN链接'); add_filter('the_content','z_cdn_content'); function z_cdn_content($content){ return str_replace(home_url().'/wp-content/uploads', CDN_HOST.'/wp-content/uploads', $content); } add_filter('wp_get_attachment_url','z_get_attachment_url',10,2); function z_get_attachment_url($url, $post_id){ return str_replace(home_url(), CDN_HOST, $url); }
加入上面的代码之后,你插入文章内的图片和其他附件以及特色图片都会被替换为cdn的url了,这样也就达到了加速的效果。
如果你想要将主题的css、图片以及js等静态资源替换为CDN 的url进行加速,那么可以使用以下代码:
define('CDN_HOST','http://你的CDN链接'); add_filter('stylesheet_directory_uri','z_cdn_stylesheet_directory_uri',10,3); function z_cdn_stylesheet_directory_uri($stylesheet_dir_uri, $stylesheet, $theme_root_uri) { return str_replace(home_url(), CDN_HOST, $stylesheet_dir_uri); } add_filter('template_directory_uri','z_cdn_template_directory_uri',10,3); function z_cdn_template_directory_uri($template_dir_uri, $template, $theme_root_uri) { return str_replace(home_url(), CDN_HOST, $template_dir_uri); }
将代码放入主题的function.php中即可实现了(WEB主题公园的付费主题用户请放入function/function_z.php或者widget.php中即可)
文章评论