您现在的位置是:首页 > 教程 > ecshop商城教程ecshop商城教程
ecshop模板使用方法和机制介绍
元香2024-12-22 18:03:51ecshop商城教程已有人查阅
导读lib_main.php中的assign_template()会设置我们的网店的公共信息及网站设置;assign_dynamic()方法则是设置该页面中的动态加载内容。当页面所需的变量设置完成后,进入smarty的display()方法。
ECShop模板是基于smarty 文件名cls_template.php
lib_main.php中的assign_template()会设置我们的网店的公共信息及网站设置;assign_dynamic()方法则是设置该页面中的动态加载内容。当页面所需的变量设置完成后,进入smarty的display()方法。
首先,在ECshop中有.dwt和.lbi两种格式的模板文件,那么这两种文件之间是什么关系呢?可以这样理解.dwt文件是针对前台每个显示页面的模板“框架”,而.lbi模板中则是对页面中公共“内容”的整理,每个.lbi文件都是页面中的一个模块。二者是怎样关联到一起的呢?在模板文件夹中有一个libs.xml文件,这里则是具体配置每个模板“框架”中可以显示哪些“内容”(具体内容之后谈及模板管理会细说)。
下面查看解析模板的过程,在.dwt文件中根据框架的设计会划分出几个“可编辑区域”,.lbi模板正是加载到“可编辑区域”中进行输出的。那么我们需要注意的是.dwt模板中的几对标签:
①<!-- TemplateBeginEditable name="右边主区域" --><!-- TemplateEndEditable -->这对标签就是“可编辑区域”标签,在这对标签之间输出的内容是可以通过模板管理进行设置的。主要是选择输出不同的.lbi文件。
②<!-- #BeginLibraryItem "/library/page_header.lbi" --><!-- #EndLibraryItem -->这对标签则是对相应的page_header.lbi文件的加载及输出。这个头部的模板每个页面都需要加载,如果我们想更改模板中的头部内容,只要修改page_header.lbi即可,大大提高了效率。
模板文件加载完成之后,即可通过smarty引擎解析smarty标签,完成模板的输出。
lib_main.php中的assign_template()会设置我们的网店的公共信息及网站设置;assign_dynamic()方法则是设置该页面中的动态加载内容。当页面所需的变量设置完成后,进入smarty的display()方法。
首先,在ECshop中有.dwt和.lbi两种格式的模板文件,那么这两种文件之间是什么关系呢?可以这样理解.dwt文件是针对前台每个显示页面的模板“框架”,而.lbi模板中则是对页面中公共“内容”的整理,每个.lbi文件都是页面中的一个模块。二者是怎样关联到一起的呢?在模板文件夹中有一个libs.xml文件,这里则是具体配置每个模板“框架”中可以显示哪些“内容”(具体内容之后谈及模板管理会细说)。
下面查看解析模板的过程,在.dwt文件中根据框架的设计会划分出几个“可编辑区域”,.lbi模板正是加载到“可编辑区域”中进行输出的。那么我们需要注意的是.dwt模板中的几对标签:
①<!-- TemplateBeginEditable name="右边主区域" --><!-- TemplateEndEditable -->这对标签就是“可编辑区域”标签,在这对标签之间输出的内容是可以通过模板管理进行设置的。主要是选择输出不同的.lbi文件。
②<!-- #BeginLibraryItem "/library/page_header.lbi" --><!-- #EndLibraryItem -->这对标签则是对相应的page_header.lbi文件的加载及输出。这个头部的模板每个页面都需要加载,如果我们想更改模板中的头部内容,只要修改page_header.lbi即可,大大提高了效率。
模板文件加载完成之后,即可通过smarty引擎解析smarty标签,完成模板的输出。
define('IN_ECS',true);
define('EC_CHARSET','utf-8');
define('ROOT_PATH','D:/php/ /ECShop/');
define('DATA_DIR','data');
$db_host="localhost:3306";
$db_name="ecshop";
$db_user="root";
$db_pass="";
require('../includes/cls_mysql.php');
$db=new cls_mysql($db_host,$db_user,$db_pass,$db_name);
//获取所有记录
function test_getAll(){
global $db;
$sql="select user_id,user_name,email from ecs_admin_user";
$result=$db->getAll($sql);
print_r($result);
}
test_getAll();
//获取单条数据
function test_getRow(){
global $db;
$sql="select user_id,user_name,email from ecs_admin_user";
$result=$db->getRow($sql);
print_r($result);
}
test_getRow();
//获取某栏位的所有值
function test_getCol(){
global $db;
$sql="select email from ecs_admin_user";
$result=$db->getCol($sql);
print_r($result);
}
test_getCol();
//获取的单个值
function test_getOne(){
global $db;
$sql="select email from ecs_admin_user where user_id=1";
$result=$db->getOne($sql);
print_r($result);
}
test_getOne();
//执行数据库查询
test_query();
function test_query()
{
global $db;
$sql = "UPDATE ecs_admin_user SET todolist ='我那个' WHERE user_id =1";
$db->query($sql);
$sql = "SELECT todolist FROM ecs_admin_user WHERE user_id = 1";
$result = $db->getOne($sql);
print_r($result);
}
//数据库表操作
function autoExecute1(){
global $db;
$table="ecs_role";
$field_values=array("role_name"=>"总经理办","role_describe"=>"总经理办","action_list"=>"all");
$db->autoExecute($table,$field_values,"INSERT");
$role_id=$db->insert_id();
$field_values=array("action_list"=>"goods_manage");
$db->autoExecute($table,$field_values,"UPDATE","role_id=$role_id");
$sql="select action_list from ecs_role where role_id=$role_id";
$result=$db->getOne($sql);
print_r($result);
}
autoExecute1();
本文标签:
很赞哦! ()
相关文章
随机图文
-
ecshop购物车暂无商品,购物车没有商品保存不了的解决方法
这个只需要修改 includes/cls_session.php 就好了1,找到 function cls_session(...)2,找到function gen_session_key($session_id) -
ecshop后台商品列表怎么显示会员等级价格
1、修改admin/includes/lib_goods.php的goods_list()函数部分在;2、修改模板文件admin/templates/goods_list.htm -
ecshop商城之transport与jquery冲突之处理方法
众所周知:ecshop的transport.js文件和Jquery是冲突的,两个文件不能同时调用,现给出以下解决方案: -
ecshop会员注册页面的Email怎么修改成非必填项
有人说,在后台的 “会员注册项设置 ”里面不是可以控制是否必填吗??我就碰到好几个人这么说过。
留言与评论 (共有 条评论) |