ecshop

{if $category eq “2″}:这个表示当前栏目ID等于2时,注意2是有双引号包围的哦。这个可以放在栏目模板页,用来判断栏目ID。
{if $goods.cat_id eq “2″}:这个表示当前产品属于栏目ID2时。可以放在产品模板页,用来判断产品的栏目ID。

{if $goods.goods_id eq “2″}:这个表示当前产品属于ID2时。可以放在产品模板页,用来判断产品的ID。

 

{$keywords} 输出模板变量
{$array.test.abc} 输出二维数组
{$lang.remark_package} 语言包$lang[remark_package]
{insert_scripts files='common.js'} 引入js文件
xxxx 循环
xxxx  判断
  引入goods_tags.lbi库文件,相当于PHP的include
{*内容*}  html注释,只在模板上显示,页面上会被删除掉.

 

 

switch (strtolower($token))
            {
                case 'eq':
                    $token = '==';
                    break;

                case 'ne':
                case 'neq':
                    $token = '!=';
                    break;

                case 'lt':
                    $token = '<';
                    break;

                case 'le':
                case 'lte':
                    $token = '<=';
                    break;

                case 'gt':
                    $token = '>';
                    break;

                case 'ge':
                case 'gte':
                    $token = '>=';
                    break;

                case 'and':
                    $token = '&&';
                    break;

                case 'or':
                    $token = '||';
                    break;

                case 'not':
                    $token = '!';
                    break;

                case 'mod':
                    $token = '%';
                    break;

                default:
                    if ($token[0] == '$')
                    {
                        $token = $this->get_val(substr($token, 1));
                    }
                    break; 

很多时候我们会使用到ecshop的foreach标签去循环显示商品,那么问题是我们一般使用php的循环时都有一个变量来控制次数和取得每次循环的索引,比如那个i,使用foreach时如何取到呢,很简朴,我们给它定义一个名字就行了,如下例所示。
<!-- {foreach name=top_goods from=$top_goods item=goods}-->
       <div class="topgoodslist"> 
  <!-- {if $smarty.foreach.top_goods.iteration==1}-->
   <a href="/{$goods.url}"  class="topsale1" title="{$goods.name|escape:html}"><img src="/{$goods.goods_img}" alt="{$goods.name|escape:html}"/></a>
 <!--{/if}-->
<!--{/foreach}-->
这里 $smarty.foreach.top_goods.iteration  就是取得索引的方法。
 标题字符串的截取基本上时所有网站建设都会遇到的问题,每个系统都有不同的方法。总的来说一般有两种方法,在服务端截取和客户端截取。ecshop也是这两种方式,下面来说下:

服务端截取字符串

这个是写在Php里的,就是在读取标题字段的时候进行截取,一般你可以自己写截取多少个,也可以使用系统设置的。截取的函数是substr。像article里的short_title和goods里的short_title都是这样来的。

客户端截取

这个需要使用smarty的标签:truncate,比如:{$article.title|truncate:30}表示截取标题前30个字符。

你可能感兴趣的:(ecshop)