dede栏目标题长度限制是多少字符?

99ANYc3cd6
预计阅读时长 14 分钟
位置: 首页 DEDE建站 正文
  1. 后台设置中的标题长度限制:指你在添加或编辑栏目时,输入框允许你输入的最大字符数。
  2. 前端页面显示的标题长度:指网站栏目页面上,实际显示给用户看的标题长度,这个通常需要通过CSS或模板修改来控制。
  3. 搜索引擎优化的标题长度建议:从SEO角度出发,栏目标题在搜索引擎结果中(SERP)显示的最佳长度。

下面我们逐一展开说明。

dede栏目标题长度
(图片来源网络,侵删)

后台设置中的标题长度限制

在DedeCMS的后台,添加或编辑栏目时,标题输入框默认是有限制的,这个限制通常由数据库字段长度决定。

  • 默认情况: 在DedeCMS的默认安装中,dede_arctype表(栏目表)的typename字段(即栏目名称)的长度是 50个字符,这里的“字符”指的是英文字母、数字,以及一个汉字都算作一个字符(因为DedeCMS早期版本使用的是varchar类型,一个中文字符在UTF-8编码下可能占用多个字节,但在varchar长度限制中通常按字符数计算)。

  • 如何修改后台限制: 如果你发现50个字符不够用,需要修改数据库字段长度,这是一个需要谨慎操作的技术活。

    操作步骤:

    dede栏目标题长度
    (图片来源网络,侵删)
    1. 备份数据库:在进行任何数据库修改之前,请务必备份你的整个数据库!这是防止数据丢失的关键步骤。
    2. 登录数据库管理工具:使用phpMyAdmin或其他数据库管理工具登录你的网站数据库。
    3. 找到并修改字段
      • 在左侧选择你的DedeCMS数据库。
      • 找到 dede_arctype 表(如果你的表前缀不是dede_,请使用你的实际前缀)。
      • 点击“结构”或“Structure”,找到 typename 字段。
      • 点击“更改”或“Change”。
      1. 调整长度:在“长度/值”一栏,将 50 修改为你想要的值,100
      2. 保存:点击“执行”或“Go”保存修改。

    修改后:重新登录DedeCMS后台,你会发现栏目标题的输入框可以输入更长的文字了。


前端页面显示的标题长度

即使后台允许你输入很长的标题,但直接显示在页面上可能会破坏页面布局,显得不美观,通常需要在前端进行长度控制。

控制方式主要有两种:CSS截断PHP截断

使用CSS进行样式控制(推荐)

这是最简单、最常用的方法,它不会改变标题的实际内容,只是在页面上显示时进行截断,并用省略号(...)表示。

dede栏目标题长度
(图片来源网络,侵删)

操作步骤:

  1. 找到模板文件:进入DedeCMS后台的“模板” -> “默认模板管理”,找到你的栏目列表页模板,通常是 list_article.htm

  2. 修改CSS样式:在模板文件的 <head> 部分或外部的CSS文件中,添加以下样式:

    样式 {
        width: 200px; /* 设置一个固定的宽度,这是截断的前提 */
        white-space: nowrap; /* 防止文字换行 */
        overflow: hidden;   /* 隐藏超出宽度的部分 */
        text-overflow: ellipsis; /* 用省略号(...)来表示被隐藏的部分 */
    }
  3. 应用样式到标题:在模板文件中,找到输出栏目标题的代码,通常是 {dede:type}[field:typename/]{/dede:type} 或类似代码,给它加上一个 class 属性。

    修改为:

    {dede:type}
        <a href="[field:typelink/]" class="栏目标题样式">[field:typename/]</a>
    {/dede:type}

    的宽度超过了你设定的 200px,它就会自动显示省略号。

使用PHP进行函数截断

这种方法会从后台数据层面就截断标题,显示的就是被截断后的短标题。

操作步骤:

  1. 找到模板文件:同样是 list_article.htm

  2. 使用DedeCMS自带的截断函数:DedeCMS提供了一个 cn_substr() 函数,可以按字符数截断字符串。

    语法:{dede:field.function='cn_substr(@me, 截断字符数')/}

  3. 应用到栏目标题:在模板中修改栏目标题的调用方式。

    将:

    {dede:type}[field:typename/]{/dede:type}

    修改为:

    {dede:type}
        <a href="[field:typelink/]">[field:typename function='cn_substr(@me, 20)'/]</a>
    {/dede:type}

    这里的 20 表示只显示前20个字符,一个汉字算一个字符,一个英文也算一个字符。

两种方式的对比:

特点 CSS截断 PHP截断
实现方式 前端样式控制 后端数据处理
对SEO影响 无影响,搜索引擎抓取的是完整的原始标题。 有影响,搜索引擎抓取的是被截断的短标题。
灵活性 高,可以随时通过修改CSS来调整显示效果。 低,修改后需要更新栏目页才能生效。
适用场景 绝大多数情况,特别是希望保持栏目标题完整性的SEO优化。 非常长,且确定短标题已足够表达含义时。

从SEO和用户体验角度,强烈推荐使用CSS截断方式


搜索引擎优化的标题长度建议

虽然DedeCMS后台可以设置很长的标题,但从SEO角度看,栏目标题不宜过长或过短。

  • Google建议:Google建议 标题标签(Title Tag)的长度最好在 50-60个字符 之间,超过这个长度,标题在搜索结果中可能会被截断,显示为“...”。
  • 百度建议:虽然没有一个绝对精确的数字,但百度也倾向于显示长度适中的标题,一般建议 控制在30个汉字以内(约60个字符),以确保标题完整显示。

为什么重要?

  • 用户体验:用户在搜索结果中看到的是完整的、有意义的标题,而不是一串被截断的文字。
  • 关键词权重是页面最重要的关键词位置之一,过长的标题会稀释核心关键词的权重,而过短则可能无法准确描述栏目内容。

如何为DedeCMS栏目设置SEO标题? 聪明的做法是,让栏目名称用于页面布局显示(可以适当长一些),而专门设置一个用于SEO的标题。

  1. 利用DedeCMS的“栏目SEO标题”字段: 在后台添加/编辑栏目时,你会看到“栏目名称”、“栏目目录”、“栏目SEO标题”等字段。

    • 栏目名称:保持简洁,用于前端显示(可用CSS控制长度)。
    • 栏目SEO标题:在这里填写你精心优化的、符合长度建议的标题,深圳网站建设公司 - 专业定制化网站解决方案”,这个标题会专门用于 <title>
  2. 修改模板文件: 在你的 list_article.htm 模板文件中,找到 <title> 标签部分,将 [field:typename/] 替换为 [field:seotitle/][field:typename/]

    修改前可能是:

    修改后可以确保优先使用SEO标题:

        {dede:field.seotitle runphp='yes'}
            @me = (@me == '' ? @me : @me);
        {/dede:field.seotitle}
        {dede:field.title/} - {dede:global.cfg_webname/}
    </title>

    这段PHP代码的意思是:seotitle 字段不为空,就使用它;如果为空,则回退到使用 title(即栏目名称)。


问题层面 解决方案 关键点
后台输入限制 修改数据库 dede_arctype 表中 typename 字段的长度。 操作前务必备份数据库!
前端页面显示 推荐使用CSS text-overflow: ellipsis; 不影响SEO,灵活美观。
SEO优化 使用“栏目SEO标题”字段,并控制长度在30-60个字符。 优化搜索引擎展示效果,提升点击率。

通过以上三个层面的调整,你就可以完全掌控DedeCMS中栏目标题的长度,既满足了后台管理的需求,又保证了前端页面的美观,同时还能进行有效的SEO优化。

-- 展开阅读全文 --
头像
dede后台标题怎么修改?
« 上一篇 今天
织梦CMS自定义字段如何添加使用?
下一篇 » 今天

相关文章

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