1

Adminhtml_Block_Sales_Order_Grid に顧客グループの列を追加しようとしました。部分的に成功しました。私が抱えている唯一の問題は、注文がゲスト顧客によって行われた場合、列が空になることです。

私のコード:

<?php
class MyNamespace_CustomizeGrids_Block_Sales_Order_Grid extends                         Mage_Adminhtml_Block_Sales_Order_Grid
{
    protected function _prepareColumns() {
        $groups = Mage::getResourceModel('customer/group_collection')
                    ->addFieldToFilter('customer_group_id', array('gt' => 0))
                    ->load()
                    ->toOptionHash();

        $groups[0] = "Guest";


        $this->addColumn('customer_group_id', array(
            'header'  => Mage::helper('customer')->__('Customer Group'),
            'width'   => '100',
            'index'   => 'customer_group_id',
            'type'    => 'options',
            'options' => $groups,
        ));

        $this->addColumnsOrder('customer_group_id', 'shipping_name');

        return parent::_prepareColumns();
    }
}

ご覧のとおり、$groups 配列を操作してこの問題を修正しました。

私の質問は次のとおりです。これを行うためのより良い方法はありますか?

4

1 に答える 1