织梦标签如何单个栏目调用?

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

核心标签

  1. {dede:channel}:用于获取栏目(栏目表dede_arctype)的信息。

    织梦标签单个栏目调用
    (图片来源网络,侵删)
    • 用途:获取栏目的名称、链接、ID、描述、图标等。
    • 常用属性typeid(指定栏目ID)、row(调用数量)、type(栏目类型)等。
  2. {dede:arclist}:用于获取文章(文档表dede_archives)的信息。

    • 用途:调用指定栏目下的文章列表,显示文章标题、时间、点击量等。
    • 常用属性typeid(指定栏目ID)、row(调用文章数量)、titlelen长度)、infolen(摘要长度)等。

使用 channel 标签调用栏目基本信息

如果你只想获取并显示某个栏目本身的信息,比如栏目名称和链接,这是最直接的方法。

场景:在网站的页脚或侧边栏,显示“关于我们”这个栏目的名称和链接。

步骤:

织梦标签单个栏目调用
(图片来源网络,侵删)
  1. 找到栏目ID

    • 登录织梦后台,进入“栏目管理”。
    • 找到你想要调用的栏目(关于我们”),将鼠标悬停在该栏目上,浏览器状态栏会显示一个链接,如 .../catalog_add.php?cid=3,这里的 cid=3 就是该栏目的ID,或者直接点击栏目,在URL中也能看到 typeid=3
  2. 在模板文件中使用标签

    • 打开你想要显示栏目的模板文件(footer.htm)。
    • 在需要的位置插入以下代码:
    <a href="{dede:field name='typeurl'/}">{dede:field name='typename'/}</a>
    • 如何指定栏目ID?

      • 方法A (推荐,最灵活):在 channel 标签中直接指定 typeid

        织梦标签单个栏目调用
        (图片来源网络,侵删)
        <!-- 调用ID为3的栏目 -->
        <a href="{dede:channel typeid='3' type='self'}">
            {dede:field name='typename'/}
        </a>
        • typeid='3':明确指定调用ID为3的栏目。
        • type='self':表示只调用当前栏目本身的信息,而不是其子栏目。
      • 方法B (常用):在模板中定义一个变量,然后调用,这种方式在循环调用多个栏目时非常有用。

        {dede:channel typeid='3' type='self'}
            <a href="[field:typeurl/]">[field:typename/]</a>
        {/dede:channel}
        • [field:typeurl/]{dede:field name='typeurl'/} 是等效的,都是调用当前标签所指向栏目的URL。
        • [field:typename/]{dede:field name='typename'/} 是等效的,调用栏目名称。

使用 arclist 标签调用栏目下的文章列表

这是最常见的需求:显示某个特定栏目下的最新文章、推荐文章等。

场景:在首页的某个位置,专门显示“产品中心”栏目的最新5篇文章。

步骤:

  1. 找到栏目ID:同上,假设“产品中心”的栏目ID是 5

  2. 在模板文件中使用 arclist:

    • 打开首页模板文件 index.htm 或其他模板文件。
    • 在需要显示文章列表的位置插入以下代码:
    <ul>
        {dede:arclist typeid='5' row='5' titlelen='30' orderby='pubdate'}
            <li>
                <a href="[field:arcurl/]">[field:title/]</a>
                <span>[field:pubdate function="MyDate('Y-m-d', @me)"/]</span>
            </li>
        {dede:arclist}
    </ul>

代码详解:

  • typeid='5'核心属性,指定调用哪个栏目下的文章,如果省略,则默认调用当前栏目(如首页调用其指定的栏目,内容页调用其所属栏目)下的文章。
  • row='5':调用文章的数量,这里设置为5条,len='30'`:标题字符长度,超过30个字符会自动截断。
  • orderby='pubdate':排序方式。pubdate 按发布时间排序,click 按点击量排序,id 按文章ID排序。
  • [field:arcurl/]:文章的完整链接地址。
  • [field:title/]
  • [field:pubdate function="MyDate('Y-m-d', @me)"/]:文章发布时间,这里使用了function对时间进行格式化,'Y-m-d'是格式化后的样式(如 2025-10-27),@me代表原始的时间戳。

常用属性速查表

属性名 说明 示例
{dede:channel} typeid 指定要调用的栏目ID typeid='3'
row 调用的栏目数量 row='10'
type 栏目类型,top顶级栏目,son子栏目,self当前栏目 type='self'
{dede:arclist} typeid 指定要调用的文章所属的栏目ID typeid='5'
row 调用的文章数量 row='8'
infolen 摘要长度(汉字数) infolen='120'
orderby 排序方式 orderby='click' (按点击量)
orderway 排序方向,desc降序,asc升序 orderway='desc'
通用 [field:xxx/] 调用字段内容,如标题、链接等 [field:title/]

总结与最佳实践

  1. 明确需求:首先确定你是要调用栏目本身的信息(名称、链接),还是调用栏目下文章的信息(列表)。

    • 调用栏目信息 -> 用 {dede:channel}
    • 调用文章列表 -> 用 {dede:arclist}
  2. 获取IDtypeid 是调用单个栏目的关键,务必先在后台找到正确的栏目ID。

  3. 灵活运用

    • 如果只想在模板的某个位置显示一个栏目名和链接,直接用 {dede:channel typeid='X' type='self'}[field:typename/]{/dede:channel} 即可。
    • 如果要生成一个带样式的文章列表,用 {dede:arclist typeid='X' ...} 并配合循环标签(如<ul><li>)。
  4. 调试技巧:如果标签不生效,最常见的原因是 typeid 错误,请务必反复核对后台的栏目ID,检查模板文件是否正确保存,并确保后台的“生成HTML”操作已执行。

通过以上方法,你就可以灵活地在织梦CMS的任何模板中调用单个栏目的信息了。

-- 展开阅读全文 --
头像
C语言intrinsic函数究竟有何特殊作用?
« 上一篇 03-01
dede 百度主动推送
下一篇 » 03-01

相关文章

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