织梦canonical标签在哪里添加
canonical标签的作用
canonical标签(规范链接标签)用于告诉搜索引擎,当前页面虽然有多个可访问URL,但哪个是「权威版本」。搜索引擎会把权重、流量归并到canonical指定的URL上,避免重复内容分散权重。对于织梦DedeCMS这类容易产生多URL共存的系统,canonical是解决重复收录的核心手段之一。
canonical标签放在HTML的 <head> 区域,格式为:
<link rel="canonical" href="规范URL地址" />
一、文章页添加canonical
文章页是最需要添加canonical的页面类型。织梦文章可能通过静态地址、伪静态地址、动态地址等多种方式访问,必须指定一个规范URL。
操作位置
编辑文章内容页模板,默认路径为 /templets/default/article_article.htm(具体取决于使用的模板)。在 <head> 与 </head> 之间插入:
<link rel="canonical" href="{dede:field name='arcurl'/}" />
这里 {dede:field name='arcurl'/} 是织梦标签,会自动输出当前文章的规范URL。如果需要绝对地址,可以配合站点域名:
<link rel="canonical" href="https://www.example.com{dede:field name='arcurl'/}" />
二、列表页添加canonical
栏目列表页存在分页首页与栏目首页重复、列表多套URL等问题,同样需要canonical。
操作位置
编辑列表页模板,默认路径 /templets/default/list_article.htm,在head中加入:
<link rel="canonical" href="{dede:field name='typeurl'/}" />
注意:分页的第2页、第3页等,canonical应指向当前分页URL而非第一页,否则会被搜索引擎忽略。可以通过判断当前页码来动态输出:
<link rel="canonical" href="{dede:field name='typeurl'/}list_{dede:field name='typeid'/}_{dede:pagelist listsize='0' listitem='pageno'/}.html" />
三、首页添加canonical
首页可能通过 /、/index.html、/index.php 多种方式访问,需要统一指向根域名。
操作位置
编辑首页模板 /templets/default/index.htm,在head中加入固定写法:
<link rel="canonical" href="https://www.example.com/" />
把域名换成自己的实际域名即可。
四、单页和自定义页面
织梦的单页文档(如关于我们、联系方式)和自定义页面也需要添加canonical。编辑对应模板,单页模板通常是 /templets/default/article_single.htm。
<link rel="canonical" href="{dede:field name='arcurl'/}" />
如果单页URL是固定路径,也可以直接写死:
<link rel="canonical" href="https://www.example.com/about.html" />
各页面添加位置汇总
| 页面类型 | 模板文件 | canonical写法 |
|---|---|---|
| 首页 | index.htm | 固定域名 |
| 文章页 | article_article.htm | {dede:field name='arcurl'/} |
| 列表页 | list_article.htm | {dede:field name='typeurl'/} |
| 单页 | article_single.htm | 固定URL或arcurl标签 |
| 搜索页 | search.htm | 建议用noindex替代 |
添加注意事项
- 必须用绝对URL: canonical的href值要带协议和域名(https://www.example.com/xxx),不能用相对路径。
- 指向真实可访问页面: canonical指向的URL必须返回200且内容与当前页一致,不能指向404或已跳转的页面。
- 不要链式指向: A页canonical指向B,B就不要再指向C,避免形成链式归并被搜索引擎忽略。
- 分页不要全指向首页: 这是常见错误,分页canonical应指向自身分页URL。
- 与301配合: 对于确定要废弃的URL,301跳转比canonical更彻底;canonical适合无法做301的场景。
验证与持续维护
所有模板添加canonical后,重新生成全站HTML,然后用浏览器查看页面源码,确认每个页面head中都正确输出了canonical标签。可以借助百度搜索资源平台的「URL提交」和「索引量」工具,观察重复URL是否被逐步归并。canonical生效需要一定周期,通常几周到几个月,期间保持标签配置稳定不要频繁更改。把canonical作为URL规范化的常规配置,长期坚持能有效集中页面权重,提升目标关键词的排名竞争力。