福州網站建設>網站新聞>php技術

        ECshop中TemplateBeginEditable 和lbi庫文件中一些說明

        發布日期:2019-05-03瀏覽次數:1388 來源:福州網站建設

        在ecshop的dwt文件里面經常發現有“<!-- TemplateBeginEditable name="doctitle" -->和<!-- #BeginLibraryItem "/library/page_header.lbi" --><!-- #EndLibraryItem -->”這么一段代碼,有很多朋友誤認為只是注釋用的,這里首先來介紹一下#BeginLibraryItem這段代碼??梢钥吹胶竺嬗小皃age_header.lbi“這個.lbi文件是一個庫文件,打開后發現里面就是一些html代碼,index.dwt為模板,那么這個.lbi可以理解為模板index.dwt的子模板,.lbi專門供別的的dwt模板導入的子模板. 那么 TemplateBeginEditable這個又是干什么用的呢? 很多人知道這個是可編輯區域的意思,意思就是在TemplateBeginEditable 和 TemplateEndEditable之間的位置是可編輯區域,具體的我們來舉個例字。首先我們到ecshop 管理員后臺的模板管理->設置模板里面可以看到以下這個

        可以看到上面的默認選擇了首頁模板,假如當你將 商品分類樹 選擇為右邊主區域 點擊確定之后 清楚緩存,在刷新首頁這是你會發現,原來的 商品分類樹 從左邊跑到右邊了。在上面的下拉框中我們看到只有三個選擇,右邊主區域,左邊主區域,廣告位,如果你想多加幾個選項,那么很簡單,只要你在你要改的模板內多加上幾個就行了,假如你要在index.dwt模板添加   “左上角主區域”,和“右下角主區域”,那么你可以在index.dwt 里面加入

        <!-- TemplateBeginEditable name="左上角主區域" -->
        <!-- TemplateEndEditable -->

        <!-- TemplateBeginEditable name="右上角主區域" -->
        <!-- TemplateEndEditable -->

        這是你再到后臺,模板設置里面看首頁的選項中就有這個選項

         

        下面我來講解一下怎么制作自己的模板, 我拿index.dwt為例, 首先在\themes\default\下將index.dwt文件拷貝一份改名為home.dwt在<body>里面加一句話 "這是自己定義的home.dwt模板" 以方便調試, 同樣在根目錄下的index.php文件拷貝一份改名為home.php里面加一行 echo '這是自己定義的home.php'; 代碼以便調試 同時把$smarty->display('index.dwt', $cache_id);改為$smarty->display('home.dwt', $cache_id);然后 清楚緩存 在瀏覽器通過http://localhost/ecshop/home.php執行你會發現這個頁面跟首頁一樣,只是多了一段 "這是自己定義的home.php 這是自己定義的home.dwt模板" 文字。 當然home.php 和home.dwt 文件里面的內容可以自己定義.
        當你再到后臺模板管理->設置模板 里面的 選擇模板下拉框選項中沒有你加的home模板,這時你就要在\admin\includes\lib_template.php里配置一下。在代碼”$template_files = array('index.dwt', “ 加上你的模板”$template_files = array('home.dwt','index.dwt',“ ,告訴系統有home.dwt這么一個模板,其次在$page_libs = array( 這個二位數組里面的 'index' => array( 這個數組拷貝一份,改名為home ,意思就是告訴系統你這個home模板里面可以導入哪些.lbi文件.這點配置還不夠,你還要在\languages\zh_cn\admin/template.php語言包里面加一行$_LANG['template_files']['home'] = 'Myhome模板';代碼.然后你再到后臺模板管理->設置模板可以看到如下結果


          
        你會發現下拉框中多了一個Myhome模板選項,當你點擊旁邊的確定按鈕時會報錯,這是因為你還有一個xml文件沒修改,打開themes\default\libs.xml文件,將 <file name="index.dwt"> 節點內的代碼拷貝一份把節點名改為<file name="home.dwt">這時你再來重復上次的操作點擊旁邊的確定,就不會報錯了。

        接下來我們制作.lbi庫文件
        首先我們在\themes\default\library\目錄下新建一個home.lbi文件 里面輸入"這是我自的lbi文件"然后在\admin\includes\lib_template.php文件里面,你剛才新加的'home' => array(home數組里面 添加你的home.lbi 既在這個數組末尾加'/library/home.lbi' => 0 同樣像修改模板一樣在\languages\zh_cn\admin\template.php 里面加入一行 $_LANG['template_libs']['home'] = 'Myhome庫文件'; 代碼 這時你到后臺 模板管理->庫項目管理 你就會發現剛剛你加的庫文件出來了。


        里面代碼可以自己修改

        這時候你再到 模板管理->設置模板->選擇Myhome模板 確定后,下面可以發現你要編輯的lbi出來了,

        默認是非可編輯區庫文件如果你要變為可選擇項那么你可以到\themes\default\libs.xml文件里找到剛才你加的   <file name="home.dwt"><region name="左邊區域">里面加上<lib>home</lib>你再回來看就可以了。記得要把后面對應的顯示復選框勾選上,否則你保存不了你的選擇。

        這時你再來訪問http://localhost/ecshop/home.php 你會發現 "這是我自的lbi文件" 文字出來了。

        另外需要補充一下的

        遵循如下3步驟
             1 在library 里面新建 lbi 文件,比如 phpsir.lbi , 請設置 777,到后臺庫項目里面就能看到和可以編輯 phpsir.lbi
             2 修改 admin/includes/lib_template.php 里面的 $page_libs 變量
             3 在 libs.xml 里面找對應模板dwt文件,里面寫入 <lib>phpsir</lib>

        到后臺模板設置,就可以調整此塊內容居于左右位置了

         

        關于ecshop的廣告設置

        一、模板機制介紹
        ECSHOP模板機制是在模板文件.dwt里面設置了可編輯區域如下:
        <!-- TemplateBeginEditable name="左邊區域" -->

        <!-- TemplateEndEditable -->

        程序通過操作可編輯區域,可以在模板文件.dwt里面插入某一個庫文件.lib
        如:
        <!-- TemplateBeginEditable name="KICSHOP廣告01" -->

        <!-- TemplateEndEditable -->
        可編輯區域名字任意起,前提是在同一個模板文件里不能有重名的。

        可編輯區域可以在.dwt文件里任意添加多個。不過不能嵌套,也不能在庫文件里添加可編輯區域啊。切記??!

        每添加一個廣告,需要模板文件.dwt里面有一個可編輯區域,以便程序操作在里面插入廣告庫文件ad_position.lbi

        二、廣告添加
        上面講了可編輯區域,大家應該明白,要想在頁面中添加一個廣告位,就必須要求對應的模板文件里面必須已經有相應的可編輯區域了。
        下面再來說下添廣告了:

        以上是由福州網站建設的小編為你分享了"ECshop中TemplateBeginEditable 和lbi庫文件中一些說明"文章,如果你在這方面有什么問題,隨時聯系我們

        php技術有關的文章
        如果您有什么問題,歡迎咨詢我們客服! 點擊QQ咨詢