Magento Rest(e) API – Token holen und Kategorien in Magento anlegen

Nach einem Wochenende zum Kopflüften geht es wieder an die Arbeit – und somit geht es auch weiter mit der Magento Rest(e)-API. Angefangen hatte ich mit den Grundlagen zu Magento. Die weiteren Posts folgen dann Stück für Stück, am Ende werde ich noch ein kurzes Fazit der ganzen Aktion ziehen.

Token holen

Noch die einfachste der Aufgaben – API abfragen mit Benutzernamen und Passwort an das Backend und sich merken, wie der Token ausschaut.

$baseUrl = "http://mein.host.irgendwo/rest/";
$username = "admin";
$pass = "meinPW";

$ch = curl_init($baseUrl . "/V1/integration/admin/token");
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode(array("username" => $username, "password" => $pass)));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/json'));
$token = curl_exec($ch);
$token = json_decode($token);
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/json', 'Authorization: Bearer '.$token));

Soweit so einfach, es folgt der nächste Schritt…

Continue reading

Rodgau Ultramarahton 50km

Vor vier Jahren war ich schon einmal in Rodgau zum bekannten 50km Ultramarathon. Damals wusste ich noch nichts von meinen Glück Papa zu werden – mittlerweile ist der zweite Sohn auf der Welt … wie die Zeit vergeht. Nachdem auch in meiner DJK-Laufgruppe der Wunsch aufkam, doch einmal in die Ultra-Region vorzustoßen, habe ich recht bald an Rodgau als Trainings bzw. Testlauf gedacht. Immerhin hat der Rundelauf mit seinen 10 mal 5km den unbeschreiblichen Vorteil, dass man nach jeder Runde aussteigen kann und dennoch nicht irgendwo im Nirgendwo steht, wie es bei den klassischen Ultras der Fall wäre.

Die Fahrt nach Rodgau ist für mich im Vergleich zu anderen Veranstaltungen ein echter Katzensprung – etwas mehr als 100km und somit ca. eine Stunde bin ich unterwegs. Vor Ort ist bereits reichlich was los – die Einweiser haben alle Hände voll zu tun. Gut dass ich mit meinem alten Kleinwagen unterwegs bin, der passt auch in kleinere Lücken. Bei der Startnummern-Ausgabe ist es sehr voll – die Schlange steht bis auf den Parkplatz. Aber es läuft doch recht zügig. Als ich an der Reihe bin, gibt es etwas Chaos – versehentlich wurde meine Startnummer bereits ausgegeben – wohl ein Fehlgriff in die Kiste mit den Unterlagen. Aber das Team bekommt das schnell und unbürokratisch auf die Spur –  ich bekomme kurzerhand eine andere Startnummer ausgehändigt. Es tröstet mich, dass nicht nur bei unserem Herbstlauf gelegentlich etwas nicht ganz nach Plan läuft, sondern das auch andere Veranstaltungen mit ähnlichen Schwierigkeiten in Kontakt kommen. Continue reading

Magento 2 – Rest-API oder Reste-API?

Beruflich darf ich mich gerade mit Magento als Shop-System auseinandersetzen. Auf den ersten Blick ein Shopsystem wie es viele auf PHP-Basis gibt. Jedes System hat eine andere Geschichte und damit seine Eigenheiten und besonderen Pluspunkte. Leider finde ich von den Pluspunkten bei Magento für meinen aktuellen Fall etwas zu wenig bis gar keine. Wir haben eine externe Datenquelle, welche verschiedene Verwaltungsabläufe abbildet, an deren Ende eine Reihe von Produkten für den Shop stehen.

Anfänglich war ich vielleicht etwas naiv und dachte: Ein paar Zeilen SQL und dann lässt sich das Datenmodell sicherlich so extrahieren, dass man recht schnell und zuverlässig die Daten vom Quellsystem in den Shop überführen kann. Leider ist das nicht der Fall, denn Magento hat sich als Datenmodellierung für EAV entschieden. Damit ist nicht die erste allgemeine Verunsicherung gemeint (auch wenn die dann nicht mehr weit her ist) sondern eine Modellierungstechnik namens Entity-Attribute-Value. Im ersten Moment klingt das Modell für einen Shop sogar sehr lohnenswert, denn eine Shopsoftware muss ja ggf. mit verschiedensten Waren zurecht kommen. Genau das ist mit EAV möglich: Man bildet die Modellierung von zusätzlichen Eigenschaften über weitere Tabellen ab. So vernünftig das anfänglich klingen mag, um so schwieriger wird die Umsetzung in der Praxis. Da man bestimmte Attribute ja auch in verschiedenen Fällen wieder brauchen kann hat man die noch eine Stufe weiter abstrahiert. Das Ergebnis ist ein sehr umfangreiches Modell, das Anna Völkl schön aufbereitet hat. Übersichtlich ist etwas anderes, auf diesem Datenmodell  manuell direkt auf Tabellenebene zuzugreifen kann man getrost vergessen.
Continue reading