分享各种网络资源
是我乃至整个互联网的精髓所在
 您目前所在位置: 站点首页 » WordPress » WordPress 讨论 » WPJAM Basic插件导致文章内JS地址改变问题修复
  • WPJAM Basic插件导致文章内JS地址改变问题修复

    WPJAM Basic插件导致文章内JS地址改变问题修复-BanYuner

    WPJAM Basic插件是我一直在使用的插件,其实这个插件就是将很多功能整合起来了,使用的原因就是因为它将其整合起来了,所以我个人觉得还是不错的。

    但是最近发现,在一篇文章中输入了一个JS文件的地址之后,类似:www.123456.js文件,之后就会出现在js后面添加了’. defer=’defer’这个问题,那么这个问题究竟是什么情况呢?我寻找了半天之后,最后找到了解决问题了,原始因为代码部分的判断存在不完善的原因,那么解决方法现在来简单说说。

    首先我们进入WPJAM Basic插件目录,之后找到wpjam-basic.php文件,打开这个文件之后,直接搜搜defer这个关键词,找到了之后,我们就可以看到下面的代码了:

    if(wpjam_basic_get_setting('defer') && !is_admin() ){
    add_filter( 'clean_url', 'wpjam_defer_script',11);
    function wpjam_defer_script( $url ){
    if(strpos($url, '.js') === false || (is_singular() && get_post_meta(get_the_ID(), 'custom_footer', true))) { 
    return $url;
    }
    return "$url' defer='defer";
    };
    }
    

    上面的代码中的if判断是不晚上的,并没有判断文章内部的,那么这样的话,我们的工作就是添加内容判断即可:

    if(wpjam_basic_get_setting('defer') && !is_admin() ){
    add_filter( 'clean_url', 'wpjam_defer_script',11);
    function wpjam_defer_script( $url,$content ){
    if(strpos($url, '.js') === false || (is_singular() && get_post_meta(get_the_ID(), 'custom_footer', true)) || strpos($content, '.js') === false) {
    return $url;
    }
    return "$url' defer='defer";
    };
    }
    

    修改后的代码如上了,直接替换就可以解决这个问题,但是根据不同主题以及自行添加的代码部分的不同,可能会出现别的问题也是不一样的,所以还希望大家能反馈一下。

    打赏 分享此文

    扫码,支持我

    WPJAM Basic插件导致文章内JS地址改变问题修复

    支付宝(点击图片切换)

    扫码,支持我

    WPJAM Basic插件导致文章内JS地址改变问题修复

    微信(点击图片切换)

    扫码,手机看

    WPJAM Basic插件导致文章内JS地址改变问题修复
    WPJAM Basic插件导致文章内JS地址改变问题修复
    5 + 9 =
    1. 1楼
      凯哥自媒体
      最后评论时间:2017/01/11 11:19
      来自天朝的朋友 谷歌浏览器 Windows 7 河南省郑州市 联通
      挺好的,感谢博主的分享。
      凯哥自媒体 11个月前 (01-11)回复