2017-07-06 47 views
0

我試圖在每個產品的產品列表頁面中獲得可用的產品組合(尺寸)。基本上有一個圖像,產品名稱,可用組合,價格,購買按鈕。產品列表上的Prestashop產品組合顯示

我試圖把$ product對象,但它沒有組合變量。

有什麼辦法可以達到這個目的嗎?

回答

2

ProductController.php中有功能assignAttributesGroups(),您可以從中獲取尺寸組合的代碼。

protected function assignAttributesGroups() 
{ 
... 
... 
... 
$this->context->smarty->assign(array(
      'groups' => $groups, 
      'colors' => (count($colors)) ? $colors : false, 
      'combinations' => $combinations, 
      'combinationImages' => $combination_images 
     )); 
} 

如果您打印的值爲groups,您將獲得所需的輸出。組合已被佈置成顯示product.tpl(/PRESTASHOP_FOLDER/themes/default-bootstrap/product.tpl)下拉如圖圖像enter image description here

可以從上面提到的功能採取一個代碼,並運行它用於在每一個產品列表。您必須創建一個產品對象並通過它接收組合。併爲此創建一個下拉菜單。

+0

是的,但我想得到的組合顯示在category.tpl。它在哪裏輸出所有類別的產品。在產品卡上顯示所有可用購買組合。所以我想它必須與類別控制器做一些調整 – osiic21

+0

是的,你必須在類別控制器中編寫代碼。只需深入閱讀該函數,並嘗試使用此類代碼來使您的函數獲取組合。一旦獲取了所有組合,就可以使用它。請注意,在產品控制器中,所有的組合都被提取用於瀏覽器上打開的特定產品,並且產品控制器運行時使用'$ this-> product',但要在類別頁面上顯示,您必須創建產品對象。 – Nimish