2012-05-22 13 views
5

In Magento können Sie neue Attribute (die dann Attributsets hinzugefügt werden, die Produkte erben) mit bestimmten Typen erstellen.Benutzerdefinierter "Katalogeingabetyp für Filialleiter" für Magento-Produktattribute

Die Standardoptionen (Textfeld/Bereich, Daten, Boolean) sind ziemlich begrenzt und ich möchte meine eigenen, komplett mit Backend-Feld-Renderer und seine eigene Validierung hinzufügen. Dadurch wird ein Youtube-Feld erstellt, das eine Reihe von URLs akzeptiert, die nur in die Youtube-ID umgewandelt werden.

Aber ich würde wirklich gerne eine gute Erklärung, wie Sie Ihren eigenen "Katalog-Input-Typ für Store Owner" hinzufügen. Ich habe gesehen, dass andere Plugins es tun, aber Code zu durchforsten ist mühsam und das ist definitiv etwas, das auch andere Leute interessiert (die Frage wird oft über das Web gestellt).

Ich habe eine Weile gesucht, aber ohne Erfolg, werde ich weiterhin die Antwort jagen, bis ich es jedoch finde.

tl; dr

Also meine Frage ist: Wie ein „Katalog Eingabetyp für Store-Inhaber“ hinzufügen, vielleicht mit einer Referenz, wie eine benutzerdefinierte Validierung zu diesem Feldtyp hinzuzufügen. Dies in der richtigen MVC-Stil, also keine Bearbeitung von Core-Dateien, wenn möglich.

Bonuspunkte für sein aufwendige, generische Erklärungen & Code-Beispiele, werde ich vergebe eine Prämie auf die Qualität der Antwort basiert, wenn es sich lohnt, (da dieser wird einem größeren Publikum anwendbar).

Antwort

2

Sorry, ich habe keine Zeit für lange Antwort zu schreiben. Nächste 4 Beobachter von Wee Modul geben Ihnen benötigte Richtungen:

<config> 
    <global> 
     <events> 
      <catalog_entity_attribute_save_before> 
       <observers> 
        <weee> 
         <type>model</type> 
         <class>weee/observer</class> 
         <method>assignBackendModelToAttribute</method> 
        </weee> 
       </observers> 
      </catalog_entity_attribute_save_before> 
     </events> 
    </global> 
... 

    <adminhtml> 
     <events> 
      <adminhtml_catalog_product_edit_prepare_form> 
       <observers> 
        <weee> 
         <class>weee/observer</class> 
         <method>setWeeeRendererInForm</method> 
        </weee> 
       </observers> 
      </adminhtml_catalog_product_edit_prepare_form> 
      <adminhtml_product_attribute_types> 
       <observers> 
        <weee> 
         <type>model</type> 
         <class>weee/observer</class> 
         <method>addWeeeTaxAttributeType</method> 
        </weee> 
       </observers> 
      </adminhtml_product_attribute_types> 
      <adminhtml_catalog_product_edit_element_types> 
       <observers> 
        <weee> 
         <class>weee/observer</class> 
         <method>updateElementTypes</method> 
        </weee> 
       </observers> 
      </adminhtml_catalog_product_edit_element_types> 
     </events> 
    </adminhtml> 
</config> 
Verwandte Themen