Ecmsphp开发中心

1252

帖子

19

跟帖

8

粉丝

用户组:普通会员

头    衔:白银会员

版主

积分
356930
登陆
2134 次
私信
注册时间
2014-06-21 14:06:06
最后登陆时间
2023-09-24 16:04:46

DedeCMS织梦Tags标签页制作教程完整版

 [只看主题]
楼主
0 |
发表: 3 年前
| |
| |
跳转

  DedeCMS织梦Tags标签页制作教程完整版

  织梦的默认模版是带有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标签页制作教程完整版 帝国CMS教程

  该问题是因为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}


ecmsphp开发中心
ecmsphp开发中心
验证码 换一个

当前在线人数: 0
取消

感谢您的支持,我们会继续努力!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

×

打开微信“扫一扫”,打开网页后点击屏幕右上角分享按钮

DedeCMS织梦Tags标签页制作教程完整版