PHP.49-TP框架商城應用實例-前臺1-公共佈局、製做首頁

公共佈局包括php

一、頁頭、頁腳{layout}html

  正文:{__COMMENT__}thinkphp

  導入:<layout name="layout">數據庫

二、商品導航{nav.html}    ==> include爲tp中自帶的標籤數組

  <include file="nav.html">緩存

三、幫助信息{help.html}佈局

  <include file="help.html">this

擴展:模型文件的存放位置,三種方法:spa

  1. 全部的模型都放到後臺,之後前臺也到後臺取模型如:code

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

  2. 後臺用的放到後臺模塊,前臺用的放到前臺模塊。

  3. 在Common模塊下建立公共的模型,把公共的代碼放到這個模型中,先後臺特有的方法在先後模塊再各個單獨繼承這個公共的模型

製做首頁

一、在分類模型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;    //有緩存直接返回緩存數據
        }

二、製做導航條控制器,須要輸出導航條的控制器,繼承其便可

三、修改導航頁nav.html,循環輸出內容

相關文章
相關標籤/搜索