ECSHOP如何将静态模板实现动态 第一次接触ECSHOP和PHP语言 请详细解答
3个回答
展开全部
以增加一个分类页面为例
第一步:
把根目录下 category.php 这个文件复制多一个文件,文件名自己起吧,我就以category2.php为例
同样的方法打开themes\default文件夹找到ecshop模板文件,category.dwt这个文件也复制多一个,改为category2.dwt
第二步
打开这个文件category2.php 打到以下行 大约是74行吧
if (!$smarty->is_cached('category.dwt', $cache_id)) 改为if (!$smarty->is_cached('category2.dwt', $cache_id))
大约是397行
$smarty->display('category.dwt', $cache_id);改为 $smarty->display('category2.dwt', $cache_id);
保存
第三步
打开admin\includes\lib_template.php这个文件
在“/* 可以设置内容的ecshop模板 *” 下面增加多一行
'category2.dwt',
在"/* 每个模板允许设置的库项目 " 中
复制“
'category' => array(
'/library/ur_here.lbi' => 0,
'/library/search_form.lbi' => 0,
'/library/member.lbi' => 0,
'/library/category_tree.lbi' => 0,
'/library/top10.lbi' => 0,
'/library/history.lbi' => 0,
'/library/recommend_best.lbi' => 3,
'/library/recommend_hot.lbi' => 3,
'/library/goods_list.lbi' => 0,
'/library/pages.lbi' => 0,
'/library/recommend_promotion.lbi' => 3,
'/library/brands.lbi' => 3,
'/library/promotion_info.lbi' => 0,
'/library/cart.lbi' => 0,
'/library/vote_list.lbi' => 0
),
复制代码
”
并把'category' => array( 这个改为 'category2' => array( 然后在
"),
'compare' => array("
这两行之间粘贴
再打开:languages\zh_cn\admin\template.php文件
在“/* 每一个ecshop模板文件对应的语言 *”后面增加多一行$_LANG['template_files']['category2'] = '新建商品首页'; (这个文件名可以自定义)
访问后台,设置ecshop模板》请选择一个ecshop模板:中看到了你的新增页面吧!呵呵,
第四步
打开“themes\default\libs.xml”编辑
复制73行至83行
<file name="category.dwt">
<region name="">
<lib>cart</lib>
<lib>category_tree</lib>
<lib>filter_attr</lib>
<lib>price_grade</lib>
<lib>history</lib>
</region>
<region name=""/>
<region name="">
<lib>recommend_best</lib>
<lib>goods_list</lib>
<lib>pages</lib>
</region>
复制代码
改为
<file name="category2.dwt">
<region name="">
<lib>cart</lib>
<lib>category_tree</lib>
<lib>filter_attr</lib>
<lib>price_grade</lib>
<lib>history</lib>
</region>
<region name=""/>
<region name="">
<lib>recommend_best</lib>
<lib>goods_list</lib>
<lib>pages</lib>
</region>
复制代码
粘贴在83行与84行之行.
到此全部OK。打开后台模板就可以设置了
第一步:
把根目录下 category.php 这个文件复制多一个文件,文件名自己起吧,我就以category2.php为例
同样的方法打开themes\default文件夹找到ecshop模板文件,category.dwt这个文件也复制多一个,改为category2.dwt
第二步
打开这个文件category2.php 打到以下行 大约是74行吧
if (!$smarty->is_cached('category.dwt', $cache_id)) 改为if (!$smarty->is_cached('category2.dwt', $cache_id))
大约是397行
$smarty->display('category.dwt', $cache_id);改为 $smarty->display('category2.dwt', $cache_id);
保存
第三步
打开admin\includes\lib_template.php这个文件
在“/* 可以设置内容的ecshop模板 *” 下面增加多一行
'category2.dwt',
在"/* 每个模板允许设置的库项目 " 中
复制“
'category' => array(
'/library/ur_here.lbi' => 0,
'/library/search_form.lbi' => 0,
'/library/member.lbi' => 0,
'/library/category_tree.lbi' => 0,
'/library/top10.lbi' => 0,
'/library/history.lbi' => 0,
'/library/recommend_best.lbi' => 3,
'/library/recommend_hot.lbi' => 3,
'/library/goods_list.lbi' => 0,
'/library/pages.lbi' => 0,
'/library/recommend_promotion.lbi' => 3,
'/library/brands.lbi' => 3,
'/library/promotion_info.lbi' => 0,
'/library/cart.lbi' => 0,
'/library/vote_list.lbi' => 0
),
复制代码
”
并把'category' => array( 这个改为 'category2' => array( 然后在
"),
'compare' => array("
这两行之间粘贴
再打开:languages\zh_cn\admin\template.php文件
在“/* 每一个ecshop模板文件对应的语言 *”后面增加多一行$_LANG['template_files']['category2'] = '新建商品首页'; (这个文件名可以自定义)
访问后台,设置ecshop模板》请选择一个ecshop模板:中看到了你的新增页面吧!呵呵,
第四步
打开“themes\default\libs.xml”编辑
复制73行至83行
<file name="category.dwt">
<region name="">
<lib>cart</lib>
<lib>category_tree</lib>
<lib>filter_attr</lib>
<lib>price_grade</lib>
<lib>history</lib>
</region>
<region name=""/>
<region name="">
<lib>recommend_best</lib>
<lib>goods_list</lib>
<lib>pages</lib>
</region>
复制代码
改为
<file name="category2.dwt">
<region name="">
<lib>cart</lib>
<lib>category_tree</lib>
<lib>filter_attr</lib>
<lib>price_grade</lib>
<lib>history</lib>
</region>
<region name=""/>
<region name="">
<lib>recommend_best</lib>
<lib>goods_list</lib>
<lib>pages</lib>
</region>
复制代码
粘贴在83行与84行之行.
到此全部OK。打开后台模板就可以设置了
追问
这个答案我已经看过了,其实我想问的只是 php之间传值,lbi dwt php之间是否是mvc一样的模式,在哪里读取sql数据,从哪里将数据传到哪里,在哪里显示,如何显示,。代码贴上来也行 对了就给分
展开全部
静态模板实现动态其实很简单的,将静态html页面里的固定文字内容改成动态变量
比如,商品名称 用 {$goods.name}来代替即可,详细的变量说明的话可以
看看ecshop字段说明:
http://wenku.baidu.com/view/799b38660b1c59eef8c7b4b9.html
当然,也可以通过默认default模板来找
比如,商品名称 用 {$goods.name}来代替即可,详细的变量说明的话可以
看看ecshop字段说明:
http://wenku.baidu.com/view/799b38660b1c59eef8c7b4b9.html
当然,也可以通过默认default模板来找
追问
能说得详细一点吗? 比如说 我先创建一个Index.php文件 通过$globals['db']-getAll这个函数 查询出来一个list集合 然后 使用smarty模板传值到index.dwt文件 然后再dwt文件中如何去读取并显示到页面上? 还有 对应的index.lbi文件做什么用的?
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询