搜索

当前位置:首页 > 全栈分享 > 帝国cms > 正文

帝国cms tags详解(目的和意义、布局与优化、不同服务器的伪静态实现和在首页与文章页调用)

发布时间:2019-06-08 23:30:44作者:魏义齐阅读:()

本文为博主原创文章,未经博主允许不得转载。

本文分为三个部分,重申网站做tags标签的目的和意义、帝国cms tags在网站中的布局和优化、tags在不同类型服务器下的伪静态实现和如何在首页与文章页调用tags。

一、网站做tags的目的和意义

在做tags之前我看了很多网站的tags,发现很多网站对tag标签存在滥用的现象,像“不同”、“黑”这种毫无意义的词也做tags,除了增加收录量没有任何作用,对权重不高的网站反而有反作用,有的网站tags数量甚至是文章数量的三倍,我们不要看别人搞什么我们就搞什么,我们得明白网站做tags的目的和意义,这里我就不多废话了,我觉得百度百科的解释更权威。
百度百科对tag标签的解释
重点我圈出来了,大家自行理解,本站tags参考了卢松松博客和杨青博客,但又不同于他们。

二、帝国cms tags在网站中的布局和优化

帝国cms有碎片功能、专题功能和tags功能,而看官方文档对tags的解释
帝国cms官方对tags的解释
tags功能基本上可以代替碎片和专题功能。

再来说tags应该在网站哪些地方调用,要确定在哪调用就得明确tags的作用,它是一种内链手法,因为它有调用不同栏目文章的特性,所以不建议在列表页和文章页大篇幅调用,因为某些词会跟当前栏目格格不入,当然如果你不在乎的话。我认为最好的调用方式是在文章结束位置,比如本文,访客可以阅读与本文关键词相关的所有文章,相比于相关链接它缺乏强相关性,但是它的范围更广又专一,另外就是在首页给一个链接展示网站所有tags,用户点开可以阅读自己感兴趣的专题文章。有的网站tags信息聚合列表页的关键词和描述是一样的,像描述这么重要的、在搜索结果中直接展示给用户的内容都不重视,那么你的tags有什么用?

帝国cms的tags可以在发布文章时添加也可以在栏目-管理tags里添加,个人建议在栏目-管理tags里添加,这是一种长远考虑,tags不在多而在于对网站有作用,本站是把tags和专题相结合。

三、tags在不同类型服务器下的伪静态实现和如何在首页与文章页调用tags

tags建议开启伪静态(系统→系统设置→伪静态参数设置),默认的就可以,建议开启伪静态的原因是:如果遇到换程序,我们可以通过修改伪静态链接规则使tags链接一致,同时可以放心大胆地在robots.txt里写Disallow: /*?*了,搜索结果列表的动态链接收录完全可以忽略,它不能给网站带来流量,禁止抓取动态链接是因为如果不禁止的话蜘蛛总会抓取网站一些不在前台展示的动态链接,比如留言板等,这就很烦。
帝国cms开启伪静态
此处设置后服务器还要配置伪静态,Apache服务器.htaccess中添加如下代码:
RewriteEngine On
RewriteCond %{QUERY_STRING} ^(.*)$
RewriteRule ^tags-(.+?)-(.+?)\.html$ /e/tags/index.php?tagname=$1&page=$2
iis服务器在web.config中添加如下代码
<rule name="tags">
  <match url="^(.*/)*tags-(.+?)-(.+?).html\?*(.*)$" />
  <action type="Rewrite" url="{R:1}/e/tags/index.php\?tagname={R:2}&amp;page={R:3}" />
</rule>
配置好后tags链接才能正常打开。

在本文结束调用了tags,那么如何在文章页调用tags呢?

在需要调用tags的地方添加如下代码:
<?php $fr = $empire->fetch1( "select infotags from {$dbtbpre}ecms_news_data_{$navinfor[stb]} where id='$navinfor[id]'" );$infotags = $fr[ 'infotags' ];$tag = '';$t = explode( ',', $infotags );$d = count( $t );for ( $i = 0; $i < count( $t ); $i++ ) {if ( $t[ $i ] ) {$tagslink = "[!--news.url--]tags-" . urlencode( $t[ $i ] ) . "-0.html";$tag .= "<a href='$tagslink' target='_blank'>" . $t[ $i ] . "</a> ";}}echo $tag;?>
这段代码删除了分行和空格,因为格式化的代码在帝国cms后台模板编辑里看着很乱,我想你不希望看到那样,这段代码在帝国cms后台是不分行的。

首页我加了一个链接调用了网站所有的标签,它的标签代码如下:
[showtags]'',0,0,'',0,'',' ',1,'','tagname'[/showtags]
这里说一下tags关键词块的样式怎么写成多种颜色轮流展示,之前没写过这种,虽然w3school没有说这种样式该怎么写,但实现方法很简单
#content .tagcloud a:nth-child(3n-2) {
	background-color: #87AF4C;
}
#content .tagcloud a:nth-child(3n-1) {
	background-color: #FC8B63;
}
#content .tagcloud a:nth-child(3n) {
	background-color: #FFC301;
}
我是只有三种颜色轮流展示,12是2的倍数同时也是3的倍数,所以不能用2n、3n这种方式控制颜色,可以采用3n-2就是第一个的颜色,3n-1就是第二个的颜色,3n就是第三个的颜色,以此类推,你要轮流展示多少颜色都可以。

本次换程序学到的帝国cms tags知识就分享完了,希望对大家有帮助。

本文标签:,您可以阅读与「」相关的所有文章

魏义齐全栈技术交流:魏义齐全栈技术交流

相关阅读

    无相关信息

上一篇:phpcms转帝国cms后原所有动态链接跳转到首页的解决办法下一篇:帝国cms采集教程附操作实例

赞助本站

原创不易,您的赞助就是博主更新的动力!

赞助本站可在赞助光荣榜留下外链信息,支付宝扫此二维码可领红包