Grid.php переопределение не работает
Я пытаюсь override
ниже файла:
/app/code/core/Mage/Adminhtml/Block/Newsletter/Subscriber/Grid.php
:
class Mage_Adminhtml_Block_Newsletter_Subscriber_Grid extends Mage_Adminhtml_Block_Widget_Grid
{
...
protected function _prepareColumns()
{
$this->addColumn('subscriber_id', array(
'header' => Mage::helper('newsletter')->__('ID'),
'index' => 'subscriber_id'
));
/* Need to add own cloumn */
}
....
}
Вот что я пытаюсь сделать с custom module
:
/app/code/local/Customletter/Phone/etc/config.xml
:
<?xml version="1.0"?>
<config>
<modules>
<Customletter_Phone>
<version>1.0.0</version>
</Customletter_Phone>
</modules>
<global>
<blocks>
<phone>
<class>Customletter_Phone_Block</class>
</phone>
<adminhtml>
<rewrite>
<subscriber_grid>
Customletter_Phone_Adminhtml_Block_Newsletter_Subscriber_Grid
</subscriber_grid>
</rewrite>
</adminhtml>
</blocks>
<resources>
<customletter_phone>
<setup>
<module>Customletter_Phone</module>
</setup>
<connection>
<use>core_setup</use>
</connection>
</customletter_phone>
</resources>
</global>
</config>
/app/code/local/Customletter/Phone/Adminhtml/Block/Newsletter/Subscriber/Grid.php
:
class Customletter_Phone_Adminhtml_Block_Newsletter_Subscriber_Grid extends Mage_Adminhtml_Block_Newsletter_Subscriber_Grid
{
protected function _prepareColumns()
{
$this->addColumn('customletter_phone', array(
'header' => Mage::helper('newsletter')->__('Customer Phone Number'),
'index' => 'customletter_phone',
'default' => '----'
));
return parent::_prepareColumns();
}
}
Проблема: В Newsletter Subscribers grid
Customer Phone Number
не появляется.
Я использую magento 1.9.2.4
.
1
Author: Hiranya Sarma, 2016-10-10
2 answers
Вы переписали неправильно, пожалуйста, замените:
<adminhtml>
<rewrite>
<subscriber_grid>
Customletter_Phone_Adminhtml_Block_Newsletter_Subscriber_Grid
</subscriber_grid>
</rewrite>
</adminhtml>
С помощью:
<adminhtml>
<rewrite>
<newsletter_subscriber_grid>Customletter_Phone_Adminhtml_Block_Newsletter_Subscriber_Grid</newsletter_subscriber_grid>
</rewrite>
</adminhtml>
1
Author: Raphael at Digital Pianism, 2016-10-10 10:48:19
Замените свой код
<adminhtml>
<rewrite >
<subscriber_grid >
Customletter_Phone_Adminhtml_Block_Newsletter_Subscriber_Grid
</subscriber_grid >
</rewrite >
</adminhtml >
С
<adminhtml >
<rewrite >
<newsletter_subscriber_grid > Customletter_Phone_Adminhtml_Block_Newsletter_Subscriber_Grid</newsletter_subscriber_grid >
</rewrite >
</adminhtml >
Заменить защищенную функцию _prepareColumns() кодом функции
$this->addColumn('customletter_phone', array(
'header' => Mage::helper('newsletter')->__('Customer Phone Number'),
'index' => 'customletter_phone',
'default' => '----'
));
return parent::_prepareColumns();
С
$this->addColumn('subscriber_id', array(
'header' => Mage::helper('newsletter')->__('ID'),
'index' => 'subscriber_id'
));
$this->addColumn('email', array(
'header' => Mage::helper('newsletter')->__('Email'),
'index' => 'subscriber_email'
));
$this->addColumn('type', array(
'header' => Mage::helper('newsletter')->__('Type'),
'index' => 'type',
'type' => 'options',
'options' => array(
1 => Mage::helper('newsletter')->__('Guest'),
2 => Mage::helper('newsletter')->__('Customer')
)
));
$this->addColumn('customletter_phone', array(
'header' => Mage::helper('newsletter')->__('Customer Phone Number'),
'index' => 'customletter_phone',
'default' => '----'
));
return parent::_prepareColumns();
0
Author: Suresh Chikani, 2016-10-10 11:34:02