Einen eigenen Magento Admin-Theme registrieren

Wer mal eben einen eigenen Admin-Theme (Skin) braucht um z.B. das Logo im Adminbereich auszutauschen oder etwas CSS anzupassen damit es besser zum CI des Kunden passt kann dies schnell in einem eigenen Modul über die config.xml oder über die globale local.xml durch eine einfachen Konfigurationseintrag machen. <?xml version=“1.0″?> <config> <stores> <admin> <design> <theme> <default>mytheme</default> […]

n98-magerun – Magento über die Konsole managen

Wer viel mit Magento arbeitet wird sicherlich die mit Magento im shell Verzeichnis ausgelieferten praktischen Scripte kennen. Damit lässt sich schnell und stabil (im Vergleich zum Web-Frontend) ein Index neu erstellen. Also Entwickler kann man auch selbt Scripte auf Basis der Klasse Mage_Shell_Abstract mit seinem Modul ausliefern. n98-magerun soll diese Scripte die mit Magento deployed […]

Flat Index für einen einzelnen Store-View neu erstellen

Wer viele Magento Store-Views angelegt hat und „mal eben“ einen Index neu erstellen muss, muss unter umstände (bei vielen Produkten im Katalog) recht lange warten. Hier wäre es toll, wenn man nur einen einzelnen Store-View-Index gezielt neu erstellen könnte. Einen Anfang haben ich für den Flat-Catalog-Index gemacht: <?php require_once ‚app/Mage.php‘; Mage::app(‚admin‘); $indexer = Mage::getSingleton(‚catalog/product_flat_indexer‘); $indexer->rebuild(22); […]

Speichern von mehreren Objekten über eine Transaktion

<?php // $foo = Mage::getModel(‚….. // $bar = Mage::getModel(‚….. $transaction = Mage::getModel(‚core/resource_transaction‘); $transaction->addObject($foo); $transaction->addObject($bar); $transaction->save(); // runs save on all objects. On error -> rollback Magento nutzt das core/resource_transaction Model selbst bei Speichern einer Order während des Checkouts. Es kann aber auch im eigenen Modul nützlich sein.

Magento DB resourcen / connections auflisten

<?php require_once ‚app/Mage.php‘; Mage::app(); $xml = Mage::app()->getConfig()->getNode(‚global/resources‘); foreach ($xml->children() as $node) { echo $node->getName() . PHP_EOL; } Es wird dann eine Liste der definierten DB-Resourcen aufgelistet: default_setup default_write default_read core_setup core_write core_read db eav_setup admin_setup adminnotification_setup cron_setup directory_setup dataflow_setup cms_setup index_setup customer_setup catalog_setup catalogrule_setup ….

Magento automatisch installieren

Via Vagrant / Puppet Bei der vorletzten PHPUG Rheinhessen hatte ich bereits eine automatische Magento Installation über Vagrant und Puppet vorgestellt. Damit ist es möglich eine komplette Virtuelle Maschine mit Magento innerhalb von Minuten hochzuziehen. Das ist super, wenn man mal eben ein wirklich leeres System benötigt. Das ganze ist keine Hexerei, denn Magento bietet […]

Eine bessere Übersicht bei Magento Katalog-Preisregeln

Inspiriert von Fabrizios Verbesserungen bei der  Webseite/Store/Store-View Darstellung  (http://www.fabrizio-branca.de/magento-website-store-groups-store-views.html) kam mir die unübersichtliche Auflistung von Katalog-Preisregeln in den Sinn. Von Fabrizios Entusiasmus angesteckt habe ich mich nun hingesetzt und ein Magento Modul entwickelt. Das Modul tauscht das Grid unter „Promotions -> Catalog Price Rules“ aus und entfernt den Pager. Es werden nun alle Regeln auf […]

Eigene Tools in PHPStorm einbinden / Magento Cache über IDE leeren

Ich als Magento Entwickler bin das ständige Cache leeren bereits gewohnt und habe mir für meine Linux Workstation ein Bash-Alias „clear-magento-cache“ angelegt. alias clear-magento-cache=“rm -Rf var/cache/mage–*“ Den Befehl rufe ich dann immer in einem geöffneten Terminal Fenster auf. Wie ihr seht muss ich hierfür aber meine IDE verlassen. Besser wäre es man könnte direkt einen […]

Magento 2.0 Entwicklungsversion – Ein erster Einblick

Magento hat die Entwicklungsversion des 2.0 Branch in einem öffentlichen SVN Repository auf dem Server bereitgestellt. Um einen Blick auf die Entwicklung zu werfen kann man sich den Code einfach unter der URL http://mage2.magentocommerce.com/svn/public/ auschecken und einmal reinschauen. Ein Blick unter die Haube lohnt sich. Wer Angst hatte, dass sich mit Version 2 alles ändert, […]