本文摘要:在互联网时代飞速发展的前景下加上昂贵的竞价费用让多数企业苦不堪言于是低成本投入的职业-seo就诞生了,从业人数也每年呈递增状态,然而互联网的垃圾信息也越来越多,于是搜索引擎为了更好的迎合用户体验也频繁的展开了各项算法调整。在这期间当然也有很多网站被降权甚至被K掉,至于什么原因...
http://域名/tags.php?/%B0%D9%B6%C8%BF%EC%D5%D5/
做成TAG伪静态修改参考文章《【长沙seo优化技术】静态网页为什么利于搜索引擎优化》,中文字符的URL一样能被百度和谷歌识别,但介于中文URL路径过长可以替换为该TAG的ID,一起来看看php网站建设的操作。
打开/include/taglib/tag.lib.php
在差不多87行找到
$row['link'] = $cfg_cmsurl."/tags.php?/".urlencode($row['keyword'])."/";
将其改成
$row['link'] = $cfg_cmsurl."/tags/".urlencode($row['id'])."/";
这样就把每个动态的tag标签生成了如:
http://域名/tags/12/
很多人设计TAG标签URL后面有“.html的”后缀,其实直接用斜杠“/”更好,代表这是一个目录。
打开/include/arc.taglist.clss.php,找到(下面出现的网站建设请去掉)
$this->TagInfos = $this->dsql->GetOne("Select * From `#网站建设@__tagindex` where tag like '{$this->Tag}' ");
修改为
$this->TagInfos = $this->dsql->GetOne("Select * From `#网站建设@__tagindex` where id like '{$this->Tag}' ");
由于TAG替换成了ID,原有的调用方法有些变化,访问的tag列表如果用{dede:field.title/}调用的是ID,这不友好,下面是修改及调用方法
打开/include/arc.taglist.class.php,找到
//设置一些全局参数的值 foreach($GLOBALS['PubFields'] as $k=>$v) $this->Fields[$k] = $v;
下面增加
//by vi586.com
$s = $this->dsql->GetOne("Select tag From `#网站建设@__tagindex` where id = '{$this->Tag}' ");
$this->Fields['tag'] = $s['tag'];
$this->Fields['title'] = $s['tag'];
//end
往下继续找到
$this->TagInfos = $this->dsql->GetOne("Select * From `#网站建设@__tagindex` where tag like '{$this->Tag}' ");
修改为
$this->TagInfos = $this->dsql->GetOne("Select * From `#网站建设@__tagindex` where id like '{$this->Tag}' ");
一般在站内都是用GetTags()函数调用,但这个函数并没有对应的ID。查看了一下taglist表,发现用的是tid。
[field:id function=GetTags(@me)/],调出来的会是/tags//
打开/include/helpers/archive.helper.php,找到
$query = "SELECT tag FROM `#网站建设@__taglist` WHERE aid='$aid' ";
$dsql->Execute('tag',$query);
while($row = $dsql->GetArray('tag'))
{
$tags .= ($tags=='' ? $row['tag'] : ','.$row['tag']);
}
这里增加了绝对路径的修改。
$query = "SELECT tid,tag FROM `#网站建设@__taglist` WHERE aid='$aid' "; $dsql->Execute('tid',$query); while($row = $dsql->GetArray('tid')) { $tags .= "".$row['tag'].""; }
调用全站TAG标签带链接
{dede:tag row='100' sort='new' getall='1'} [field:tag /] {/dede:tag}
有几个参数需要了解
row:调用条数 sort:排序方式 month,rand,week getall:获取类型 0 为当前内容页TAG标记,1为获取全部TAG标记
调用当前内容页TAG标签带链接
{dede:tag row='10' sort='new' getall='0'} [field:tag /] {/dede:tag}
首页、列表页调用文章TAG标签带链接
{dede:arclist row='10' titlelen='80'} [field:id function=GetTags(@me)/] {/dede:arclist}
TAG列表页也是用的上述方法。
TAG详情页调用TAG标签
不能直接用{dede:field.title/}调用TAG标签了,这时调出来的是该TAG的ID,需要用SQL的方法调用,下面的橙色表前缀请自行更换。
{dede:sql sql="select tag from #网站建设@__tagindex where id=~title~"}[field:tag/]{/dede:sql}