ecshop怎么得到商品属性的值

ECSHop的自定义属性很是好用,但是在前台输出的时候非常麻烦,只能循环输出所有的附加商品属性,不能输出制定的某个自定义的属性,本来它用的是Smarty模板,但是到2.5之后好像是把Smarty修改很多,里面好多东西不能用了。今天给朋友改东西,随便就写了下。

      我只在商品具体信息页面(goods.php)做了这个事情,可以的话可以写到每个页面去。

修改goods.php
在

PHP代码
$smarty->assign(‘properties’,          $properties['pro']);   
这句前添加:

PHP代码
//By Sharmy    
$pros = array();    
foreach($properties['pro']['商品属性'] as $k=>$pro){    
    $pros[$pro['name']]['specId'] = $k;    
    $pros[$pro['name']]['value'] = $pro['value'];    
}    
$smarty->assign(‘pros’,          $pros);    
然后在模板部分可以这样调用(例如调用自己在后台定义的"净重"的商品类别属性):

XML/HTML代码
<ul><li> 净重:{$pros.净重.value}</li></ul>   
接下来就可以修改它的其它页面了,最好是修改调用的function部分,例如修改lib_goods.php里的get_goods_propertiess。

你可能感兴趣的:(ecshop怎么得到商品属性的值)