dede调用文章标题

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

页 (article_article.htm) 调用当前文章标题

这是最简单的情况,因为在文章内容页,你当前就在这篇文章的“上下文”中,所以可以直接使用系统自带的变量。

代码:

<h1>{dede:field.title/}</h1>

说明:

  • {dede:field.title/} 是一个字段调用标签,专门用于获取当前文章的标题。
  • field 表示这是一个“字段”,后面紧跟字段名 title
  • 这个标签只能在文章内容页、文章页模板等单篇文章页面中使用。

在列表页 (list_article.htm) 调用文章标题

列表页用于显示一篇文章列表,你需要循环调用列表中每篇文章的标题。

代码:

{dede:list pagesize='10'}
    <li>
        <a href="[field:arcurl/]">[field:title/]</a>
    </li>
{/dede:list}

说明:

  • {dede:list} 是一个列表循环标签,它会从数据库中获取指定数量的文章(pagesize='10' 表示每页显示10篇)。
  • [field:title/] 在循环标签内部,用于获取当前循环到的这一篇文章的标题。
  • [field:arcurl/] 用于获取这篇文章的链接地址,这样用户才能点击标题跳转到文章详情页。

在首页、栏目页或其他任意页面调用指定栏目或指定ID的文章标题

这是最灵活也是最常用的方法,通常用于首页推荐、热门文章、最新文章等场景,这里我们使用强大的 {dede:arclist}

场景1:调用指定栏目ID下的文章标题

假设你要调用栏目ID为 1 的栏目下的5篇文章标题。

代码:

{dede:arclist typeid='1' titlelen='30' row='5'}
    <li>
        <a href="[field:arcurl/]" title="[field:title/]">[field:title/]</a>
    </li>
{/dede:arclist}

说明:

  • {dede:arclist} 是一个万能的文章列表调用标签。
  • typeid='1':指定调用栏目ID为 1 的文章,如果省略此属性,则默认调用当前栏目的文章,len='30'长度限制,最多显示30个汉字(一个汉字算2个字节,所以是15个字符),超出部分用省略号...` 代替。
  • row='5':调用文章的数量,这里是5篇。
  • [field:arcurl/]:文章链接。
  • [field:title/]

场景2:调用全站最新文章标题

不指定 typeid,即可调用全站最新的文章。

代码:

<h3>最新文章</h3>
<ul>
    {dede:arclist row='10' titlelen='20'}
        <li><a href="[field:arcurl/]" title="[field:title/]">[field:title/]</a></li>
    {/dede:arclist}
</ul>

场景3:调用特定频道(如图片集、软件)的文章标题

如果你的网站有不同类型的频道(文章、图集、软件等),可以通过 channelid 来指定。

代码:

  • 调用文章频道(默认):
    {dede:arctype typeid='1'}
        {dede:arclist row='5'}
            <a href="[field:arcurl/]">[field:title/]</a>
        {/dede:arclist}
    {/dede:arctype}
  • 调用图集频道:
    {dede:arctype typeid='2'}  <!-- 假设图集频道ID为2 -->
        {dede:arclist row='5' channelid='2'} <!-- channelid='2' 指定调用图集 -->
            <a href="[field:arcurl/]" title="[field:title/]">
                <img src="[field:picname/]" alt="[field:title/]" />
                <span>[field:title/]</span>
            </a>
        {/dede:arclist}
    {/dede:arctype}

调用带特定样式的标题(如加粗、不同颜色)

有时你可能想让标题有不同的样式,可以通过 runphp 属性来实现,但这稍微复杂一点,更简单的方法是使用 if 判断。

示例1:让第一篇文章标题加粗

{dede:arclist row='5'}
    <li>
        <!-- 如果是第一篇文章(idlist='0'),则加上 strong 标签 -->
        [field:global name=autoindex runphp="yes"]
            if(@me == 1) @me = "<strong>";
            else @me = "";
        [/field:global]
        <a href="[field:arcurl/]" title="[field:title/]">[field:title/]</a>
        [field:global name=autoindex runphp="yes"]
            if(@me == 1) @me = "</strong>";
            else @me = "";
        [/field:global]
    </li>
{/dede:arclist}
  • name='autoindex' 会获取当前循环的序号(从1开始)。

示例2:更简单的样式控制

我们通过外部的 CSS 类来控制样式,而不是在模板里写死 HTML 标签,这样更灵活。

HTML:

<ul class="news-list">
    {dede:arclist row='5'}
        <li class="news-item">
            <a href="[field:arcurl/]" class="news-link">[field:title/]</a>
        </li>
    {/dede:arclist}
</ul>

CSS:

.news-list .news-link {
    color: #333;
    text-decoration: none;
}
.news-list .news-item:nth-child(1) .news-link { /* 让第一个标题加粗 */
    font-weight: bold;
    color: #f00;
}

总结与快速参考

场景 核心标签 示例代码
{dede:field.title/} <h1>{dede:field.title/}</h1>
列表页 {dede:list} {dede:list}<a href="[field:arcurl/]">[field:title/]</a>{/dede:list}
首页/栏目页调用 {dede:arclist} {dede:arclist typeid='1' row='5'}<a href="[field:arcurl/]">[field:title/]</a>{/dede:arclist}
长度 titlelen 属性 {dede:arclist titlelen='20'}
获取文章数量 row 属性 {dede:arclist row='10'}

希望这份详细的指南能帮助你顺利地在 DedeCMS 中调用文章标题!如果你有更具体的需求,比如调用副标题、文章关键词等,也可以使用类似的方法,只需将 title 换成相应的字段名即可(如 descriptionkeywords)。

-- 展开阅读全文 --
头像
C语言如何精准判断字符串长度?
« 上一篇 今天
织梦手机端调用标签如何正确使用?
下一篇 » 今天
取消
微信二维码
支付宝二维码