주문 및 송장 (백엔드)의 그리드에 지불 옵션을 표시하려고합니다.Magento - 가입 후 필터링 주문/송장 수집 및 일부 맞춤 작업
내가 핵심 파일을 로컬 폴더에
app/code/core/Mage/Adminhtml/Block/Sales/Order/Grid.php
app/code/core/Mage/Adminhtml/Block/Sales/Invoice/Grid.php
후 편집 기능 _prepareCollection()와 _prepareColumns를 복사 한(). 컬럼 준비는 생각할 필요가 없다. 문제는 콜렉션에있다.
내 변경 :
파일 : 응용 프로그램/코드/코어/마법사/Adminhtml/차단/판매/주문/Grid.php
protected function _prepareCollection(){
$collection = Mage::getResourceModel($this->_getCollectionClass());
$collection->getSelect()->joinLeft('sales_flat_order', 'main_table.entity_id = sales_flat_order.entity_id',array('total_qty_ordered', 'shipping_description'));
$collection->getSelect()->joinLeft('sales_flat_order_payment', 'sales_flat_order_payment.parent_id = main_table.entity_id',array('method'));
// this is custom function that retrieves an array with payment option and its label
$metode = $this->getActivePaymentMethods();
// we get labels of payment options
foreach ($collection as $afn) {
foreach ($metode as $method) {
if ($method['value'] == $afn['method']) {
$afn->setData('method', $method['label']);
}
}
}
$this->setCollection($collection);
return parent::_prepareCollection();
}
이 코드가 실제로 어떻게해야 무엇 않습니다. 이 주문에 사용 된 지불 및 운송 옵션을 검색합니다. 그러나 컬렉션에 '메소드'를 추가하면 페이지 매김과 순서가 깨집니다.
모든 주문을 한 페이지에 표시하며 주문하지 않습니다. 송장과 동일합니다.
나는 운이없이 한 시간 동안 지금 봤어. 너 어디 좀 봐 줄래?
감사합니다.
내가 이미 얻었다. 적절한 값을 표시합니다. 문제는 페이지 매김이 깨져 있다는 것입니다. –
이게 맞는 것 같습니다. 나는 그것을 이해하지 못했습니다. 감사! –