教你解决由于jsdeliver导致wordpress后台变慢的终极办法

大家有没有发现,你用的wordpress后台打开时变慢了,特别是用 codestar-framework 框架的主题,每次打开后台恨不得等好几分钟。

这是因为这个框架引用了 cdn.jsdelivr.net 的原因。2021年12月开始,jsdelivr的域名备案被吊销了,导致国内的CDN提供商移除了jsDeliver的账号,目前国内访问jsdeliver都走国外的ip,就导致了服务不稳定,才会有了访问变慢。

如图打开都是飘红啦。

解决办法一

更改静态资源链接中的 cdn.jsdelivr.net,替换为 fastly.jsdelivr.net ,但是这个方法虽然改起来简单,但是不知道哪天就又不行了,想想就闹心。

解决办法二

将涉及到走 jsDeliver 的资源全部本地话,这样啥时候也不怕了,说干就干吧。

涉及到的文件主要有两个
1、codestar-framework/classes/setup.class.php 文件

wp_enqueue_style( 'csf-fa','https://cdn.jsdelivr.net/npm/font-awesome@4.7.0/css/font-awesome.min.css',array(),'4.7.0','all' );
改为
wp_enqueue_style( 'csf-fa',CSF::include_plugin_url( 'assets/css/font-awesome.min.css' ),'all' );

2、codestar-framework/fields/code_editor/code_editor.php 文件

public $cdn_url = 'https://cdn.jsdelivr.net/npm/codemirror@';
改为
public $cdn_url = '';
'cdnURL' => $this->cdn_url . $this->version,改为
'cdnURL' => get_template_directory_uri().'/inc/codestar-framework/assets',
if( ! wp_script_is( 'csf-codemirror' ) ) {
wp_enqueue_script( 'csf-codemirror',$this->cdn_url . $this->version .'/lib/codemirror.min.js',array( 'csf' ),$this->version,true );
wp_enqueue_script( 'csf-codemirror-loadmode',$this->cdn_url . $this->version .'/addon/mode/loadmode.min.js',array( 'csf-codemirror' ),true );
}

if( ! wp_style_is( 'csf-codemirror' ) ) {
wp_enqueue_style( 'csf-codemirror',$this->cdn_url . $this->version .'/lib/codemirror.min.css',$this->version );
}

改为

if( ! wp_script_is( 'csf-codemirror' ) ) {
wp_enqueue_script( 'csf-codemirror',CSF::include_plugin_url('assets/lib/codemirror.min.js'),CSF::include_plugin_url('assets/addon/mode/loadmode.min.js'),CSF::include_plugin_url('assets/lib/codemirror.min.css'),$this->version );
}

最后将对应的css和js文件,放到 codestar-framework/assets 文件夹中。

想要下载好的静态文件,关注微信公众号 “xx主题网”,回复 TBLOG944获取

相关文章

我想将wordpress的默认接口路由改掉,愿意是默认的带一个 wp...
wordpress自定义分类法之后,我看到链接都自动在后面添加了一...
事情是这样的,我用 get_post_type 函数创建了一个自定义分类...
最近网站莫名其妙的被顶上了,过一个多小时,就注册一个账号...
最近服务器要到期了,就想着把网站转移到另外一台服务器,本...
今天在写wordpress的接口,然后碰到个奇怪的问题,怎么访问都...