织梦CMS如何正确删除JS引用?

99ANYc3cd6
预计阅读时长 14 分钟
位置: 首页 织梦建站 正文
  1. 如何正确地引用JS文件:这是最常见的需求,确保JS能被加载并生效。
  2. 如何删除或移除JS文件:这通常用于优化网站,移除不必要的JS。

如何在织梦CMS中引用JS文件

在织梦CMS中,有几种主流的JS引用方式,推荐从最优到最不优的顺序选择。

织梦cms js引用 delete
(图片来源网络,侵删)

在模板文件中直接引用(最灵活、最推荐)

这是最常用和最灵活的方法,你可以精确控制JS文件在哪个页面、哪个位置加载。

操作步骤:

  1. 上传JS文件:将你的 .js 文件上传到网站的某个目录,通常为了管理方便,会创建一个专门存放JS的文件夹,

    • /js/ (网站根目录下的js文件夹)
    • /templets/default/js/ (当前模板目录下的js文件夹)
  2. 编辑模板文件:打开你想要添加JS功能的模板文件,

    织梦cms js引用 delete
    (图片来源网络,侵删)
    • 首页:/templets/default/index.htm
    • 列表页:/templets/default/list_article.htm
    • 内容页:/templets/default/article_article.htm
    • 自定义页面:/templets/default/page_default.htm
  3. <head><body> 底部添加JS引用代码: 将以下代码插入到模板文件的 <head> 标签内或 </body> 标签之前。

    <!-- 方式1:引用外部JS文件 (推荐) -->
    <script src="/js/你的js文件名.js"></script>
    <!-- 方式2:引用jQuery (如果使用jQuery库) -->
    <!-- 建议使用CDN,速度快且稳定 -->
    <script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.6.0/jquery.min.js"></script>
    <!-- 方式3:内联JS代码 (少量代码时使用) -->
    <script>
      alert('这是一个内联的JS脚本');
    </script>

最佳实践:

  • 放在 </body>:为了提高页面加载速度,建议将所有的 <script src="..."></script> 放在 </body> 标签之前,这样可以避免JS加载阻塞页面的渲染。
  • 使用相对路径或绝对路径
    • 如果JS文件在网站根目录 /js/ 下,可以直接用 /js/xxx.js
    • 如果在当前模板目录下,可以用 {dede:global.cfg_templets_dir/}/js/xxx.js,这样更具可移植性。

通过后台系统设置全局引用(适用于全局JS,如统计代码)

如果你的JS代码需要在网站的每一个页面都加载(百度统计、Google Analytics、网站客服等),可以通过后台全局设置。

操作步骤:

织梦cms js引用 delete
(图片来源网络,侵删)
  1. 登录织梦CMS后台。
  2. 进入菜单:系统 -> 系统基本参数 -> 其他选项
  3. 找到 “网站底部版权信息”“网站公告” 等可以自定义HTML的文本框(不同版本织梦位置可能略有差异,有时会有专门的“网站JS代码”选项)。
  4. 将你的JS代码粘贴进去。

缺点:

  • 不够灵活,会加载到所有页面,即使某些页面不需要。
  • 如果JS代码中有 </script> 字符串,可能会被系统误认为是标签结束,导致代码被截断,解决方法是将代码中的 </script> 替换为 <\/script>

通过栏目/内容自定义字段引用(高级用法)

如果你想让某个特定栏目或某篇文章的内容包含特定的JS,可以使用自定义字段功能。

操作步骤:

  1. 创建自定义字段

    • 进入 核心 -> 内容模型管理 -> (选择你的内容模型,如“文章”) -> 点击“更改字段”
    • 新增一个字段,字段名可以是 js_code,字段类型选择 “多行文本”“编辑器”
    • 在“前台显示”处打勾。
  2. 在模板中调用: 在对应的模板文件(如 article_article.htm)中,使用以下代码调用这个字段。

    {dede:field name='js_code'/}

    这样,在后台发布或编辑文章时,就可以在“高级选项”或自定义字段区域填入JS代码了。


如何删除或移除JS文件

删除JS的需求通常是为了:

  • 性能优化:移除未使用的JS,减少HTTP请求,加快加载速度。
  • 功能移除:禁用某个不再需要的功能模块。

以下是几种删除JS的方法:

物理删除文件

如果你确定整个网站都不再需要某个JS文件,最直接的方法就是通过FTP或主机文件管理器,直接从服务器上删除它。

操作步骤:

  1. 通过FTP登录你的网站空间。
  2. 找到并删除对应的JS文件,/js/old_script.js

注意: 删除后,所有引用了这个文件的页面都会报错(Failed to load resource)。在删除前,请务必确保没有页面再引用它

注释掉模板中的引用(最安全、最常用)

如果你只是想在某个页面上临时禁用某个JS,或者不确定是否所有页面都需要它,最好的方法是“注释掉”模板中的引用代码。

操作步骤: 打开对应的模板文件,找到JS引用的那一行,在它前面加上 <!--,在它后面加上 -->

示例:

<!-- 原来的代码 -->
<script src="/js/old_script.js"></script>
<!-- 注释掉后,代码将不再生效 -->
<!-- <script src="/js/old_script.js"></script> -->

优点:

  • 安全可逆:随时可以取消注释,恢复功能。
  • 不会报错:只是不加载,不会影响页面其他部分的运行。

通过后台全局设置移除

如果JS是通过“方法二”中的后台全局设置添加的,直接回到后台的 “系统 -> 系统基本参数 -> 其他选项”,找到对应的文本框,清空里面的内容并保存即可。

条件性加载(高级技巧)

这是一种“伪删除”或“选择性加载”的方法,非常有用,它让你可以在特定条件下才加载JS,在其它条件下不加载。

示例: 我们只想在首页加载一个特定的JS,在其他页面不加载。

打开首页模板 index.htm,在 <head> 部分添加:

{dede:geturl runphp='yes'}
@me = GetCurUrl();
{/dede:geturl}
{if $fields.typeid == '1' || $fields.typeid == ''}
    <!-- 只有首页才加载这个JS -->
    <script src="/js/home_only_script.js"></script>
{/if}

这里的 {if} 条件判断可以根据你的需求来写,比如根据当前页面的ID、栏目ID等。


总结与最佳实践

需求场景 推荐方法 优点 缺点
为特定页面添加功能 模板中直接引用 灵活、精确、易于管理 需要手动编辑每个模板文件
为全站添加统计代码 后台全局设置 一次设置,全站生效 不够灵活,影响所有页面
为单篇文章添加特效 自定义字段 非常灵活,内容驱动 设置稍复杂
移除某个不再用的JS 方法2:注释掉模板引用 安全、可逆、无副作用 需要找到所有引用点
彻底删除一个JS功能 方法1:物理删除文件 彻底释放空间 风险高,删除前需确认无引用
只在特定条件下加载JS 方法4:条件性加载 性能优化,代码优雅 需要一定的PHP/模板知识

核心建议:

  • 模块化思想:将不同功能的JS文件分门别类地放在不同文件夹(如 /js/core/, /js/plugin/, /js/custom/)。
  • 性能优化:尽量将 <script> 标签放在 </body> 之前,对于大型JS项目,可以考虑使用JS合并和压缩工具。
  • 谨慎操作:在修改或删除任何文件前,务必备份你的模板文件和网站数据,以防操作失误导致网站无法正常访问。
-- 展开阅读全文 --
头像
C语言中fopen需包含哪个头文件?
« 上一篇 昨天
dede首页不置顶、列表页置顶,如何实现?
下一篇 » 昨天

相关文章

取消
微信二维码
支付宝二维码

目录[+]