Wie erstelle ich neue Spalten?
In der Kundenübersicht von Magento sieht man schon so einige Details auf den ersten Blick, aber was ist wenn das nicht genug ist?
Wenn man es mal gefunden hat, ist es leicht umgesetzt
Die Spalten für die Kundenübersicht werden in der Datei /app/code/core/Mage/Adminhtml/Block/Customer/Grid.php verwaltet. Hierbei müssen zwei Funktionen überschrieben werden. In meinem Beispiel hab ich Kundennummer und Firma den Spalten hinzugefügt. Diese Lösung habe ich unter 1.3.x getestet, ob es auch unter 1.4.x auch so funktioniert habe ich noch nicht überprüft.
protected function _prepareCollection()
{
$collection = Mage::getResourceModel('customer/customer_collection')
->addNameToSelect()
->addAttributeToSelect('email')
->addAttributeToSelect('created_at')
->addAttributeToSelect('group_id')
->addAttributeToSelect('kundennummer') // Muss ergänzt werden, damit die Daten auch ausgegeben werden
->addAttributeToSelect('company')
->joinAttribute('billing_postcode', 'customer_address/postcode', 'default_billing', null, 'left')
->joinAttribute('billing_city', 'customer_address/city', 'default_billing', null, 'left')
->joinAttribute('billing_telephone', 'customer_address/telephone', 'default_billing', null, 'left')
->joinAttribute('billing_region', 'customer_address/region', 'default_billing', null, 'left')
->joinAttribute('billing_country_id', 'customer_address/country_id', 'default_billing', null, 'left');
$this->setCollection($collection);
return parent::_prepareCollection();
}
und
protected function _prepareColumns()
{
/* ... */
$this->addColumn('kundennummer', array(
'header' => 'Kundennummer', // Spaltenüberschrift
'width' => '150', // Breite der Spalte
'index' => 'kundennummer'
));
$this->addColumn('company', array(
'header' => 'Firma', // Spaltenüberschrift
'width' => '150', // Breite der Spalte
'index' => 'company'
));
/* ... */
return parent::_prepareColumns();
}
Welche Typen von Felder kann man im Magento Admin Panel anlegen?
Im Ordner
lib/Varien/Data/Form/Element/
kann man sich einen Überblick verschaffen, welche Typen von Feldern man im Admin Panel anlegen kann. Ab der Version 1.4.x ist der Link-Typ neu dazu gekommen.