dede模板路径怎么设置?

99ANYc3cd6
预计阅读时长 13 分钟
位置: 首页 DEDE建站 正文

DedeCMS 的模板路径设置主要涉及两个方面:

dede 模板路径设置
(图片来源网络,侵删)
  1. 后台设置:全局性地指定模板文件所在的目录。
  2. 前台调用:在前台模板文件中,如何正确引用其他资源文件(如 CSS、JS、图片等)。

后台模板路径设置 (核心设置)

这是所有路径设置的基础,在后台,你可以指定默认的模板目录,这样系统就知道去哪里查找 .htm 模板文件。

操作路径: 登录 DedeCMS 后台 -> 系统 -> 系统基本参数 -> 核心设置

在这个页面中,找到以下几个关键选项:

cfg_templets_dir (模板目录)

  • 作用:设置存放所有前台模板的根目录。
  • 默认值/templets
  • 说明
    • 这里的路径是相对于你的网站根目录()的。
    • 如果你不想把模板放在默认的 templets 目录下,可以在这里修改,你可以改成 /templates/assets/templates
    • 修改后需要清空缓存才能生效,路径:系统 -> 性能选项 -> 更新系统缓存

cfg_df_style (默认风格目录)

  • 作用:在 cfg_templets_dir 指定的目录下,进一步指定当前使用的模板风格子目录,这是实现“多套模板”功能的关键。
  • 默认值default
  • 说明
    • 最终的模板文件完整路径是:{cfg_templets_dir}/{cfg_df_style}/...
    • 默认情况下,系统会去 /templets/default/ 目录下寻找模板文件。
    • 你可以在后台的 模板管理 -> 默认模板管理 中,为不同的页面(如首页、列表页、内容页)选择不同的模板文件,这些文件都存放在 /templets/default/ 目录下。
    • 如果你想创建一套新的模板风格(比如一个名为 mynewstyle 的新主题),你可以:
      1. /templets/ 目录下创建一个名为 mynewstyle 的新文件夹。
      2. default 目录下的模板文件复制到 mynewstyle 目录中,然后进行修改。
      3. 在后台 模板管理 -> 使用风格 中,将默认风格切换到 mynewstyle

前台模板路径调用 (实际应用)

在编写 .htm 模板文件时,你经常需要引入 CSS、JavaScript、图片等资源文件,这里必须使用 DedeCMS 提供的专用标签,而不能使用相对路径(如 ../images/logo.png),因为这样会导致在不同层级的页面中路径错误。

dede 模板路径设置
(图片来源网络,侵删)

核心标签:{dede:global.cfg_templets_dir/}

这个标签会输出后台设置的模板根目录(即 cfg_templets_dir 的值),是构建所有模板资源路径的基础。

调用当前风格目录的 CSS/JS 文件

这是最常用的情况,假设你的模板文件在 /templets/default/ 目录下,你的 CSS 文件在 /templets/default/css/ 目录下。

错误写法(不推荐):

<link rel="stylesheet" href="css/style.css">

这个路径在首页 (/index.htm) 是对的,但在文章页 (/plus/view.php?aid=123) 就会变成 /plus/css/style.css,导致路径错误。

dede 模板路径设置
(图片来源网络,侵删)

正确写法(推荐): 使用 {dede:global.cfg_templets_dir/} 结合 cfg_df_style 来构建绝对路径。

<!-- 引入 CSS 文件 -->
<link rel="stylesheet" href="{dede:global.cfg_templets_dir/}/{dede:global.cfg_df_style/}/css/style.css">
<!-- 引入 JavaScript 文件 -->
<script src="{dede:global.cfg_templets_dir/}/{dede:global.cfg_df_style/}/js/jquery.min.js"></script>

解析:

  • {dede:global.cfg_templets_dir/}: 输出 /templets
  • {dede:global.cfg_df_style/}: 输出 default
  • 两者组合起来就是 /templets/default/,然后再加上你自己的子目录和文件名,无论网站页面在哪个层级,路径都是绝对且正确的。

调用图片文件

调用图片的原理和 CSS/JS 完全一样。

示例: 假设你的 logo.png 图片存放在 /templets/default/images/ 目录下。

<img src="{dede:global.cfg_templets_dir/}/{dede:global.cfg_df_style/}/images/logo.png" alt="网站Logo">

特殊情况:网站根目录资源

如果你的 CSS、JS、图片等资源文件是存放在网站根目录下的(/css/, /images/),而不是在模板目录里,那么调用方式更简单。

示例: 网站根目录下有一个 /static/ 文件夹,里面有 css/style.css

<link rel="stylesheet" href="/static/css/style.css">

或者使用 {dede:global.cfg_cmspath/}(通常代表网站根目录 ):

<link rel="stylesheet" href="{dede:global.cfg_cmspath/}/static/css/style.css">

修改模板路径的最佳实践

为了网站的整洁和可维护性,建议遵循以下实践:

  1. 保持默认设置:除非有特殊需求,否则 cfg_templets_dir 保持 /templets 不变。
  2. 风格化管理:利用 cfg_df_style 来管理不同的主题,每个主题(如 default, mobile, company)都是一个独立的文件夹,包含其所有所需的 css, js, images 等。
  3. 使用绝对路径:在模板文件中,所有对资源的引用都应使用 {dede:global.cfg_templets_dir/}/{dede:global.cfg_df_style/} 构建的绝对路径。
  4. 清空缓存:每次在后台修改了模板路径设置后,务必去 系统 -> 性能选项 -> 更新系统缓存 中清空缓存,否则修改不会立即生效。
设置/标签 作用 示例
后台 cfg_templets_dir 定义模板根目录 /templets
后台 cfg_df_style 定义当前风格子目录 default
前台 {dede:global.cfg_templets_dir/} 输出模板根目录 /templets
前台 {dede:global.cfg_df_style/} 输出当前风格目录 default
组合调用 构建正确的资源路径 {dede:global.cfg_templets_dir/}/{dede:global.cfg_df_style/}/css/style.css

掌握以上设置和标签的使用,你就可以灵活、正确地管理和调用 DedeCMS 的所有模板资源了。

-- 展开阅读全文 --
头像
织梦分页标签如何正确调用内容?
« 上一篇 今天
织梦采集文章如何规范操作?
下一篇 » 今天

相关文章

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

目录[+]