织梦Tag列表类构造函数__construct($keyword, $templet)源码分析教程
所在文件:arc.taglist.class.php
织梦标签列表类处理的标签指的是如下图所示的标签:
也就是我们在发布文档时,填写的文档标签。这个构造函数也没有做多少事。
函数首先,实例化三个类,然后,处理全局参数,代码为:
也就是把include/channeunit.func.php 里面的定义的全局数组,如下图所示:
把这个全局数组遍历出来,放到数组$this->Fields 里面,以备实例化的这个函数的对象使用。
这个数组对应的实例化后tag对应的结果为:
[Fields] => Array ( [tag] => dede [title] => dede [phpurl] => /dedecms/plus [indexurl] => /dedecms [templeturl] => /dedecms/templets [memberurl] => /dedecms/member [specurl] => /dedecms/special [indexname] => 主页 [templetdef] => /dedecms/templets/default )
从打印出来的这个结果可以看出,我是的把程序放在了根目录里面的dedecms里面的。
此外,这个构造函数还读取tag信息,放入数组$this->TagInfos里面,这才是这个构造函数的主要作用,作为一个构造函数最主要的功能就是处理这个类的对象。当标签存在,但是,在数据库里面查询不到时,就显示错误信息,这个功能代码如下图所示:
若把这个数组$this->TagInfos 打印出来,得到的结果就是:
[TagInfos] => Array ( [id] => 1 [tag] => dede [typeid] => 1 [count] => 1 [total] => 1 [weekcc] => 1 [monthcc] => 1 [weekup] => 1437621552 [monthup] => 1437621552 [addtime] => 1437621552 )
最后,就是把从参数里传过来的模板设置好后,载入模板进行解析。