2013-04-11 2 views
1

Я использую prestashop 1.5.3.1, и я хочу получить идентификатор перевозчика, чтобы выполнить шаг оплаты.Prestashop получить идентификатор оператора

В PrestaShop 1.4 я использовал {$id_carrier} и она работала хорошо, но он не работает в пс 1,5

Я хочу показать один способ оплаты в зависимости от выбранного носителя. Например:

{if $id_carrier == "1"} 
my content 
{/if} 
+0

Принимала вы посмотрите на Smarty консоли отладки, чтобы увидеть, если есть какие-либо переменные, которые могли бы быть полезными? – romainberger

ответ

7

На странице оплаты, вы можете получить выбранный Carrier ID с помощью следующей переменной Smarty:

{$cart->id_carrier} 

Это будет работать в любой точке Front-End, как на PrestaShop v1. 4.x и v1.5.x.

{if isset($cart->id_carrier) && $cart->id_carrier == 1} 
    {* Do some stuff here *} 
{/if} 
+0

Если мы говорим о \ controllers \ front \ payment.php, это не работает, если пользователь не изменил несущую на шаге 4-го шага - значение не было обновлено, поэтому 0 - нужно использовать (int) Configuration :: get ('PS_CARRIER_DEFAULT'); –

3
$carrier = new Carrier($cart->id_carrier);  (in payment module page) 
Смежные вопросы