dede栏目列表如何调用与显示?

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

核心概念:列表是什么?

列表就是指一个栏目下的所有文档(文章)的聚合展示页面

dede栏目下的列表
(图片来源网络,侵删)

当你在网站导航栏点击“新闻中心”时,跳转的那个页面,新闻中心”这个栏目的列表页,它的主要任务是:

  1. 展示文档:按照设定的规则,循环显示该栏目下的所有文章。
  2. 提供分页:如果文章很多,自动生成分页导航,方便用户浏览。
  3. 设定样式:控制每篇文章的标题、发布时间、缩略图等信息的显示格式。

列表页的构成与原理

一个完整的列表页通常由以下几个部分构成,理解这些部分有助于你更好地自定义列表:

  1. 列表模板

    • 作用:这是最核心的部分,它是一个 HTML 文件,定义了列表页的布局和样式。
    • 命名规则:通常为 list_栏目ID.htm,如果你的“新闻中心”栏目 ID 是 1,那么它的列表模板文件就是 list_1.htm
    • 模板文件中会使用 DedeCMS 的模板标签来动态调用数据,最核心的标签是:
      {dede:list pagesize='10'}
          <a href='[field:arcurl/]'>[field:title/]</a>
          <p>[field:description/]...</p>
          <span>[field:pubdate function="MyDate('Y-m-d',@me)"/]</span>
      {/dede:list}
      • {dede:list}...{/dede:list}:这是一个循环标签,会循环输出栏目下的文章。
      • pagesize='10':定义每页显示 10 篇文章。
      • [field:arcurl/]:文章的链接地址。
      • [field:title/]:文章的标题。
      • [field:description/]:文章的摘要。
      • [field:pubdate/]:文章的发布日期,function="..." 可以对日期进行格式化。
  2. 分页标签

    dede栏目下的列表
    (图片来源网络,侵删)
    • 作用:在列表模板中,这个标签用来生成分页导航(如:首页 上一页 1 2 3 4 5 下一页 末页)。
    • 位置:通常放在 {dede:list} 循环标签的后面。
    • 代码{dede:pagelist listsize='4' listitem='index pre pageno next end '/}
      • listsize:显示的页码按钮数量。
      • listitem:定义显示哪些分页元素。
  3. 栏目SEO设置

    • 作用:控制列表页在搜索引擎中显示的标题、关键词和描述。
    • 位置:在后台“栏目管理” -> 选择某个栏目 -> 修改 -> “高级选项”选项卡。
    • 重要标签
      • 栏目名称{dede:field.seotitle/}{dede:field.typename/}
      • 栏目关键词{dede:field.keywords/}
      • 栏目描述{dede:field.description/}
  4. 附加字段

    • 作用:在列表页中,除了默认的标题、日期外,还可能需要显示自定义的字段,如“作者”、“来源”、“点击量”等。
    • 实现方法
      1. 在后台“系统” -> “系统基本参数” -> “核心设置”中,确保“列表附加字段”已经填写了你需要的字段名(如 author,click)。
      2. 在列表模板 {dede:list} 循环中使用 [field:作者字段名/] 来调用。

如何管理栏目列表?(后台操作步骤)

假设你要创建一个新的栏目“产品案例”,并设置其列表页。

步骤 1:创建栏目

dede栏目下的列表
(图片来源网络,侵删)
  1. 登录 DedeCMS 后台。
  2. 菜单栏找到【核心】 -> 【栏目管理】。
  3. 点击【增加顶级栏目】。
  4. 填写栏目信息:
    • 栏目名称:产品案例
    • 栏目目录:products (英文,用于生成URL)
    • 栏目类型:选择“栏目”
    • 列表模板:选择或上传一个列表模板文件(如 list_product.htm),如果留空,则使用系统默认的。
    • 其他SEO设置:填写栏目关键词、描述等。
  5. 点击【确定】,栏目创建成功。

步骤 2:为栏目添加文章

  1. 在【栏目管理】中,点击“产品案例”栏目后面的【新增文档】。
  2. 填写文章标题、内容、缩略图等信息。
  3. 点击【确定】发布,重复此步骤,添加多篇文章。

步骤 3:访问并查看列表页

  1. 在前台网站,通过导航栏访问“产品案例”栏目。
  2. 浏览器会自动生成类似 http://你的网站.com/products/ 的URL。
  3. 你会看到一个页面,循环展示了你添加的所有文章,并带有分页。

常见问题与自定义技巧

如何修改列表页的样式?

  • 方法:直接编辑对应的列表模板文件(如 list_1.htm)。
  • 示例:想在每篇文章标题前加一个图标。
    {dede:list}
        <div class="list-item">
            <i class="fa fa-file-text-o"></i>  <!-- 这里加了一个图标 -->
            <a href='[field:arcurl/]'>[field:title/]</a>
            <span>[field:pubdate function="MyDate('Y-m-d',@me)"/]</span>
        </div>
    {/dede:list}

    然后在你的 CSS 文件中定义 .list-item 的样式即可。

为什么列表页没有内容?

  • 原因1:该栏目下还没有任何文章。
  • 原因2:栏目设置错误,检查栏目类型是否为“栏目”,而不是“外部链接”或“单页”。
  • 原因3:模板标签错误,检查 {dede:list} 标签是否拼写正确,是否被其他标签错误地包含或关闭。
  • 原因4:栏目没有生成,在后台【生成】 -> 【一键生成所有】中,重新生成一下栏目和列表页。

如何在列表页显示文章的缩略图?

  • 方法:在文章编辑时,必须上传“缩略图”,然后在列表模板中调用。
  • 模板代码
    {dede:list}
        <div class="list-item">
            <img src="[field:litpic/]" alt="[field:title/]" width="100" height="100" />
            <a href='[field:arcurl/]'>[field:title/]</a>
        </div>
    {/dede:list}

    [field:litpic/] 就是调用文章缩略图的标签。

如何自定义分页样式?

  • 方法:DedeCMS 的分页标签 {dede:pagelist} 默认输出的是一套固定的 class 名(如 pageinfo, pagepre, pageno 等)。
  • 操作
    1. 找到并打开 /include/arc.listview.class.php 文件。
    2. 搜索 GetPageListDM 函数,你会看到生成分页 HTML 的代码。
    3. 修改 $listdd 等变量中的 class 名,将其改成你想要的 CSS 类名(如 .page-numbers, .prev-page 等)。
    4. 然后在你网站的 CSS 文件中,为这些新的 class 定义样式。

概念 作用 关键点
列表页 展示一个栏目下所有文章的聚合页面 网站的频道页、分类页
列表模板 定义列表页的HTML结构和样式 文件名 list_栏目ID.htm,核心标签 {dede:list}
分页标签 生成文章列表的分页导航 标签 {dede:pagelist},控制显示哪些页码按钮
SEO设置 控制列表页在搜索引擎中的表现 在“栏目管理-高级选项”中设置

掌握 DedeCMS 的列表功能,是进行网站二次开发和内容布局的基础,核心思路就是:后台管理数据 -> 前台模板展示数据,通过灵活运用模板标签,你可以打造出各种风格的列表页面。

-- 展开阅读全文 --
头像
C语言detach函数作用与使用场景是什么?
« 上一篇 前天
dede微信发送消息怎么操作?
下一篇 » 前天

相关文章

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

目录[+]