在Index根目录下建一个文件夹TagLib,再建一个TagLibHd.class.php文件
<?php
import('TagLib');
Class TagLibHd extends TagLib{//TagLib+标签库名称(首字母大写)
Protected $tags = array(
//定义标签
'nav'=> array('attr' => 'order', 'close' => 1)//'attr表示标签的属性,close表示是否是闭合
//标签,1表示闭合,0表示不闭合?(和开发手册上讲得不一样。)
);
Public function _nav($attr, $content){
$attr= $this->parseXmlAttr($attr);//定界符里面需转义
$str= <<<str
<?php
\$_nav_cate= M('cate')->order("{$attr['order']}")->select();
import('Class.Category',APP_PATH);
\$_nav_cate= Category::catesortforlayer(\$_nav_cate);
foreach(\$_nav_cateas \$_nav_cate_v):
extract(\$_nav_cate_v);
\$url= U('/c_' . \$id);
?>
str;
$str.= $content;
$str.= '<?php endforeach;?>';
return $str;
}
}
?>然后在Index/Conf/中建一个config.php文件
<?php
return array(
'APP_AUTOLOAD_PATH'=>'@.TagLib',//自动载入TagLib文件夹里面的文件
'TAGLIB_BUTLID_IN'=>'Cx.Hd'//Cx表示thinkphp核心标签
);