dede变量一句代码如何使用?

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

下面我将从最基础到复杂,为您展示如何用一句代码(一个标签)来调用各种 DedeCMS 变量。

dede变量为一句代码
(图片来源网络,侵删)

最核心的变量调用代码结构

所有 DedeCMS 的变量调用都遵循这个基本结构:

{dede:变量名 属性='值'}
    [field:子变量名/]
{/dede:变量名}
  • {dede:变量名 ...} 是开始标签,用来定义你要获取什么类型的数据(比如文章、栏目、会员等)。
  • [field:子变量名/] 是内部标签,用来显示具体变量的值。
  • {/dede:变量名} 是结束标签。

常用变量调用示例(“一句代码”实现)

以下是一些最常用、最核心的变量调用示例,它们都是独立的“一句代码”。

调用文章列表中的变量(在列表页 arclist.htm 中)

这是最常见的情况,比如在首页或栏目页显示文章列表。

  • 显示文章标题:

    dede变量为一句代码
    (图片来源网络,侵删)
    {dede:arclist row='10' titlelen='30'}
        <a href="[field:arcurl/]">[field:title/]</a>
    {/dede:arclist}
    • row='10':调用10篇文章。
    • titlelen='30'长度限制为30个字符。
    • [field:arcurl/]:文章链接。
    • [field:title/]
  • 显示文章摘要(带省略号):

    {dede:arclist row='5'}
        [field:description function='cn_substr(@me,100)'/]...
    {/dede:arclist}
    • [field:description/]
    • function='cn_substr(@me,100)':使用函数截取摘要前100个字符。
  • 显示文章发布时间(格式化日期):

    {dede:arclist row='5'}
        [field:pubdate function='strftime("%Y-%m-%d",@me)'/]
    {/dede:arclist}
    • function='strftime(...)':使用PHP的strftime函数来格式化日期时间戳。
  • 显示文章缩略图:

    {dede:arclist row='5'}
        <img src="[field:litpic/]" alt="[field:title/]">
    {/dede:arclist}
    • [field:litpic/]:文章的缩略图地址。

调用单个文章内容页的变量(在文章页 article_article.htm 中)

当用户点击一篇文章进入详情页时,你需要调用这篇文章自身的变量。

dede变量为一句代码
(图片来源网络,侵删)
  • 显示文章标题:

    {dede:field.title/}
    • 这是一个简化的写法,等同于 {dede:field name='title'/}
  • 显示文章内容:

    {dede:field.body/}
    • [field.body/] 是文章的主体内容。
  • 显示文章来源:

    {dede:field.source/}
  • 显示文章作者:

    {dede:field.writer/}
  • 显示文章点击数:

    {dede:field.click/}

调用栏目相关变量(在栏目页或文章页中)

  • 获取当前栏目的名称:

    {dede:field name='typename'/}
  • 获取当前栏目的链接:

    {dede:field name='typeurl'/}

调用系统全局变量(在任意页面)

这些是网站的全局配置信息。

  • 显示网站名称:

    {dede:global.cfg_webname/}
  • 显示网站关键词:

    {dede:global.cfg_keywords/}
  • 显示网站描述:

    {dede:global.cfg_description/}

调用循环外的变量(自由列表)

有时候你只想调用一个特定的变量,而不需要循环。

  • 调用指定ID的文章标题:
    {dede:arclist idlist='1'}
        [field:title/]
    {/dede:arclist}
    • idlist='1' 表示只调用文章ID为1的文章,因为只调用一条,所以循环只执行一次。

进阶:使用函数处理变量

这是DedeCMS非常强大的功能,可以在调用变量时直接进行处理。

  • 并添加“更多”链接:

    [field:title function='(strlen("@me")>30 ? cn_substr("@me",30)."..." : "@me")'/]
    • strlen("@me")长度。
    • cn_substr("@me",30)前30个字符。
    • 三元运算符,如果标题长度大于30,则截断并加省略号,否则原样显示。
  • 将摘要中的HTML标签去掉:

    [field:description function='htmlspecialchars(strip_tags(@me))'/]
    • strip_tags(@me):去除所有HTML标签。
    • htmlspecialchars(...):将特殊字符转换为HTML实体,防止XSS攻击。

DedeCMS的“一句代码”通常指的就是一个 {dede:...} 标签,你需要根据需求选择正确的标签名(如 arclist, field)和属性(如 row, idlist),然后在内部用 [field:...] 来获取具体的值。

需求 核心代码(一句代码) 说明
获取文章列表 {dede:arclist row='10'}[field:title/]{/dede:arclist} 最常用的列表调用标签
获取文章标题 {dede:field.title/} 在文章详情页调用当前文章标题
获取栏目名称 {dede:field.name='typename'/} 在栏目页或文章页调用当前栏目名
获取网站名称 {dede:global.cfg_webname/} 在任意页面调用网站全局配置
获取带格式的日期 [field:pubdate function='strftime("%Y-%m-%d",@me)'/] 在列表页调用并格式化文章发布时间
-- 展开阅读全文 --
头像
dede数据库5m大小是否正常?
« 上一篇 02-26
dede留言板在哪里看
下一篇 » 02-26

相关文章

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

目录[+]