找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 120|回复: 0

[cms教程] Ecshop二次开发之自定义库文件和模板数据调用实例

[复制链接]

该用户从未签到

发表于 2019-3-24 16:27:00 | 显示全部楼层 |阅读模式

您需要 登录 才可以下载或查看,没有账号?立即注册

×
Ecshop二次开发之自定义库文件和模板数据调用实例
本文实例讲述了Ecshop二次开发之自定义库文件和模板数据调用方法。分享给大家供大家参考。具体方法如下:
Smarty的标签非常多,也比较繁琐,所以Ecshop使用了精简版的Smarty,其中用到的Smarty模板语法:
{$keywords} 输出模板变量
{$array.test.abc} 输出二维数组
{$lang.remark_package} 语言包$lang[remark_package,
{insert_scripts files='common.js'} 引入js文件
xxxx 循环
xxxx  判断
  引入goods_tags.lbi库文件,相当于PHP的include
{*内容*}  html注释,只在模板上显示,页面上会被删除掉.Ecshop二次开发的数据调用,主要动用到以下两个目录下的文件
dwt(模板文件)路径: themes\default
lbi(库文件)路径: themes\default\library
举个例子就很清楚了,是我从网上找来的,由于转载得很严重,所以不知道真正出处。
我们在themes\default\library下新建一个名为newest_comments.lbi的库文件,写入以下内容:
复制代码代码如下:if(!function_exists("get_new_comments")){
function get_new_comments($num)
{
   $sql = 'SELECT * FROM '. $GLOBALS['ecs',->table('comment') .
            ' WHERE status = 1 AND parent_id = 0 and comment_type=0 '.
            ' ORDER BY add_time DESC';
  if ($num > 0)
  {
   $sql .= ' LIMIT ' . $num;
  }
  //echo $sql;
  $res = $GLOBALS['db',->getAll($sql);
  $comments = array();
  foreach ($res AS $idx => $row)
  {
   $comments[$idx,['add_time',       = $comments[$idx,['add_time',       = local_date
($GLOBALS['_CFG',['time_format',, $row['add_time',);
   $comments[$idx,['user_name',       = $row['user_name',;
   $comments[$idx,['content',       = $row['content',;
   $comments[$idx,['id_value',       = $row['id_value',;
  }
  return $comments;
}
}
$this->assign('new_comments',get_new_comments(10)); // 10条最新评论
?>
[url=goods.php?id={$comment.id_value},
    {$comment.content|truncate:15:""}[/url]
时间:{$comment.add_time}
这样一个库文件就做好了。我们发现,库文件可以使用PHP、Smarty标签和HTML混写的写法,这无疑大大降低了我们二次开发的难度。这个库文件的作用,就是取出数据库中的10条最新评论,并且循环输出到模板。
接下来我们就要在模板中调用这个库文件,我们打开首页的模板themes\default\index.dwt(这里的dwt文件和页面都是一一对应,如商品页是goods.dwt,品牌页是brand.dwt)。我们在首页模板适当的地方加入:
复制代码代码如下: @@@这里即使修改了也没反应@@@
这样就实现了自定义库文件的编写和调用。
细心的你可能会发现,在Ecshop的dwt模板文件中,调用库文件标签之间存在着一些和对应的lbi库文件中重复的内容。你可以把它们当作是注释,用Dreamweaver等编辑器编辑模板时候的需要看见的注释。 真正的库文件内容还需要到相应的库文件中去修改。好吧 ,就是这些,简单吧。
希望本文所述对大家的ecshop二次开发有所帮助。
回复

使用道具 举报

网站地图|页面地图|文字地图|Archiver|手机版|小黑屋|找资源 |网站地图

GMT+8, 2024-11-16 04:24

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表