今天我们学习一下如何在首页调取某个分类的商品:注意了,这里的修改有一些麻烦了哦:首先你需要下载一套新的模板,比如blueksy 上传到模板目录 /themes/

也就是 /themes/bluesky,然后进入网站后台->模板管理->模板选择,选择bluesky, 选择OK,然后到网站后台 -> 模板管理 -> 设置模板 -> 分类下的商品 ( 点击分类下的商品前面的 号,然后选择“主区域中间“,序号默认, 商品分类随便选择一个就可以了", 然后填写显示的条数,填写好后点击确定提交,( 注意: 有的朋友可能会遇到提交不了,是因为权限问题,需要把bluesky的模板权限改,然后再重新提交一次)。这里我增加了两个,的数据是:主区域空间 0 手机  6

主区域空间  0 手机 6我们在这里增加了多少条记录,对应首页就可以调取多少个分类。好接下来我们恢复模板为原来我们改过的default模板在我们以前做的基础上增加如下代码(也就是在原来代码的下面加上):

复制内容到剪贴板

代码:

<p>第一个分类的<p>

<?php $this->assign('cat_goods',$this->_var['cat_goods_1']); ?>

<?php $this->assign('goods_cat',$this->_var['goods_cat_1']); ?>

<?php echo $this->fetch('library/cat_goods.lbi'); ?>

<p>第二个分类的<p>

<?php $this->assign('cat_goods',$this->_var['cat_goods_3']); ?>

<?php $this->assign('goods_cat',$this->_var['goods_cat_3']); ?>

<?php echo $this->fetch('library/cat_goods.lbi'); ?>

这里要注意了, 红色的 1 代表你要显示分类的分类的ID, 将它改为你需要的 刚才添加的ID就可以了红色的 3 代表你要显示分类的分类的ID, 将它改为你需要的 刚才添加的ID就可以了好了,保存,前台刷新看看啊,呵呵.是不是我们要的分类就出来了,看样子改起来很简单哦,不过每次都是这样要操作两个模板才能改还是有些麻烦,呵呵,等到高手进阶的时候再来讲怎么做。仔细一看还是有点不好的地方哦,就是样子不好看啊,对不对?是默认模板的样子,没有关系啦,我们打开 librasy目录中的cat_goods.lbi文件修改就可以了。修改要注意的地方上门讲过了,不过这里还是要再说明一些小问题cat_goods.lbi的代码如下:

复制内容到剪贴板

代码:

<meta http-equiv="Content-Type" content="text/html; charset=utf-8">

<div class="title-div"><img src="../images/green_arrow.gif" width="37" height="37" alt="" border="0" style="vertical-align:middle" />

<a href="{$goods_cat.url}">{$goods_cat.name|escape:html}</a></div>

<div class="content-div">

  <!--{foreach from=$cat_goods item=goods}-->

  <table border="0" cellpadding="3" cellspacing="1" class="goods-table" style="float: left">

    <tr>

      <td align="center"><a href="{$goods.url}"><img src="{$goods.thumb}" border="0" alt="{$goods.name|escape:html}" class="thumb" /></a></td>

    </tr>

    <tr>

      <td><a href="{$goods.url}" title="{$goods.name|escape:html}">{$goods.short_name|escape:html}</a><br />

        <!-- {if $goods.promote_price neq ""} -->

        {$lang.promote_price}<span class="goods-price">{$goods.promote_price}</span>

        <!-- {else}-->

        {$lang.shop_price}<span class="goods-price">{$goods.shop_price}</span>

        <!--{/if}-->

      </td>

    </tr>

  </table>

  <!--{/foreach}-->

  <br style="clear:both"/>

</div>

这里哦于一些奇怪的地方就是在标签两边多了 <!-- 和 --> 符号,这个是没有关系的.删除掉也没有关系的啦

常见问题解答:1.  怎么让首页显示的每行3个商品能够按照普通屏或者宽屏,自动的缩放。答:把表格宽度设置为百分比,或者在Css中设置为百分比就好了。2. 又或者改成每行固定4个显示 ?答:到网站后台 -> 模板管理 -> 设置模板 <BR< p>>3 .首页图片大小是多少?图片点击放大后为什么失真这么厉害?怎么让图片自动调节大小?答:有两种方法哦,第一种就是到网站后台,重新设置缩略图的大小,然后再批量重新生成缩略图第二中方法就是把图片显示的高和宽都去掉(即:把width=***,height=***删除掉),它就显示原始的大小了.

ECshop 二次开发模板教程4的更多相关文章

  1. ECshop 二次开发模板教程3

    <p>商品列表</p> <table width="70%" border="1"> <tr> <td&g ...

  2. ECshop 二次开发模板教程2

    不知道大家是学会用循环了呢,还是我的言语实在有问题,大家实在无法完成阅读哦,居然大家都没有问题,暂时心里安慰,把他当做好事情,大家都会调用了,呵呵,那我们继续循环调用商品了!好,继续在我们昨天的基础上 ...

  3. ECshop 二次开发模板教程1

    本教程适用于了解 ECshop 和 ECshop模板DIY 以及它们的日常使用,在查看前阁下需要至少会使用一种编辑器(exp:Dreamweaver, editplus, emacs, vi, ee  ...

  4. EcShop二次开发系列教程–总纲

    EcShop作为老牌的B2C独立网店系统,功能非常全名,强大的文件.数据库缓存机制,保证前后台系统执行速度更快.系统平稳运行.但是过多的功能也或多或少的会影响到系统的整个效率,所有在使用EcShop搭 ...

  5. ECSHOP二次开发指南

    ECSHOP二次开发指南 发布时间:2013-05-28 12:47:00   来源:   评论:0 点击: 次 [字号:大 中 小] QQ空间新浪微博腾讯微博人人网豆瓣网百度空间百度搜藏开心网复制更 ...

  6. ecshop二次开发 给商品添加自定义字段

    说起自定义字段,我想很多的朋友像我一样会想起一些开源的CMS(比如Dedecms.Phpcms.帝国)等,他们是可以在后台直接添加自定义字段的. 抱着这种想法我在Ecshop的后台一顿找,不过肿么都木 ...

  7. ecshop二次开发之购物车常见问题

    1.ecshop二次开发中保存注册用户购物车数据解决方法:ecshop购物车是数据库中cart表来支持的,在ecshop表中rec_id是编号,user_id是注册用户的id,session_id表示 ...

  8. Ecshop二次开发必备基础

    EcShop二次开发学习方法 近年来,随着互联网的发展,电子商务也跟着一起成长,B2B,C2C,B2C的电子商务模式也不断的成熟.这时催生出了众多电子商务相关的PHP开源产品.B2C方面有Ecshop ...

  9. EcShop二次开发学习方法和Ecshop二次开发必备基础

    ecshop二次开发学习方法 近年来,随着互联网的发展,电子商务也跟着一起成长,B2B,C2C,B2C的电子商务模式也不断的成熟.这时催生出了众多电子商务相关的php开源产品.B2C方面有Ecshop ...

随机推荐

  1. (int)、Convert.ToInt32()与int.Parse()的区别

    1.(int)是类型转换,能够使用(int)进行强类型转换的只能是数值类型,如long.short.double等,这种转换时需要考虑精度问题. 如下的代码就行不通了: string text = & ...

  2. 深入浅出ES6(二):迭代器和for-of循环

    作者 Jason Orendorff  github主页  https://github.com/jorendorff 我们如何遍历数组中的元素?20年前JavaScript刚萌生时,你可能这样实现数 ...

  3. java基础知识回顾之java Thread类--java线程实现常见的两种方式实现Runnable接口(二)

    创建线程的第二中方式: /** *      步骤: 1定义类实现Runnable接口      2.实现Runnable接口中的run方法.      3.通过Thread类建立线程对象,并将Run ...

  4. C Primer Plus 第3章 数据和C 编程练习

    1. /* 整数上溢 */ #include <stdio.h> int main(void) { ; unsigned ; /* 无符号整数j像一个汽车里程指示表(形容的太好了,可参考& ...

  5. CLR 读书笔记

    http://www.cnblogs.com/wang_yb/tag/CLR%20via%20C%23%E7%AC%94%E8%AE%B0/

  6. python学习[一]

    Vamei写了很好的python教程,感谢:http://www.cnblogs.com/vamei/archive/2012/09/13/2682778.html 摘录笔记 print命令行模式: ...

  7. Sina App Engine(SAE)入门教程(1)

    此教程只针对刚接触SAE的小白用户,资深码农.高手请绕道.首先还是一个经典的实例,hello sae. 创建应用 在注册完账号之后,需要到 http://sae.sina.com.cn/?m=myap ...

  8. C++:派生类的构造函数和析构函数

    4.2 派生类的构造函数和析构函数4.2.1 派生类构造函数和析构函数的执行顺序 通常情况下,当创建派生类对象时,首先执行基类的构造函数,随后再执行派生类的构造函数:当撤销派生类对象时,则先执行派生类 ...

  9. 【原创】Kmeans算法 优缺点分析

    优点: 原理简单(靠近中心点),实现容易(1.2 天),聚类效果中上(依赖K的选择) 缺点: 1. 无法确定K的个数 (根据什么指标确定K) 2. 对离群点敏感 (容易导致中心点偏移) 3. 算法复杂 ...

  10. opengl 杂记

    函数原型: void glClear(GLbitfield mask); 参数说明: GLbitfield:可以使用 | 运算符组合不同的缓冲标志位,表明需要清除的缓冲,例如glClear(GL_CO ...