为了让博客能更快的访问,体验度更好,缙哥哥绞尽脑汁(大)、想方设法(穷)、竭尽全力(逼)去优化加速。由于缙哥哥想把服务器性能尽可能的使用出来(太抠不愿意花钱升级服务器),又不想花钱买CDN服务,所以就有了今天这个DUX主题静态文件优化加速的骚操作,本次优化感谢代码狗的帮助以及耐心的解答。

DUX主题静态文件加速

缙哥哥先把DUX主题的静态文件(JS、CSS、fonts、img四个文件夹)放到对象存储并提供加速的二级域名下,并且文件目录要跟DUX主题一致,如:cdn.dujin.org

DUX主题JS文件加速

在DUX主题的文件夹中,找到/js/loader.js文件进行编辑,在39行处(版本不同可能有所不同)找到tbquire.config({

baseUrl: jsui.uri + '/js',

urlArgs: 'ver=' + jsui.ver,

paths: {

'jquery.cookie' : 'libs/jquery.cookie.min',

'jsrender' : 'libs/jsrender.min',

'router' : 'libs/router.min',

'lazyload' : 'libs/lazyload.min',

'prettyprint' : 'libs/prettyprint',

'ias' : 'libs/ias.min',

'hammer' : 'libs/hammer.min',

'main' : 'main',

'comment' : 'comment',

'user' : 'user'

}

})

将其中的baseUrl一处进行修改:baseUrl: jsui.uri + '/js',

替换成你对应已加速的域名baseUrl: '//img.dujin.org/dux/js',

在DUX主题的文件夹中,找到functions-theme.php文件进行编辑,在364行处(版本不同可能有所不同)找到:$jss = array(

'no' => array(

'jquery' => $purl.'/js/libs/jquery.min.js',

'bootstrap' => $purl . '/js/libs/bootstrap.min.js'

),

'baidu' => array(

'jquery' => '//apps.bdimg.com/libs/jquery/1.9.1/jquery.min.js',

'bootstrap' => '//apps.bdimg.com/libs/bootstrap/3.2.0/js/bootstrap.min.js'

),

'360' => array(

'jquery' => $purl.'/js/libs/jquery.min.js',

'bootstrap' => $purl . '/js/libs/bootstrap.min.js'

),

'he' => array(

'jquery' => '//code.jquery.com/jquery-1.9.1.min.js',

'bootstrap' => '//maxcdn.bootstrapcdn.com/bootstrap/3.2.0/js/bootstrap.min.js'

)

);

wp_register_script( 'jquery', _hui('js_outlink') ? $jss[_hui('js_outlink')]['jquery'] : $purl.'/js/libs/jquery.min.js', false, THEME_VERSION, (_hui('jquery_bom')?true:false) );

wp_enqueue_script( 'bootstrap', _hui('js_outlink') ? $jss[_hui('js_outlink')]['bootstrap'] : $purl . '/js/libs/bootstrap.min.js', array('jquery'), THEME_VERSION, true );

_jsloader(array('loader'));

// wp_enqueue_script( '_main', $purl . '/js/main.js', array(), THEME_VERSION, true );

将$purl.删除,并在后面的单引号中补全自己的加速地址,由于最后一行已经被浩子哥注释了,咱不管他。将_jsloader(array('loader'));

注释掉(前面加//),并在其下方添加以下代码:wp_enqueue_script( 'loader', '//img.dujin.org/dux/js/loader.js', array(), THEME_VERSION, true );

其中no、baidu、360、he分别是主题设置中JS文件托管(可大幅提速JS加载)设置,由于360因为改动地址,所以浩子哥已经取消了360选项。

至此,你的主题的所有js文件就已经缓存加速了。

DUX主题CSS文件加速

在DUX主题的文件夹中,找到functions-theme.php文件进行编辑,在355行处(版本不同可能有所不同)找到// common css

_cssloader(array('bootstrap' => $purl.'/css/bootstrap.min.css', 'fontawesome' => $purl.'/css/font-awesome.min.css', 'main' => 'main'));

// page css

if (is_page_template('pages/user.php')) {

_cssloader(array('user' => 'user'));

}

同理,将$purl.删除,并在后面的单引号中补全自己的加速地址,以缙哥哥为例,修改为:// common css

_cssloader(array('bootstrap' => '//img.dujin.org/dux/css/bootstrap.min.css', 'fontawesome' =>'//img.dujin.org/dux/css/font-awesome.min.css', 'main' => '//img.dujin.org/dux/css/main.css'));

// page css

if (is_page_template('pages/user.php')) {

_cssloader(array('user' => '//img.dujin.org/dux/css/user.css'));

}

至此,你的主题的所有css文件就已经缓存加速了。

文本编辑/dux/css/font-awesome.min.css文件,将其所有的url(../fonts/改为自己已加速的绝对地址。

至此,你的主题的所有fonts文件就已经缓存加速了。

DUX主题img文件加速

删除get_stylesheet_directory_uri() .,并在后方补全加速地址。

默认表情加速add_filter('smilies_src', '_smilies_src', 1, 10);

function _smilies_src($img_src, $img, $siteurl) {

return get_stylesheet_directory_uri() . '/img/smilies/' . $img;

}

默认头像加速function _get_default_avatar(){

return get_stylesheet_directory_uri() . '/img/avatar-default.png';

}

默认特色图片加速if( $r_src ){

if( _hui('thumbnail_src') ){

return sprintf('', $r_src, $post->post_title._get_delimiter().get_bloginfo('name'), get_stylesheet_directory_uri().'/img/thumbnail.png');

}else{

return sprintf('', $r_src, $post->post_title._get_delimiter().get_bloginfo('name'));

}

}else{

return sprintf('', get_stylesheet_directory_uri().'/img/thumbnail.png');

}

}

至此,你的主题出现最多的图片文件就已经缓存加速了。更多的图片分离加速,可参考:

php 静态 动态 cdn 加速,一次鸡肋(能用CDN代替)的DUX主题静态文件优化加速的日志...相关推荐

  1. php 静态 动态 cdn 加速,CDN静态加速跟动态加速的区别,动态加速好还是静态加速好?...

    CDN做为内容分发技术,其核心原理就是将内容缓存到离用户最近的节点上,实现内容分发加速,这里内容主要分为两种,一种是静态内容,一种是动态内容.首先,对静态资源,CDN的加速效果是最好的,因为文件本身没 ...

  2. 那些可以加速国内外开源库的免费CDN

    前段时间更改网站需要加载Google Fonts字体文件.虽然Google Fonts在国内有服务器但是加载速度还是不太理想.时不时抽风...自己也懒得将所有字体文件下载放到服务器中.所以想到了可不可 ...

  3. axios 注册拦截器 cdn引用_PicGo+jsDelivr+GitHub搭建免费cdn加速的图床

    PicGo+jsDelivr+GitHub搭建免费cdn加速图床.下面是我写的教程. https://www.sakura521.cn/2020/03/13/picgocdn.html​www.sak ...

  4. Java反射-静态/动态加载类

    title: Java反射-静态/动态加载类 date: 2019-05-28 18:50:00Java反射-静态/动态加载类 Class 类是对象,是java.lang.Class类的实例对象.任何 ...

  5. 学习笔记:可持久化线段树(主席树):静态 + 动态

    学习笔记:可持久化线段树(主席树):静态 + 动态 前置知识: 线段树.线段树分享可以看:@秦淮岸.@ZYzzz.@妄想の岚がそこに 树状数组.\(BIT\)分享可以看:@T-Sherlock.Chi ...

  6. 使用jQuery的插件qrcode生成二维码(静态+动态生成)及常见问题解决方法

    使用jQuery的插件qrcode生成二维码(静态+动态生成)及常见问题解决方法 参考文章: (1)使用jQuery的插件qrcode生成二维码(静态+动态生成)及常见问题解决方法 (2)https: ...

  7. k8s——pv(静态+动态storageclass)与pvc

    k8s--pv(静态+动态storageclass)与pvc PVC和PV PV概念 PVC概念 PV与PVC之间的关系 两种PV的提供方式 基于nfs创建静态PV资源和PVC资源 配置nfs存储(1 ...

  8. JavaEE(10)Spring中的注解开发、静态/动态代理

    1. 使用注解开发 1. 说明 (1)在Spring4之后,想要使用注解的形式,必须先引入aop包 (2)在配置文件中,引入context约束 <?xml version="1.0&q ...

  9. 深度学习AI美颜系列----人像静态/动态贴纸特效算法实现

    人像静态/动态贴纸特效几乎已经是所有图像视频处理类/直播类app的必需品了,这个功能看起来复杂,实际上很简单,本文将给大家做个详细的讲解. 我们先来看一下FaceU的两张效果图: 这两张效果图中, 我 ...

最新文章

  1. sudo提升执行权限
  2. Spring Boot 应用迁移到 Java 11
  3. RuntimeError: Given groups=1, weight of size [1, 1, 3, 3], expected input[1, 3, 1402, 1200] to have
  4. 树莓派也跑Docker和.NET Core
  5. 移动端设置html的字体尺寸,移动端开发元素及字体尺寸适配基础知识
  6. java 垂直走马灯多行,Android实现图文垂直跑马灯效果
  7. CSS 让数字滑动显示
  8. LeetCode:递增的三元子序列【334】
  9. C# ASP.NET 权限设计 完全支持多数据库多语言包的通用权限管理系统组件源码
  10. 22 省遭受重大洪灾,机器学习未来能预报么?
  11. 2021年前端还好找工作吗?
  12. 如何在SQL Server 2017中实现图形数据库
  13. CSS块元素与内联元素(转)
  14. KEIL C51出现 runtime error R6002 floating point support not loaded解决办法
  15. PCR概述及前沿技术
  16. C语言循环结构作业总结
  17. 关于‘\0’ ,‘0’, “0” ,0的理解
  18. 在输入框加入搜索图标的问题
  19. Ubuntu使用自带的Liboffice Draw去除PDF水印
  20. matlab之plot、fplot、ezplot函数

热门文章

  1. 动态规划+vector解旅行计划问题
  2. 线性回归使用的基本条件
  3. ES dense_vector 计算余弦相似度
  4. 启发:从MNS事务消息谈分布式事务
  5. Hey.com:如果你没有观点,你就不值得关注
  6. 基于Java的Minecraft游戏后端自定义插件 的Java实践项目整理
  7. tplink无线桥接WDS小结
  8. EZ CD Audio Converter
  9. js判断是否是苹果浏览器
  10. 项目管理相关认证简要介绍(1)- 体系