Magento: Artikeleingabemaske per Extension um benutzerdefinierte Felder erweitern
Früher oder später kommt der Punkt, an dem es nötig ist, die Eingabemasken respektive Eingabeformulare im Magento-Backend von Artikeln und Kategorien per Extension um eigene, benutzerdefinierte Felder zu erweitern.
Am schnellsten lässt sich ein Magento-Extension-Gerüst mittels des ModuleCreator erstellen. Dieses muss dann nur noch entsprechend angepasst werden:
Im ersten Schritt gilt es, die für die Ergänzung der neuen Felder benötigte Magento-Datenbankklasse Mage_Catalog_Model_Resource_Eav_Mysql4_Setup zu inkludieren, damit die darin enthaltene Methode addAttribute() zur Verfügung steht. Dazu ergänzen Sie in der Konfigurationsdatei etc/config.xml der erstellen Magento-Extension die Angabe der entsprechenden Klasse:
<setup> <module>my_extensionname</module> <class>Mage_Catalog_Model_Resource_Eav_Mysql4_Setup</class> </setup>
Im nächsten Schritt passen Sie den MySQL-Code in der Extension-Datei sql/extensionname_setup/mysql4-install-0.1.0.php an:
<?php
$installer = $this;
$installer->startSetup();
$installer->addAttribute('catalog_product','my_item',array(
'type' => 'int',
'visible' => true,
'label' => 'Hello World',
'required' => false,
'default' => '0',
'group' => 'General',
'global' => Mage_Catalog_Model_Resource_Eav_Attribute::SCOPE_STORE,
'note' => 'Hello World'
));
$installer->endSetup();
Im Beispiel fügen wir der Artikeleingabemaske unter der Rubrik “General” ein neues Feld “Hello World” hinzu. Für den neuen Entität-Typ legt Magento automatisch einen entsprechenden Eintrag in der Tabelle eav_attribute an. Der Name des neuen Entität-Typs (Spalte: attribute_code) wird vom zweiten Parameter der Methode addAttribute() – hier also “my_item” – übergeben.
Tags: E-Shop, Online-Shop





