首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将自定义值从parentOrderController传递给order-payment.tpl

将自定义值从parentOrderController传递给order-payment.tpl
EN

Stack Overflow用户
提问于 2017-08-04 08:50:21
回答 1查看 136关注 0票数 1

我在parentOrderController中修改了reorder的一部分,创建了一个变量。现在我想把这个变量传递给order-payment.tpl,这样我就可以用它来检查一个条件。有人能帮帮我吗?

ParentOrderContoller.php(已添加部件)

代码语言:javascript
复制
if (Tools::isSubmit('submitPay') && $id_order = (int)Tools::getValue('id_order')) {

        //To check the order is in print ready state
        $order = new Order((int)$id_order);
        $current_order_state = $order->getCurrentOrderState();                      
        $current_order_state_id = $current_order_state->id;
        //ends here
        //d($current_order_state_id);


        // $this->context->cookie->current_order_state_id = $current_order_state->id;

        $oldCart = new Cart(Order::getCartIdStatic($id_order, $this->context->customer->id));            
        $duplication = $oldCart->duplicate();

        if (!$duplication || !Validate::isLoadedObject($duplication['cart'])) {
            $this->errors[] = Tools::displayError('Sorry. We cannot renew your order.');
        } elseif (!$duplication['success']) {
            $this->errors[] = Tools::displayError('Some items are no longer available, and we are unable to renew your order.');
        } else {
            $this->context->cookie->id_cart = $duplication['cart']->id;

            $context = $this->context;
            $context->cart = $duplication['cart'];
            CartRule::autoAddToCart($context);
            $this->context->cookie->write();
            d(Configuration::get('PS_ORDER_PROCESS_TYPE'));
            if (Configuration::get('PS_ORDER_PROCESS_TYPE') == 1) {
                Tools::redirect('index.php?controller=order-opc');
            }               
            Tools::redirect('index.php?controller=order');
        } 
    }

我希望将$current_order_state_id传递给order-payment.tpl。该怎么做呢?

EN

回答 1

Stack Overflow用户

发布于 2017-08-04 16:51:35

你应该能够做到这一点:

代码语言:javascript
复制
$this->context->smarty->assign(array(
      'current_order_state_id' => $current_order_state_id
));

这只是个附注。如果未始终设置变量,请在模板中使用以下命令进行检查:

代码语言:javascript
复制
{if isset($current_order_state_id)}
      code
{/if}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45496663

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档