Wiem, że istnieje już jedna akceptowana odpowiedź, ale potrzebowałem więcej informacji o tym, jak uzyskać cenę produktu.
Wbudowana klasa produktów Prestashop ma metodę getPrice.
/**
* Get product price
* Same as static function getPriceStatic, no need to specify product id
*
* @param bool $tax With taxes or not (optional)
* @param int $id_product_attribute Product attribute id (optional)
* @param int $decimals Number of decimals (optional)
* @param int $divisor Util when paying many time without fees (optional)
* @return float Product price in euros
*/
public function getPrice($tax = true, $id_product_attribute = null, $decimals = 6,
$divisor = null, $only_reduc = false, $usereduc = true, $quantity = 1)
{
return Product::getPriceStatic((int)$this->id, $tax, $id_product_attribute, $decimals, $divisor, $only_reduc, $usereduc, $quantity);
}
Jak widać można określić, czy chcesz go z podatków, liczby dziesiętne podanych jako skutek, a liczba dzielnik.
Tak więc, jeśli chcesz uzyskać cenę wyrobu przez ID i bez podatków można go osiągnąć jak ten
$product = new Product($id_product, $id_language) // Fill with your info
$price_with_taxes = $product->getPrice(true);
$price_wout_taxes = $product->getPrice(false);
Jako inne komentarze powiedzieć, jeśli jesteś wewnątrz matrycy, można uzyskać produkt id w zależności od modyfikowanego widoku.
W product.tpl (widok pojedynczego produktu) znajduje się zmienna $ product. W product-list.tpl masz zmienną $ products, tablicę zawierającą wszystkie produkty pokazane na liście.
Mam nadzieję, że to pomoże.
Istnieje znacznie prostsze rozwiązanie do wyświetlania w PHP tych wartości. Będziesz potrzebował id_product i id_product_attribute, a przy tym musisz utworzyć nowy obiekt produktu przez $ p = nowy produkt (twój_produkt_id), a następnie $ p-> getPrice (true, id_product_attribute) i to jest dla ceny z podatkiem. W przypadku braku podatku należy użyć false w pierwszym parametrze. –