先说明下,这些方案并没有用在vpswy.com上,因为本站放在krypt上,型号点此查看,不需要优化。rnrn这几天,帮一个朋友优化wordpress,其实我不太会,边摸索边来。rnrn

首先是js和css文件静态化

rnrn免费cdn是一定的,jsdelivr+github是最好的选项,具体是怎么实现。rnrn

1、最初想到的是wp-super-cache,这是wp官方写的。

rnrnrn安装后,发现有点问题,因为用的模版是zibll,里边的文件比较多。rnrnwp-super-cache是指定一个目录,然后排除一些不用cdn的文件后缀,其他的全部走cdn。rnrn这样如果漏掉某个后缀没排除,估计会出一些问题。rnrn其实也可以改下代码,变成指定文件后缀走cdn,这有点难度。rnrn

2、然后开始查找不用插件的方法。

rnrnrn查到,可以在functions.php中添加代码实现替换资源。从一个pc6a的网站,找到了张戈的代码。rnrn
rn//静态资源CDNrnfunction OSSCDN(){rnfunction Rewrite_URI($html){rn/* 前面是需要用到CDN的域名,后面是需要加速的静态文件类型,使用分隔符 | 隔开即可 */rn$pattern ='/https:\/\/(www\.|)pc6a\.com\/wp-content\/themes\/dux\/([^"\']*?)\.(js|css)/i';rn/* CDN空间地址,请自行替换成实际空间地址 */rn$replacement = 'https://cdn.pc6a.com/dux/$2.$3';rn$html = preg_replace($pattern, $replacement,$html);rnreturn $html;rn}rnif(!is_admin()){rnob_start("Rewrite_URI");rn}rn}rnadd_action('init', 'OSSCDN');rnrn
rnrn我就拿本站来举例,rn在github里,假设用户名是vpswy,rn新建一个项目zibll,用github客户端把项目拉到本地,设置目录zibll。rn把zibll模版里的css文件夹和js文件夹复制到本地zibll目录下。rn用github客户端push上去。rnrn这个代码直接用也有问题。rn因为zibll模版,有些支付模块里边也有js文件。 rn收费模版(我买了授权的),不能全部传到github上。而一个一个文件去找,设置路径传上去,又太费事。rn那么怎么能只替换js和css文件夹里的js和css文件呢?rn只要把代码稍加修改就可以。rn
//静态资源CDNrnfunction OSSCDN(){rnfunction Rewrite_URI($html){rn/* 前面是需要用到CDN的域名,后面是需要加速的静态文件类型,使用分隔符 | 隔开即可 */rn$pattern ='/https:\/\/(www\.|)vpswy\.com\/wp-content\/themes\/zibll\/css\/([^"\']*?)\.(js|css)/i';rn/* CDN空间地址,请自行替换成实际空间地址 */rn$replacement = 'https://cdn.jsdelivr.net/gh/vpswy/zibll/css/$2.$3';rn$html = preg_replace($pattern, $replacement,$html);rnrn$pattern1 ='/https:\/\/(www\.|)vpswy\.com\/wp-content\/themes\/zibll\/js\/([^"\']*?)\.(js|css)/i';rn$replacement1 = 'https://cdn.jsdelivr.net/gh/vpswy/zibll/js/$2.$3';rn$html = preg_replace($pattern1, $replacement1,$html);rnreturn $html;rn}rnif(!is_admin()){rnob_start("Rewrite_URI");rn}rn}rnadd_action('init', 'OSSCDN');
rnrn这样就只会替换css和js文件夹里边的css和js文件了。rnrn如果你想替换额外的文件夹,把10-12行 复制粘贴,稍作修改就可以了。rnrn

图片使用站外图床静态化

rn图床用哪个都行,只要国内速度快,能外链,没流量限制就行。rnrn我这里用的方法,不适合大量图片。rnrn大量图片可以像js css一样,通过jsdelivr+github来实现就可以。rnrn因为原本有几篇文章了,没有重新设置,而是沿用原来的图床。rnrn

1、主体设置里边的图片,比如幻灯片等,一张张设置就可以。

rnrnrn

2、文章里边的图片,使用到了一个插件,External Media without Import。

rnrnwp后台搜索在线安装启用就可以。rnrn这名字起得好,啥作用直接说清楚了。rnrn怎么用呢?rn发布或者编辑文章时,点设置特色图片,rn然后添加媒体的时候,有一个选项:Add External Media without Importrnrn点击,直接输入图片地址就可以了。rnExternal Media without Importrnrnrn