前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >typecho程序增加url唯一标签canonical教程

typecho程序增加url唯一标签canonical教程

作者头像
cmsboy
发布2023-03-10 10:18:55
1.2K0
发布2023-03-10 10:18:55
举报
文章被收录于专栏:缘梦の镇缘梦の镇

本站从2023年1月18日接手后就发现包括首页、文章页、独立页面等页面存在首页分页、评论分页等的收录导致页面相同链接不同的问题。

没有canonicall导致首页分页的收录
没有canonicall导致首页分页的收录

对于一个小白seo有什么方法解决呢?

canonicall

在seo里面对于重复内容不同链接的解决方法就是使用canonicall,那么canonicall是什么呢?

canonical标签是一种告诉搜索引擎您要在搜索结果中显示哪个版本的URL的方法。使用canonical标签可以防止由于相同(或非常相似)或“重复”内容出现在多个URL上而引起的问题。

这种重复的内容可能是多种形式出现的,包括:

  1. 可在URL中添加或不添加“ www”前缀的网页
  2. 可通过“ HTTP”和“ HTTPS”协议访问网页
  3. 同一样目下的多个列表页。

如果出现多个不同的URL地址访问到的页面都是首页,这时就可以使用canonical标签来规范首页网址,假设统一规范为https://cmsboy.cn,这时就需要在其他3个页面head标签内加上下面的一段代码:

代码语言:javascript
复制
<link rel="canonical"  href="https://cmsboy.cn">

正确使用唯一标签canonical

很简单就是确定唯一页面,比如说本站首页是:cmsboy.cn 而抢它的页面链接是cmsboy.cn/page/2/而它们的标题都是“缘梦の镇”因此我们确定唯一链接为cmsboy.cn。

首页分页后canonicall到首页链接
首页分页后canonicall到首页链接

又比如我们的文章页链接是:cmsboy.cn/archives/530.html 而它的重复链接是cmsboy.cn/archives/530.html/comment-page-1#comment-848的评论分页链接。这个页面是评论衍生链接因此我们确定唯一链接就是cmsboy.cn/archives/530.html。

在typecho使用canonical

目前来说市面上很多typecho的主题都是没有canonical唯一标签的,因此我们就需要自己更改代码。

站长也是每次接手到没有canonical唯一标签的typecho站点时都需要去找代码来改主题。太麻烦了直接写个文章统计上代码吧!

为typecho主题增加canonical教程

1、下载你的主题放入typecho程序的/usr/themes/路径中。

如果你的主题已经在/usr/themes文件夹里面请忽略第一步。

2、在/usr/themes/找到我们对应的主题名称的文件夹打开它。

我的主题文件夹是handsome。

typecho程序中/usr/themes/里的handsome文件夹
typecho程序中/usr/themes/里的handsome文件夹

3、打开主题文件夹后打开index.php文件确定自己主题的头部文件header.php路径并打开。

typecho程序handsome主题里的文件
typecho程序handsome主题里的文件
typecho程序handsome主题里的index.php文件
typecho程序handsome主题里的index.php文件

我的typecho主题的header.php文件路径是:component/header.php

因此我们需要打开component文件夹并打开header.php文件。

4、从打开的header.php头部文件找到第一次出现 <link 的位置。

我的header.php头部文件第一次出现 <link是在第304行,各位可以使用ctrl+f搜索它。随后在 <link这行代码的后面或者下面加上canonical代码。

typecho程序handsome主题里的header.php文件
typecho程序handsome主题里的header.php文件

在这行代码的上面或者下面加上以下代码:

代码语言:javascript
复制
<?php if ($this->is('index')): ?><link rel="canonical" href="<?php $this->options->siteUrl(); ?>" />
<?php endif; ?>

判断当前链接是否为typecho首页页面如果是就出现canonical唯一标签指向到首页链接如果不是则不出现此代码。

(主要用于主页分页处理)

在header.php文件加的canonical唯一标签代码
在header.php文件加的canonical唯一标签代码
代码语言:javascript
复制
<?php if ($this->is('post')): ?><link rel="canonical" href="<?php $this->permalink() ?>" />
<?php endif; ?>

判断当前链接是否为typecho文章页如果是就出现canonical唯一标签指向到文章链接如果不是则不出现此代码。

(用于处理文章衍生的评论链接以及文章分页链接)

代码语言:javascript
复制
<?php if ($this->is('page')): ?><link rel="canonical" href="<?php $this->permalink() ?>" />
<?php endif; ?>

判断当前链接是否为typecho独立页面如果是就出现canonical唯一标签指向到独立页面链接如果不是则不出现此代码。

(用于处理独立页面衍生的评论链接)

目前仅收集了以上3种判断以及出现canonical唯一标签的方法,还差tag页面以及作者页的判断。如有会的敬请评论贡献代码啊。

typecho判断页面出现canonical优化代码

如果觉得以上3个代码都比较麻烦那就复制我们优化过的判断代码吧。

此处内容需要评论回复后(审核通过)方可阅读。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2023 年 02 月,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • canonicall
    • 正确使用唯一标签canonical
    • 在typecho使用canonical
      • 为typecho主题增加canonical教程
        • typecho判断页面出现canonical优化代码
        领券
        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档