wordpress开启cdn加速后,替换URL
因为近期换了新的主题,该主题强大之处在于很多功能都写在了主题本身的文件中了,不需要依靠插件来完成,同样的,我就卸载了WPJAM Basic插件。那么关于CDN加速这个功能就需要修改function.php文件来实现了。 首先,基于《 整合 WordPress 与七牛云存储 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); } 剩余 4 行代码 展开剩余代码 加入上面的代码之后,你插入文章内的图片和其他附件以及特色图片都会被替换为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); } 剩余 5 行代码 展开剩余代码 另外,如果不想使用代码实现,也可推荐另外一个CDN加速插件:Attachment CDN。
以上内容来自博客订阅源,版权归原作者。关注作者后可以在 关注列表 第一时间查看作者文章。
登录后,加入这场讨论。
登录参与