路思网专注于织梦源码、织梦模板、免费html模板等网站模板分享,为广大站长提供免费网站模板等素材。

路思网

DedeCMS织梦Tags标签页制作

时间:2016-10-10所属栏目:Dedecms教程

织梦的默认模版是带有Tag页的,而我们要使用自己的模版建站,一般很少有Tag标签页的,这里就需要我们自己来新建Tag标签页模版,根据Dede自带的模版总结出自建模版实现Tag页的方法,主要需要新建两个文件tag.htm和taglist.htm,其中tag.htm是标签合集页,展示所有的文章标签,taglist.htm是标签列表页,用来展示某个标签的关联文章。

tag.htm可以直接用文章页的模版来做,只需要把文章内容模块标签替换下即可,具体的代码为:

        {dede:tag row='1000' getall='1' sort='hot'}
<a href='[field:link/]' title="[field:tag /]([field:total /])" style="[field:total runphp=yes]@me=getTagStyle();[/field:total]">[field:tag /]</a>
{/dede:tag}

taglist.htm可以直接用列表页的模版来做,这里要注意的是,大部分的文章列表页跟Tag列表页的调用标签是一样的,不需要做出修改。

做好这两个模版,再把title、keywords、description都修改下就完成了Tag标签页的制作,把这两个文件上传到网站模版文件夹下,访问标签页的网址为http://主页/tags.php。

是不是很简单,那么Tag页面做好后,发现另外一个问题,带大写字母的Tag点击后提示无此标签:

DedeCMS织梦Tags标签页制作

该问题是因为DEDECMS标签中包含"大写字母",解决方法:

在网站根目录下找到tags.php 此文件,将以下代码替换掉:

$tag = trim($_SERVER['QUERY_STRING']);

换成:

$tag = strtolower(trim($_SERVER['QUERY_STRING']));

有的网友发现标签页是标签云样式且是随机颜色及大小,实现dede标签云的效果,包括标签有不同的颜色和字体大小等等,颜色和字体大小都为随机显示,可改变代码来控制其范围,这里要实现这样要加一些修改:

修改方法:

1、在/include/common.func.php 中加入如下函数。

//tag函数
  function getTagStyle()
          {
          $minFontSize=8; //最小字体大小,可根据需要自行更改
          $maxFontSize=18; //最大字体大小,可根据需要自行更改
          return 'font-size:'.($minFontSize+lcg_value()*(abs($maxFontSize-$minFontSize))).'px;
          color:#'.dechex(rand(0,255)).dechex(rand(0,196)).dechex(rand(0,255));
          }
 

此函数的作用是输出随机的样式,包括font-size和color。

如果你想指定只显示几个字体大小,而不是完全随机,请将上面的函数代码修改为:


  function getTagStyle() {
$sizearray = array('8′,'9′,'10′,'11′,'12′,'20′); //自定义字体大小,可根据需要自行修改
return 'font-size:'.$sizearray[rand(0,count($sizearray))].'pt;color:#'.dechex(rand(0,255)).dechex(rand(0,196)).dechex(rand(0,255));
 }
 

2、在模板中用如下代码调用标签。


    {dede:tag row='45' getall='1' sort='hot'}
    <a href='[field:link/]' title="[field:tag /]([field:total /])" style="[field:total runphp=yes]@me=getTagStyle();[/field:total]">[field:tag /]</a>
   {/dede:tag}
 
标签:
分享: