记一次处理wordpress去除youtube iframe_api的历程
自从安装上wordpress之后一直都存在一个问题,就是发布的文章打开后一直都在加载中,就像上面这个圈圈一直在那里转,感觉十分不爽,查看页面加载内容,找到了问题所在,如下js存在youtube iframe_api加载问题.
原来是这个js一直加载不出来,那在看看这个js是在哪里加载的,查看页面源码,发现在head中有这么一句
原来是在这里,页面一开始就自动请求了这个youtube的js,应该是播放器之类的东西吧,由于我是后端开发,对于前端的东西一知半解,总之删除就对了,至于删除后的影响在看看运行效果就可以了.
这个东西在哪里呢?
先进入wordpress的主目录
在进入到主题
再进入自己使用的主题,我这里使用的honeywaves这个主题,如果没猜错的话,我遇到的问题应该跟主题无关,所有主题都会存在这个问题,来验证下吧
这是我的主题,发现有个header.php,进入看看吧
但是没有发现这句代码呢?
由于不懂PHP的, 试着排查下,于是删除了最可能的一句代码
对,就是删掉了这句,再去看看前端显示效果吧
首先发现自己的前端页面完全乱套了,简直不忍直视,但是页面一直在加载中的问题却没有了
,在来看看页面的源码是否已经没有了
果然没有了,但是发现head中少了很多东西,那说明确实是我找到的这个代码中有某种操作导致的,找到问题就好说,来解决问题
既然跟head有关,又应该是公共的(猜的),那肯定就在公共部分引用的,好吧,于是我就先找了
然后大概率是在js中,所以进了js目录
在来找找跟head有关的js,找到了2个,一个是压缩的,一个没压缩,如果存在问题的话都是一样的,看看这个文件呢,是否存在youtuebe相关的内容
瞧瞧我们发现了什么,这不是在head最开头添加了那句一问题代码,原来在这里,找到问题,那就处理吧,先备份文件,再将问题代码删掉试试,别忘了将压缩和非压缩的都处理掉,改好了保存,看看效果呢
怎么还存在?
难道是js改了后需要重启?于是我又重启整个服务,包括服务器也重启试过了,问题依旧
难道是缓存问题,于是又换了电脑,问题依旧
我知道我失败了,说明不是这两个文件的问题,我冤枉你们了.构建出来的逻辑大厦轰然倒塌,问题又得推到重来,先记下吧,后面找到解决方法在贴出来
后续...
一直因为私事耽搁了没有处理,这两天花了点时间处理了,中间却发现自己犯了个大错.
既然是这个ifarme_api的问题,肯定存在项目目录下,于是我们搜索下这句代码的出处
grep -rn iframe_api ./
发现没有,还有一个地方存在这个块代码,上面俩文件已经验证过了,没有作用,那么问题肯定出在下面这个文件中,来试试注释该文件中的代码看看
研究完代码后注释了这一句就够了,在来看看页面访问效果
再也没有出现这个问题了.算是解决了基本问题,原来是一个播放器的js代码问题,但是同时又发现了另外一个问题,我明明使用的是honeywaves这套模板,怎么会调用到honeypress这个模板呢?
如果要了解这个问题,还需要去看主题介绍:
原来honeywaves是honeypress的子主题,存在依耐关系,包括部分公共js,这样就不难理解为什么这个js会在honeywaves主题中被调用了,而这个有问题的播放器的js属于honeypress,那么意味着使用该主题或其子主题都有可能会遇到与我相同的情况,所以我的猜测是错误的,我所遇到的问题只跟主题有关,不是所有的使用wordpress的都会遇到,囧..
发表回复
要发表评论,您必须先登录。