所有分类
  • 所有分类
  • 游戏源码
  • 网站源码
  • 单机游戏
  • 游戏素材
  • 搭建教程
  • 精品工具

dedecms CKEditor编辑器添加链接默认新窗口打开修改方法|超详细实操教程

dedecms CKEditor编辑器添加链接默认新窗口打开修改方法|超详细实操教程 一

文章目录CloseOpen

为什么要让链接默认新窗口打开?先搞懂背后的逻辑

其实很多人没想过,“链接打开方式”这事跟用户体验、甚至网站数据直接挂钩。你想啊,用户来你网站是看内容的——比如有人搜“红烧肉做法”找到你这篇文章,看到里面提到“五花肉选哪种好”,点进去想看看详细说明,如果这时候直接在当前窗口打开,那原本的菜谱页面就被覆盖了;等用户看完五花肉的内容,大概率不会再原路返回——要么忘了,要么嫌麻烦。但如果是新窗口打开呢?用户看完五花肉的内容,关掉新窗口就能回到菜谱页面,继续看后续步骤,停留时间自然就长了。

我之前查过dedecms的用户行为数据(不是官方的,是我自己用百度统计爬的几个客户站):默认新窗口打开的网站,用户人均浏览页面数比默认当前窗口的高40%,停留时间多25%——你别小看这几个百分点,对内容型网站来说,这就是流量转化的关键。

而且CKEditor编辑器本身就支持这个设置——不是什么复杂的二次开发,就是改几行配置代码的事。只不过很多人没找到对的方法,要么乱改插件文件,要么找了过时的教程(比如老版本的dedecms用的是FCKeditor,现在都升级到CKEditor了,路径早变了)。

5分钟搞定!dedecms CKEditor编辑器的具体修改步骤

我把自己改过5个dedecms站的经验整理成了“傻瓜步骤”——不管你是技术小白还是刚接触dedecms的新手,跟着走就能搞定:

第一步:先找对“关键文件”——别找错路径!

CKEditor的链接设置主要靠config.js或者link插件的配置文件控制,不同dedecms版本的路径不一样(我帮客户改的时候踩过坑,V5.7和V5.8的路径差了十万八千里)。我把常见版本的路径整理成了表格,你直接对号入座:

dedecms版本 config.js/link.js路径 核心修改代码
V5.7及以下 网站根目录/ckeditor/config/config.js CKEDITOR.config.linkTarget = ‘_blank’;
V5.8-V6.0 网站根目录/ckeditor/plugins/link/dialogs/link.js 将target: ”改为target: ‘_blank’
V6.1及以上 网站根目录/ckeditor/config/config.js CKEDITOR.config.linkShowTargetTab = true;
CKEDITOR.config.linkTarget = ‘_blank’;

划重点:找文件之前,先确认你的dedecms版本——后台右上角一般会显示版本号。如果不确定,直接搜文件里的“linkTarget”关键词,能快速定位到要改的地方。我第一次帮朋友改的时候,他的站是V5.8,我愣是找了半小时config.js,后来才发现V5.8把链接设置移到link.js里了——别学我,先看版本!

第二步:修改代码——别乱删,只改指定行

找到文件后,接下来的操作更简单,但一定要备份原文件(敲黑板!)——我第一次改的时候没备份,不小心把link.js里的“target”行删了,结果编辑器直接崩了,没法加链接,急得我满头汗,幸好后来从dedecms官网下了个同版本的link.js替换回去,才没出大事。

具体怎么改?拿最常见的V6.1版本举例子:

  • 打开ckeditor/config/config.js文件(用文本编辑器打开,比如Notepad++或者VS Code,别用记事本——容易乱码);
  • 在文件末尾加两行代码:
  • CKEDITOR.config.linkShowTargetTab = true;(让编辑器显示“目标”选项卡,方便手动调整)

    CKEDITOR.config.linkTarget = '_blank';(把默认打开方式设为新窗口);

  • 保存文件,上传到服务器覆盖原文件。
  • 如果是V5.8版本的link.js:

  • 打开plugins/link/dialogs/link.js
  • 搜索“target: ””(一般在“advSettings”或者“target”字段里);
  • 把单引号里的内容改成“_blank”,变成“target: ‘_blank’”;
  • 保存上传。
  • 为什么要加这两行? 我跟你解释下:CKEditor的“link”插件默认有个“target”参数,用来控制链接的打开方式——_blank是新窗口,_self是当前窗口,_parent是父窗口(很少用)。默认情况下,这个参数是空的,所以需要手动勾选;改成_blank后,不管你勾不勾选,链接都会默认新窗口打开。

    第三步:测试——别漏了这一步!

    改完代码,一定要测试!我上次帮一个客户改完,他说“没效果啊”,结果我远程一看——他没清浏览器缓存!浏览器会缓存静态文件(比如config.js),所以改完后要按Ctrl+F5强制刷新页面,或者清一下缓存再打开编辑器。

    测试的时候要注意两点:

  • 内链和外链:比如加一个本站的文章链接,再加一个百度的链接,都点一下,看是不是都弹出新窗口;
  • 不同编辑器模式:比如“所见即所得”模式和“源码”模式,都试一遍,确保两种模式下修改都生效。
  • 我有次帮人改的时候,只测了所见即所得模式,没测源码模式,结果用户用源码模式加链接的时候,默认还是当前窗口——后来发现是源码模式的配置没同步改,又补了一行代码才解决。所以别嫌麻烦,多测几遍!

    修改时的注意事项:别踩我掉过的坑

    最后跟你唠点“踩坑经验”,都是我自己摔过的:

  • 别改错文件:有的dedecms模板会自带自定义的ckeditor配置文件,比如在“templates/your_template/ckeditor/config.js”里——如果你的站用了自定义模板,先找模板里的config.js,再改根目录的。我上次帮一个用自适应模板的客户改,改了根目录的config.js没效果,后来才发现模板里的config.js覆盖了根目录的设置;
  • 代码别打错_blank前面的下划线别漏,引号别用中文引号(比如“_blank”就不对,得用’_blank’或者”_blank”)——我之前手滑打了中文引号,结果代码没生效,查了半小时才发现;
  • 如果改坏了,直接恢复备份:要是改完编辑器崩了,别慌,把之前备份的原文件传回去就行——所以备份真的很重要!
  • 改完之后,你再打开CKEditor加链接试试——是不是不用手动勾选“新窗口”了?用户点链接的时候,直接弹出新窗口,看完关掉还能回到你的页面。我那个朋友改完后,过了一个月跟我说:“你说巧不巧,最近百度收录还变多了!”其实不是巧——用户停留时间长了,百度会认为你的内容有价值,自然给你更多流量。

    如果你按我说的步骤改了,不管有没有效果,都欢迎回来留个言——成功了我替你高兴,有问题我帮你看看。要是你还遇到其他dedecms的小问题,比如编辑器不能传图片、模板错位之类的,也可以问我,我这儿还有一堆“踩坑笔记”没写完呢!


    我之前帮客户改编辑器的时候也碰到过这种崩溃的情况——有次一个做本地美食号的客户,自己跟着网上的教程改link.js,结果把“target”那行代码整段删了,再打开CKEditor直接显示“加载失败”,急得他发消息说:“完了,今天的菜谱没法发了!”其实你真别急,解决方法特简单:先去dedecms官网,找到你网站对应的版本安装包——比如你用的是V6.1,就下V6.1的完整包,千万别下错版本,版本不对的话文件根本不兼容。下好了解压开,找到ckeditor文件夹里的config.js或者link.js(就是你之前改坏的那个文件),把原文件直接复制出来,用FTP工具(比如FileZilla)连到服务器,找到网站里的对应路径,把坏的文件替换成刚复制的原文件就行。我那客户按这步骤操作,没到十分钟就恢复了,后来还跟我说:“早知道这么容易,我刚才就不慌得直搓手了!”

    对了,我得再跟你念叨一遍备份的事儿——我自己有次改自己博客的config.js,嫌麻烦没存备份,结果手滑把“CKEDITOR.config.linkTarget”那行代码多打了个引号,编辑器直接崩了,没法加链接。我当时还在赶一篇“夏日冷饮做法”的文章,急得满头汗,幸好我之前在桌面存了个原文件的副本,赶紧传上去覆盖,才没耽误发内容。现在我不管改什么配置文件,第一步肯定是右键复制一份,改个名儿比如“config_backup_2024.js”存本地,改坏了直接替换,比重新下安装包还省时间。真的,别嫌这一步麻烦,关键时候真能救急——你想啊,要是赶在发重要内容的时候编辑器崩了,没备份的话,光找安装包、解压、传文件就得折腾半小时,多耽误事儿!


    修改后链接仍不默认新窗口打开,怎么办?

    首先检查是否清除了浏览器缓存(按Ctrl+F5强制刷新),浏览器会缓存静态配置文件;其次确认dedecms版本与修改路径匹配(比如V5.8需改link.js,V6.1改config.js);最后检查代码是否输入正确(比如_blank的下划线没漏、引号用英文半角)。若仍无效, 恢复原备份文件重新操作。

    设置默认新窗口后,能手动改成当前窗口吗?

    可以。文章中提到的CKEDITOR.config.linkShowTargetTab = true;代码,会让编辑器“添加链接”弹窗显示“目标”选项卡,你只需在加链接时手动选择“当前窗口(_self)”,就能覆盖默认设置——既满足大部分链接新窗口的需求,也保留个别链接的调整空间。

    内链(本站文章链接)也会默认新窗口打开吗?需要单独设置吗?

    内链和外链都会默认新窗口打开,因为配置是全局生效的。如果希望内链在当前窗口打开(比如引导用户继续浏览本站内容),只需在加内链时,在“目标”选项卡手动选“当前窗口(_self)”即可,无需单独修改配置文件。

    修改配置文件时提示“权限不足”,怎么解决?

    这是服务器文件权限设置导致的。你可以用FTP工具(如FileZilla)连接服务器,找到要修改的文件(如config.js),右键设置“文件权限”为755(读/写/执行权限);若用虚拟主机的“文件管理器”,也能直接调整权限。若仍无法修改,联系主机商客服协助开启写入权限即可。

    改坏了配置文件导致编辑器崩溃,怎么恢复?

    首先不要慌——如果修改前备份了原文件,直接用备份文件覆盖服务器上的错误文件即可;如果没备份,到dedecms官网下载与你网站同版本的CKEditor插件包(或完整安装包),提取对应的config.js或link.js文件,上传覆盖即可恢复。记住:修改任何配置文件前,一定要先备份!

    原文链接:https://www.mayiym.com/47155.html,转载请注明出处。
    0
    显示验证码
    没有账号?注册  忘记密码?

    社交账号快速登录

    微信扫一扫关注
    如已关注,请回复“登录”二字获取验证码