首页<keywords>标签优化
与<title>标签不同,首页的<keywords>标签,优化者根据情况可以选择写,也可以选择不写。它们的基本原则和判断标准来源于两点:
— 关键词是否和网页内容不相关?
— 关键词是否会产生堆砌?
如果上述两个问题的答案都是肯定的,那么建议删除这个标签;如果答案都是否定的,优化者可以设置很精准,同时不产生堆砌的关键词,那么建议进行合理的设置。
以织梦为例,首页的<keywords>标签源代码如下:
<meta name="keywords" content="{dede:global.cfg_keywords/}" />
优化者可以直接修改上述代码加入自己的关键词,也可以登录织梦后台,在左侧管理菜单中依次点击“系统”→“系统基本参数”→“站点参数”→“站点默认关键字”进行填写,如图5.22所示。
图5.22 站点默认关键词
首页<description>标签优化
<description>标签就是我们常说的描述标签,在网站首页中,描述标签对搜索引擎展示网站简介时比较有帮助,可以促进搜索用户的点击,所以建议搜索引擎优化者要认真撰写这个标签。
和<keywords>标签一样,描述标签同样需要注意不刻意堆砌关键词,不产生和网站主题无关的词汇——如果做不到,那还不如不写。
以织梦为例,首页的<description>标签源代码如下:
<meta name="description" content="{dede:global.cfg_description/}" />
优化者可以直接修改上述代码加入自己的描述语句,也可以登录织梦后台,在左侧管理菜单中依次点击“系统”→“系统基本参数”→“站点参数”→“站点描述”进行填写,如图5.23所示。
图5.23 站点描述
在通常情况下,网站描述不应该太长,以不超过100个汉字为宜。
首页<h>标签优化
<h>标签的作用主要是为了用户体验,附带的才是对搜索引擎有指引作用。它主要是以不同的字号大小的方式来强调内容,以便访问用户快速浏览。说不上<h>标签的设置对搜索引擎优化有什么“质”的飞跃,但是它的作用不可或缺,建议站长都仔细进行设置。
在网站首页中,<h>标签通常会设置1~2层,也就是<h1>、<h2>,过多就没必要了,效果也不一定会好。
在织梦默认的首页中,<h1>定义成了网站顶部的logo,代码如下:
<h1>
<a href="{dede:global.cfg_basehost/}">
<img src="{dede:global.cfg_templets_ skin/}/images/logo.gif"
alt=" {dede:global.cfg_webname/}"/></a>
</h1>
在当今的网站中,有很多站点也将首页的logo之类的设置成<h1>,但是大多数优化者认为这样的设置并没有实际的效果,所以建议将默认模板中的<h1>去掉,放在其他地方。
<h1>标签在网站首页中的位置比较灵活,根据站点的情况,可以定义为站名(品牌名),也可以定义为主要的关键词。从位置上说,<h1>标签应该尽量存在于页面的首屏显眼位置,以方便用户看到;从内容上来说,<h>系列标签用于文字的效果比较好,如图5.24所示。
图5.24 <h1>标签
<h2>标签一般用于对栏目等二级关键词进行说明,可以灵活地分布在首页中,如图5.25所示。
图5.25 <h2>标签
至于其他的<h3>、<h4>等标签,站长可以根据自身网站的情况进行设置,也可以不用出现。
5.2.2 栏目(频道、分类)页代码和标签优化
栏目页其实就可以看成是一个小的频道的“首页”,但是它和首页的区别在于栏目页会存在很多当前栏目下的文章列表,而有一定经验的优化者都知道,栏目页代码精简并不难,难点在于列表页的收录和排名上。
栏目页模板位置和文件
在织梦CMS中,栏目页有两种存在方式:一种是类似于首页的方式,一种是列表方式。
类似于网站首页的模板文件位置是:
网站根目录 > templets > default > index_article.htm
通过登录后台使用“文件式管理器”找到上述文件即可进行修改。另外一种方法是通过后台的“模板”→“默认模板管理”→“文章频道封面”进行管理,如图5.26所示。
图5.26 文章频道封面模板
上述模板是类似于网站首页的模板格式,适合大型网站或者内容比较多的网站采用,普通中小型网站一般会采用列表方式作为栏目页,具体的模板文件位置是:
网站根目录 > templets > default > list_article.htm
通过登录后台使用“文件式管理器”找到上述文件即可进行修改。另外一种方法是通过后台的“模板”→“默认模板管理”→“默认文章列表模板”进行管理,如图5.27所示。
图5.27 默认文章列表模板
以中小型网站为例,下面主要以列表方式的栏目页代码和标签优化作为主要案例进行介绍。
栏目页代码精简
在默认情况下,栏目页的代码精简比较简单,从功能上说,需要删除的就是栏目页中的各种广告位置,如图5.28所示。
图5.28 栏目页广告位置
只需要删除织梦默认定义的广告位即可,设计的代码很简单:
<div id="listRtPicAD2" style="margin:10px auto">{dede:myad name='listRtPicAD2'/}</div>
<div id="listRtPicAD" style="margin:10px auto">{dede:myad name='listRtPicAD'/}</div>
上述广告位在优化时先删除,等网站上线开始规划广告之后,再按需要放置即可。
栏目页<title>标签优化
栏目页和网站首页的不同之处在于:网站首页只有1个页面,<title>的定义可以随意编辑;而栏目页因为有很多文章列表,是系统自动生成的,因而会存在很多列表页面。在这样的情况下,如果给所有栏目列表页都写上同样的<title>明显是不符合SEO需求的。
以一个用织梦CMS建设的宠物网站为例,在默认情况下,“金毛养护”这个栏目的第一页<title>标签是这样的:
<title>了解金毛_网站名称</title>
从上面的格式可以看出,这个<title>的构成方式是“栏目名+网站名”,是比较适合优化的。但是,不好的情况是,这个栏目下面的其他列表页标题是一样的。比如,打开这个栏目的第二页、第三页,查看源文件,得到的<title>标签如下:
<title>了解金毛_网站名称</title>
对搜索引擎来说,对这种重复的标题在同一个网站中出现是很反感的,谷歌网站管理员工具甚至会明确地告诉网站站长存在哪些重复的标题标记,意思就是希望站长进行修改,如图5.29所示。
图5.29 谷歌网站管理员工具中的重复标题
在默认情况下,绝大多数CMS的栏目页的<title>标签都是相同的,这就要求优化者为每个列表页生成不同的<title>标签,以避免出现在同一个网站中相互进行排名竞争的情况。
在DEDECMS(织梦)中,列表页<title>只有一个定义的地方,是自动生成的。要进行<title>的差异优化,需要在栏目页<title>中加入如下代码:
<title>{dede:field.title/}{dede:pagelist listitem="pageno" listsize="0"
function="html2text(@me)" runphp="yes"}if (strlen(@me)>10 || @me==1) @me="";
else @me="-列表第".@me."页";{/dede:pagelist}_{dede:global.cfg_webname/}
</title>这个代码的意思是,获得当前的栏目列表页地址排序编号,然后生成到当前栏目页的<title>中,进而对重复的标题标记进行优化。
使用了上述代码以后,栏目的首页<title>没有变化,依旧是以下代码:
<title>了解金毛_网站名称</title>
但是后续的列表页<title>就不一样了,变成了以下代码:
<title>了解金毛-列表第 2 页_网站名称</title>
<title>了解金毛-列表第 3 页_网站名称</title>
<title>了解金毛-列表第 4 页_网站名称</title>
<title>了解金毛-列表第 5 页_网站名称</title>
……
这种列表页<title>相对于所有栏目页都一样的方式来说,无疑更受搜索引擎喜欢。
栏目页<keywords>、<description>标签优化
栏目页的关键词标签和描述标签,CMS系统同样是自动生成的,对于有一定的代码编写能力,或者说优化得更精细的站长来说,可以用<title>优化类似的代码进行差异性优化,简单的优化代码如下:
<meta name="description" content="{dede:pagelist listitem="pageno"
listsize= "0" function="html2text(@me)"
runphp="yes"}if (strlen(@me)>10 || @me==1) @me="";
else @me="-列表第".@me."页";{/dede:pagelist}{dede:field
name= 'description' function='html2text(@me)'/}" />
采用上述代码以后,每个栏目页中的描述标签都会略有不同。根据同样的道理,也可以对关键词标签进行优化。
对不具有代码编写能力的优化者而言,也可以删除每个栏目页中的<keywords>和<description>标签,这样对优化的影响不大。<keywords>和<description>的默认代码如下:
<meta name="keywords" content="{dede:field name='keywords'/}" />
<meta name="description" content="{dede:field name='description'
function= 'html2text(@me)'/}" />
栏目页<h>标签优化
栏目页的<h>标签优化很有意思,因为它存在栏目页的通病:一旦在栏目页模板中定义了<h>标签,则所有栏目页都会产生同样的<h>标签和内容。这一点我们是不推荐的。
解决<h>标签的优化和内容差异,可以采用网站后台“栏目管理”中的“栏目内容”功能来实现。“栏目内容”是替代原来栏目单独页的更灵活的一种方式,可以在栏目模板中用{dede:field.content/}调用,通常用于企业简介之类中。
举例来说,搜索引擎优化者可以在“栏目内容”中写下当前栏目的名称,然后用<h1>标签进行格式规定,如图5.30所示。
写好栏目标题以后,在栏目页模板中,采用{dede:field.content/}调用当前栏目的内容即可看到效果,如图5.31所示。
图5.30 栏目内容定义
图5.31 栏目页{dede:field.content/}调用
根据不同需要,站长可以在定义完<h1>标签以后,将当前栏目的下级栏目标题加上<h2>标签,将重点内容加上<h3>标签等。这些操作相对简单,优化者可以根据自己的需要进行选择。
5.2.3 专题页代码和标签优化
专题页是对网站三级关键词的补遗,所以对专题页也需要投入一定的优化精力,进行代码和标签优化。
专题列表页、专题内容页模板位置
专题列表页的模板位置如下:
网站根目录 > templets > default > list_spec.htm
专题内容页的模板位置如下:
网站根目录 > templets > default > article_spec.htm
采用“文件式管理器”或者模板管理均可快速地编辑这两个模板,如图5.32所示。
图5.32 文件式管理器
专题页代码精简
专题页分为专题首页和专题内容页,它们的代码精简也类似,都比较简单,根据网站需要,删除广告代码即可。代码如下:
<div id="listRtPicAD2" style="margin:10px auto">{dede:myad
name='listRtPicAD2'/}</div>
<div id="listRtPicAD" style="margin:10px auto">{dede:myad
name='listRtPicAD'/}</div>
专题页<title>、<keywords>、<description>、<h>标签优化
不管是专题列表页还是专题内容页,各种标签的优化都和网站首页类似,因为它们都是单独的页面,不存在栏目页那样重复标签内容的问题。下面用截图简单展示经过优化的几个不同标签。
专题页<title>、<keywords>、<description>标签源代码如图5.33所示。
图5.33 专题页头部标签源代码
专题页<h>标签源代码如图5.34所示。
“专题简介”字段长度优化方法
在专题内容页中,为了对当前专题进行介绍,织梦程序为每个专题页增加了单独的“专题简介”功能。这个功能对优化来说非常好,便于搜索引擎的抓取、收录和排名,建议所有优化者在采用专题功能时,都仔细编写当前专题的详细介绍,如图5.35所示。
图5.34 专题页<h1>标签源代码
图5.35 专题简介
在默认情况下,“专题简介”里面可以包含200多个字符的内容,非常短,所以需要适当地增加这个字段的长度,以便于为每个专题说明增加更多的介绍内容。
要修改这个字段的长度,有两种办法:简单修改和数据库修改。
如果需要的字段长度并不长,比如500个字符左右,可以简单修改一下代码即可。默认的专题介绍代码在DEDECMS后台管理目录下的dede/spec_add.php和spec_edit.php两个文件中,代码如下:
$description = cn_substrR($description,$cfg_auot_description);
通过查询,可以发现这两个文件中各有一处上述代码,将它们分别修改成以下代码:
$description = cn_substrR($description,500);
更新缓存后,专题介绍的长度就变为500了。这种设置方法很简单,但是不能设置得过长,因为数据库有限制,而且网站程序中其他的地方还会调用这个字段,所以容易引起其他错误。
彻底的方法就是修改数据库,这种方法可以让专题长度任意变化,但是不适合没有数据库和代码编写能力的站长进行操作,因为涉及数据库字段、底层代码的批量修改,比较烦琐,实际意义可能也不大。这里不做详细介绍,有兴趣的站长可以自己尝试。