dede文章URL优化怎么做最有效?

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

下面我将从优化原则、具体操作步骤、进阶技巧三个方面,为你详细讲解如何优化DedeCMS的文章URL。

dede文章url优化
(图片来源网络,侵删)

优化原则(在动手前先明确方向)

一个好的URL应该遵循以下几个原则:

  1. 简洁性:去掉多余的、无意义的字符,如 ?id=123&p=1 等。
  2. 可读性:使用人类能看懂的词汇,而不是一串数字或乱码。/article/seo-tips.html 就比 /article/arc-123.html 更好。
  3. 关键词相关性:在URL中尽可能包含目标页面的核心关键词,这对SEO有直接帮助。
  4. 唯一性:每个URL都应该对应唯一的页面,避免重复内容。
  5. 稳定性:一旦确定,就不要轻易修改,否则会导致大量的404错误,影响SEO。

具体操作步骤(核心部分)

DedeCMS的URL优化主要通过后台的“核心”->“系统基本参数”设置,以及修改模板文件来实现。

步骤1:后台全局设置

这是最基础也是最关键的一步。

  1. 登录DedeCMS后台
  2. 进入 “核心” -> “系统基本参数”
  3. 在左侧菜单中选择 “核心设置”

你需要关注以下几个关键选项:

dede文章url优化
(图片来源网络,侵删)

文件命名规则

这是URL优化的核心,DedeCMS支持两种模式:Rewritestatic

  • 静态模式 (推荐):生成 .html 后缀的静态文件,URL最简洁,对SEO最友好。

    • 设置方法:将“文件命名规则”中的“文章命名规则”修改为:
      {typedir}/{Y}/{M}{D}/{aid}.html
      • 参数解释
        • {typedir}:文章所在栏目目录。
        • {Y}:年份,如 2025
        • {M}:月份,如 10
        • {D}:日期,如 25
        • {aid}:文章ID。
      • 示例URL/jishu/2025/1025/123.html
      • 进阶优化(强烈推荐):将文章标题也加入URL,这样更符合SEO和用户体验。
        {typedir}/{Y}/{M}{D}/{aid}-{title}.html
        • 示例URL/jishu/2025/1025/123-dedecms-url-youhua.html
        • 注意中的中文和特殊符号会被自动转为拼音或下划线,确保URL的有效性。
  • 伪静态模式:URL看起来像静态的,但实际是动态的,需要服务器配置支持(如Apache的mod_rewrite或Nginx的rewrite规则)。

    dede文章url优化
    (图片来源网络,侵删)
    • 设置方法:将“文件命名规则”修改为类似静态的格式,如 {typedir}/{aid}.html
    • 服务器配置:这需要你手动修改服务器的配置文件,DedeCMS官方或网上有很多现成的.htaccess(Apache)或nginx.conf(Nginx)规则可供参考。

是否使用目录默认名

  • 设置方法:将此项设置为“是”。
  • 作用:如果栏目设置了“目录默认页”,访问栏目URL时会默认显示这个页面,而不是栏目列表页,这有助于集中权重。

文章命名规则(栏目页)

  • 设置方法:可以设置为 {typedir}/index.html
  • 作用:让栏目页也生成静态的 index.html 文件,保持URL风格统一。

保存并更新缓存

修改完所有参数后,一定要点击“保存并更新缓存”,否则设置不会生效。

步骤2:修改模板文件

仅仅在后台设置是不够的,你需要修改模板文件,让生成的链接符合你的规则。

  1. 找到文章列表页模板:通常位于 /templets/default/list_article.htm 或你自定义的模板目录下。
  2. 找到文章内容页模板:通常位于 /templets/default/article_article.htm 或你自定义的模板目录下。

在这些模板文件中,找到生成文章链接的代码,通常是:

列表页模板 (list_article.htm)

原始代码可能是:

<a href='[field:arcurl/]'>[field:title/]</a>

这个 [field:arcurl/] 标签会自动调用你在后台“系统基本参数”中设置的“文章命名规则”,只要你后台设置正确,这里的链接就会自动优化。 页模板 (article_article.htm)**

同样,文章内部的链接、面包屑导航等,也都需要使用 [field:arcurl/] 来获取当前文章的正确URL。

面包屑导航优化

面包屑导航对SEO和用户体验非常重要,确保你的面包屑代码能正确生成层级路径。 在 article_article.htm 中,面包屑代码通常是这样的:

<a href='{dede:global.cfg_cmsurl/}/'>首页</a> > {dede:field name='typename'/} > <a href='{dede:field name='arcurl'/}'>{dede:field name='title'/}</a>

这里的 {dede:field name='arcurl'} 会自动使用你优化后的URL。

步骤3:生成和更新

完成以上设置后,你需要重新生成网站内容,让新的URL规则生效。

  1. 更新首页:在后台“更新主页”中生成首页HTML。
  2. 更新栏目:在“栏目管理”中,对每个栏目选择“更新栏目HTML”和“更新栏目下的文档HTML”。
  3. 更新文档:在“文档列表”中,你可以选择“一键生成所有HTML”或批量选择文章进行更新。

进阶技巧与注意事项

  1. 处理已存在的旧URL

    • 问题:网站已经运行了一段时间,有大量文章使用了旧的URL(如 ?aid=123),如果直接改成新的静态URL,会导致用户通过旧链接访问时出现404错误,搜索引擎的索引也会失效。
    • 解决方案:使用 301重定向
      • Apache服务器:在网站根目录的 .htaccess 文件中添加以下规则:
        # 将旧动态URL重定向到新静态URL
        RewriteRule ^article\.php\?aid=(.*)$ /jishu/$1.html [R=301,L]
        # 更通用的规则,将所有旧动态链接重定向
        RewriteCond %{QUERY_STRING} ^aid=(\d+)$
        RewriteRule ^article\.php$ /%1.html? [R=301,L]

        (注意:以上规则需要根据你的实际栏目结构和旧URL格式进行调整)

      • Nginx服务器:在 nginx.conf 或站点的配置文件中添加:
        # 将旧动态URL重定向到新静态URL
        if ($args ~* "aid=(\d+)") {
            rewrite ^/article\.php$ /jishu/$1.html? permanent;
        }
      • DedeCMS自带方法:DedeCMS在开启伪静态后,有一定的兼容性,但不如手动配置301重定向可靠。
  2. URL长度控制 虽然包含标题很好,但如果标题过长,会导致URL变得非常冗长,可以设置一个最大长度,并自动截断,DedeCMS默认会处理,但也可以通过修改include/helpers/archive.helper.php文件来自定义逻辑。

  3. URL中的特殊字符 确保URL中的中文被正确地转换为拼音或拼音加数字,并且空格、特殊符号被替换为连字符或下划线_,DedeCMS默认支持,但可以检查一下后台“系统基本参数”->“核心设置”中的“文件命名规则”是否支持。

  4. 检查robots.txt 确保你的 robots.txt 文件没有禁止搜索引擎抓取你的新URL结构,特别是如果你之前有禁止抓取动态URL,现在改成静态后,需要相应地更新规则。

DedeCMS文章URL优化的核心流程是:

后台设置规则 -> 修改模板调用规则 -> 重新生成内容 -> 处理旧URL重定向

简洁、可读、含关键词是优化URL的黄金法则,花时间做好URL优化,将为你的网站带来长远的SEO收益。

-- 展开阅读全文 --
头像
织梦文章列表分页如何正确调用?
« 上一篇 今天
C语言如何实现十进制转十六进制?
下一篇 » 今天

相关文章

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

目录[+]