关于ecshop中'/library/cat

编程入门 行业动态 更新时间:2024-10-08 02:18:19

关于<a href=https://www.elefans.com/category/jswz/34/1764724.html style=ecshop中'/library/cat"/>

关于ecshop中'/library/cat

library/cat_goods.lbi中 循环代码是这样的,

{foreach from=$cat_goods item=goods}

很显然找到$cat_goods这个变量在哪里定义就行了,发现是在这里定义的:

includes/libs_goods.php中的assign_cat_goods函数:

$GLOBALS['smarty']->assign('cat_goods_' . $cat_id, $goods);

这里对cat_goods进行了全局定义。后发现:

includes/lib_main.php中的assign_dynamic函数对上面的assign_cat_goods进行了调用:

switch ($row['type']){case 1:/* 分类下的商品 */$GLOBALS['smarty']->assign('goods_cat_' . $row['id'], assign_cat_goods($row['id'], $row['number']));

而首页index.php中对assgin_dynamic进行了调用:

    /* 页面中的动态内容 */assign_dynamic('index');   //这里是给函数传入的首页模板参数。(后台模板设置中有这个首页模板)
}$smarty->display('index.dwt', $cache_id);   



模板中需要注意的是,ecshop模板引擎从TemplateBeginEditable的name值来索引数据的。如果模板中没有这个,那么后台模板设置>分类下的产品>下来列表就没有相应的数据。一个典型的用法如下:
<!-- TemplateBeginEditable name="1层产品" -->
<!-- #BeginLibraryItem "/library/cat_goods.lbi" -->     //这里不能写成{include file="/library/cat_goods.lbi“} 否则模板设置>分类下的商品出不来数据
"}
<!-- #EndLibraryItem -->
<!-- TemplateEndEditable -->

<!-- TemplateBeginEditable name="2层产品" -->
<!-- #BeginLibraryItem "/library/cat_goods.lbi" -->
<!-- #EndLibraryItem -->
 <!-- TemplateEndEditable -->

<!-- TemplateBeginEditable name="3层产品" -->
<!-- #BeginLibraryItem "/library/cat_goods.lbi" -->
<!-- #EndLibraryItem -->
 <!-- TemplateEndEditable -->

  
 就是下面这个图了:

这样就可以了。

转载于:.html

更多推荐

关于ecshop中'/library/cat

本文发布于:2024-03-12 11:04:47,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1731362.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:ecshop   library   cat

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!