• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

PHP.49-TP框架商城应用实例-前台1-公共布局、制作首页

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

公共布局包括

1、页头、页脚{layout}

  正文:{__COMMENT__}

  导入:<layout name="layout">

2、商品导航{nav.html}    ==> include为tp中自带的标签

  <include file="nav.html">

3、帮助信息{help.html}

  <include file="help.html">

扩展:模型文件的存放位置,三种方法:

  1. 所有的模型都放到后台,以后前台也到后台取模型如:

    $catModel = D(‘Admin/Category’);   // 生成Admin模块下的Category

  2. 后台用的放到后台模块,前台用的放到前台模块。

  3. 在Common模块下创建公共的模型,把公共的代码放到这个模型中,前后台特有的方法在前后模块再各个单独继承这个公共的模型

制作首页

1、在分类模型CategoryModel.class.php取出导航条上分类树

  注:通过tp缓存避免多次读取数据库,影响访问速度

    // 获取导航条上的数据
        public function getNavData()
        {
            // 先从缓存中取出数据
            $catData = S('catData');
            // 判断如果没有缓存,或者缓存过期就重新构造数组
            if(!$catData)
            {
                //取出所有分类
                $all = $this->select();
                $ret = array();
                // 循环所有的分类找出顶级分类
                foreach($all as $k => $v)
                {
                    if($v['parent_id'] == 0)
                    {
                        // 循环所有分类找出这个顶级分类的子分类
                        foreach($all as $k1 => $v1)
                        {
                            if($v1['parent_id'] == $v['id'])
                            {
                                // 循环所有分类找出这个二级分类的子分类
                                foreach ($all as $k2 => $v2)
                                {
                                    if($v2['parent_id'] == $v1['id'])
                                    {
                                        $v1['children'][] = $v2;
                                    }
                                }
                                $v['children'][] = $v1;
                            }    
                        }
                        $ret[] = $v;
                    }
                }
                // 把数组缓存1天(30秒)
                S('catData', $ret, 0);
                return $ret;
            }
            else
                return $catData;    //有缓存直接返回缓存数据
        }

2、制作导航条控制器,需要输出导航条的控制器,继承其即可

3、修改导航页nav.html,循环输出内容

 

 

 


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
php填写pdf表单发布时间:2022-07-10
下一篇:
PHP环境中安装pear、phpunit以及xdebug全攻略发布时间:2022-07-10
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap