Prestashop 1.7:如何 fetch/display 发票上的订单状态
Prestashop 1.7 : How to fetch/display order status on invoice
我正在尝试获取订单状态,例如"shipped" 或 "delivered"(甚至订单状态 ID)并将其显示在我的 prestashop 发票上。
这样做的原因是我可以做一个聪明的 IF 语句来检查发票是否已支付。例如如果状态 = 已发货,则在发票上显示已付款。
问题是我无法在发票上显示状态(通过编辑 pdf/invoice tpl 文件。
我试过:
{OrderState::getOrderStates($id_lang)}
{$order->current_state}
return什么都没有。
如果我执行 {OrderState::getOrderStates($id_lang)|@var_dump} 我得到转储并且可以看到
{ ["id_order_state"]=> NULL
["invoice"]=> string(1) "0" ["send_email"]=> string(1) "1"
["module_name"]=> string(15) "ps_checkpayment" ["color"]=>
string(7) "#4169E1" ["unremovable"]=> string(1) "1"
["hidden"]=> string(1) "0" ["logable"]=> string(1) "0"
["delivery"]=> string(1) "0" ["shipped"]=> string(1) "0"
["paid"]=> string(1) "0" ["pdf_invoice"]=> string(1) "0"
["pdf_delivery"]=> string(1) "0" ["deleted"]=> string(1) "0"
["id_lang"]=> NULL ["name"]=> NULL ["template"]=> NULL }
但 "id_order_state" 为 NULL。
有什么方法可以检查订单状态或任何其他方法来检查订单是否已付款吗?
解决了。它的 :
$order->current_state
只需要在 header.tpl 文件之外并在 invoice.tpl 文件中
试试这个代码:
{if $order_invoice->isPaid()}
我正在尝试获取订单状态,例如"shipped" 或 "delivered"(甚至订单状态 ID)并将其显示在我的 prestashop 发票上。
这样做的原因是我可以做一个聪明的 IF 语句来检查发票是否已支付。例如如果状态 = 已发货,则在发票上显示已付款。
问题是我无法在发票上显示状态(通过编辑 pdf/invoice tpl 文件。
我试过:
{OrderState::getOrderStates($id_lang)}
{$order->current_state}
return什么都没有。
如果我执行 {OrderState::getOrderStates($id_lang)|@var_dump} 我得到转储并且可以看到
{ ["id_order_state"]=> NULL
["invoice"]=> string(1) "0" ["send_email"]=> string(1) "1"
["module_name"]=> string(15) "ps_checkpayment" ["color"]=>
string(7) "#4169E1" ["unremovable"]=> string(1) "1"
["hidden"]=> string(1) "0" ["logable"]=> string(1) "0"
["delivery"]=> string(1) "0" ["shipped"]=> string(1) "0"
["paid"]=> string(1) "0" ["pdf_invoice"]=> string(1) "0"
["pdf_delivery"]=> string(1) "0" ["deleted"]=> string(1) "0"
["id_lang"]=> NULL ["name"]=> NULL ["template"]=> NULL }
但 "id_order_state" 为 NULL。
有什么方法可以检查订单状态或任何其他方法来检查订单是否已付款吗?
解决了。它的 :
$order->current_state
只需要在 header.tpl 文件之外并在 invoice.tpl 文件中
试试这个代码:
{if $order_invoice->isPaid()}