0
我正在构建我的第一个prestashop。我有一些产品具有影响价格的属性组合。在列表视图中,我想检测一个产品是否附加了多个组合,以便在价格之前显示“发件人”。Prestashop 1.6 product_list:获取附加属性组合的编号
我一直无法找到访问与product_list.tpl中的属性或组合有关的任何方法。 我在product.php中找到了一个函数,它可能适合我想要实现的功能。
public function hasAttributes()
{
if (!Combination::isFeatureActive())
return 0;
return Db::getInstance(_PS_USE_SQL_SLAVE_)->getValue('
SELECT COUNT(*)
FROM `'._DB_PREFIX_.'product_attribute` pa
'.Shop::addSqlAssociation('product_attribute', 'pa').'
WHERE pa.`id_product` = '.(int)$this->id
);
}
从product_list.tpl我可以访问产品类中的其他东西,例如, '功能',我希望以类似的方式获得属性。
我能找到的唯一的地方“功能”被宣布为一个变量是在产品的控制,因为这种阵列的一部分:
$this->context->smarty->assign(array(...
所以我认为这是走了,一个变量,点添加到路产品类别内的所需功能。但无论我在这里输入什么内容,都无法解决问题。我究竟做错了什么?这是否是正确的方法?
在此先感谢。
感谢您的反馈。我已经用hasAttributes尝试过类似的东西,但没有骰子。不幸的是你的解决方案也没有工作:致命错误:调用一个非对象的成员函数getAttributeCombinaisons() – Boris
你可以在pastebin中发布tpl代码吗? – UnLoCo
发表:[product_list.tpl](http://pastebin.com/srUs7QnQ)。您的代码段位于105行,目前已注释掉。 – Boris