hainan_shi 2014-10-10 03:14
浏览 1279

thinkphp栏目如何实现自定义url

问题:thinkphp我现在已经设置好了栏目表和栏目所属模型表,新建了自定义标签库实现栏目名称和链接的前台输出,但是链接没有实现自定义url,也就是根据栏目所属的模型访问相应的tp控制器模板。比如:前台有 网站首页(外部链接)、公司介绍(单页模型)、新闻动态(文章模型)、产品展示(产品模型)四个栏目,放在数据库Column表里,当前台点击网站首页(外部链接)时,跳转到Column表填写的链接字段;当前台点击 公司介绍(单页模型)时,跳转到单页控制器列表List_page.html,内容页Show_page.html;当前台点击 新闻动态(文章模型)时,跳转到文章控制器列表List_article.html,内容页Show_article.html。如何实现呢?谢谢

1、自定义标签库TagLibMy.class.php

<?php
/**
 * 自定义标签库
 */
import('TagLib');

class TagLibMy extends TagLib{
    // 标签定义
    protected $tags=array(
        // 标签定义: attr 属性列表 close 是否闭合(0 或者1 默认1) alias 标签别名 level 嵌套层次
        'navlist'=>array('attr'=>'limit,order','close'=>1), //不闭合标签
        );

    //导航条标签
    public function _navlist($attr, $content) {
        $attr = $this->parseXmlAttr($attr);
        $str = <<<str
<?php

    \$_nav_m=M('Column')->order("{$attr['order']}")->where("column_status=0")->select();
    import('Class.Category', APP_PATH); 
    \$_nav_m=Category::unlimitedForLayer(\$_nav_m);

    foreach(\$_nav_m as \$_nav_v):
            extract(\$_nav_v);
            \$url = U('/list/' . \$id);
?>
str;

    $str .= $content;
    $str .='<?php endforeach;?>';
    return $str;

    }

}

?>

2、数据库
CSDN移动问答
CSDN移动问答

  • 写回答

0条回答 默认 最新

    报告相同问题?

    悬赏问题

    • ¥17 pro*C预编译“闪回查询”报错SCN不能识别
    • ¥15 微信会员卡接入微信支付商户号收款
    • ¥15 如何获取烟草零售终端数据
    • ¥15 数学建模招标中位数问题
    • ¥15 phython路径名过长报错 不知道什么问题
    • ¥15 深度学习中模型转换该怎么实现
    • ¥15 HLs设计手写数字识别程序编译通不过
    • ¥15 Stata外部命令安装问题求帮助!
    • ¥15 从键盘随机输入A-H中的一串字符串,用七段数码管方法进行绘制。提交代码及运行截图。
    • ¥15 TYPCE母转母,插入认方向