Комментарий к заказу Magento 1.9 ДОБАВИТЬ сделать бэкэнд информацию - PullRequest
0 голосов
/ 16 октября 2018

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

/ checkout / cart / cart.phtml

Вы можете видеть, что я добавил его здесь

  <div class="cart-collaterals">
      <div class="row">
        <th><?php echo $this->__('Comments') ?></th>
      </div>
      <div class="row">
      <div class="col-xs-12 col-sm-12 col-md-6">

        <?php echo "Any special requirements regarding this order?"; ?>
        <!-- COmments box -->
        <td class="a-center">
  <textarea name="cart[<?php echo $_item->getId() ?>][comments]" rows="3" cols="20"><?php echo $_item->getItemcomment() ?></textarea>
  </td>
      </div>
    </div>
        <div class="row">
            <div class="col-xs-12 col-sm-12 col-md-4">
                <?php echo $this->getChildHtml('coupon') ?>
            </div>
            <div class="col-xs-12 col-sm-12 col-md-4">
                <?php echo $this->getChildHtml('checkout.cart.extra') ?>
                <?php if (!$this->getIsVirtual()): echo $this->getChildHtml('shipping'); endif; ?>
            </div>
            <div class="col-xs-12 col-sm-12 col-md-4">
                <div class="cart-totals">
                <span id='ajax_loadertotals' style='display:none'><!--<img src='<?php //echo $this->getSkinUrl('images/opc-ajax-loader.gif')?>'/>--><div class="loaderTotals">Loading...</div></span>
                    <div class="totals">
                        <?php echo $this->getChildHtml('totals'); ?>
                        <?php if(!$this->hasError()): ?>
                            <ul class="checkout-types">
                                <?php foreach ($this->getMethods('methods') as $method): ?>
                                    <?php if ($methodHtml = $this->getMethodHtml($method)): ?>
                                        <li><?php echo $methodHtml; ?></li>
                                    <?php endif; ?>
                                <?php endforeach; ?>
                            </ul>
                        <?php endif; ?>
                    </div>
                </div>
                <div id="shipping-info-link">
                  <a href="/checkout-shipping-details/" class="link-quickview" id="delivery-shipping-info">Delivery & Shipping Information</a>
                </div>
            </div>
        </div>
        <?php
echo $this->getLayout()->createBlock('giftcard/checkout_cart_giftcard')->setTemplate('mt/giftcard/checkout/cart/giftcard.phtml')->toHtml();
?>

                <?php echo $this->getChildHtml('crosssell') ?>


    </div>

Сейчасмоя проблема заключается в следующем: как я могу сделать так, чтобы я (продавец) мог видеть его на бэкэнде при поступлении заказа?

Я не против поменять это на страницу оформления заказа, если она будет выполненаПолегче.Если бы вы могли помочь мне с этим, я был бы очень признателен.Я посмотрел вокруг, но не нашел ничего полезного

Спасибо

1 Ответ

0 голосов
/ 16 октября 2018

1) Добавьте настраиваемое поле / атрибут в таблицу sales_flat_order, используя скрипт установки, образец приведен ниже

$installer = $this;
$installer->startSetup();
$installer->getConnection()
          ->addColumn(
              $installer->getTable('sales/order'), 'cutom_comment', 'VARCHAR(150) NOT NULL'
          );

$installer->endSetup();

2) Добавьте поле на страницу оформления заказа

3) Вы можетеиспользуйте событие " checkout_type_onepage_save_order "

4) вы можете получить значение с помощью Mage::app()->getRequest()->getPost('custom_comment')

5) получить детали заказа с помощью $order = $observer->getEvent()->getOrder();

6) сохранить заказ

$order->setCustomComment($comment);

7) добавить собственный макет для администратора для этого ref

8) получить детали заказа с помощью $order = $this->getOrder()

9) получить значение по $customComment = "$order->getCustomComment();"

...