Nach Kunden-Login ist uns aufgefallen dass der Warenkorb gar nicht angezeigt wurde. Nur auf der Kunden-Konto Seite ist die sichtbar. Ob die angezeigt wurde oder nicht wurde in folgende Datei definiert C:\xampp_7_1_23\htdocs\oku-online\app\design\frontend\econcess\default\Magento_Checkout\templates\cart\minicart.phtml   Die If-Schleife lautet:   

Auf der Startseite wieder unter „Meistverkaufte Produkte“ muss zu den Produkten ein Produktbeschreibung hinzugefügt werden. Dazu muss ein Override erstellt werden. Die Template-Datei, die überschieben werden soll liegt unter:

\app\design\frontend\template-name\default\Magento_CatalogWidget\templates\product\widget\content\grid.phtml

Den Block der eingefügt werden muss finden wir unter

Auf der Startseite von unserem Shop unter „Meistverkaufte Produkte“ muss die  „zu Vergleichsliste hinzufügen“ Funktion entfernt werden. Wir haben in unsere .xml Datei

\app\design\frontend\theme-name\default\Magento_Theme\layout\default.xml

folgende Codeschnipsel eingefügt:

Wir haben in einer unserer letzten Blogbeiträgen das Plugin "Diglin Username" vorgestellt, mit welchem es möglich ist sich bei Magento mit dem Username anzumelden. Uns ist allerdings jetzt ein unschöner Bug aufgefallen, welcher dazu führt, das der Login und der Registrierungsprozess nicht abgeschlossen werden kann. Wie Sie diesen Bug beheben können, zeige Ich ihnen heute.

Wir hatten das Problem, dass wir von folgender Fehlermeldung beim Laden der Magento Seite begrüßt wurden:

 

Magento\Framework\Serialize\Serializer\Serialize>Magento\Framework\Serialize\Serializer\{closure}(8, 'unserialize(): ...', 'C:\\xampp\\...', 42, Array)

Bricht der File-Upload in Magento 2 (hier: Magento 2.2.5) ab bei dem Versuch, eine Videodatei in einem statischen Block hochzuladen, kann es an einer zu großen post_max_size liegen. In diesem konkreten Fall war der PHP-Parameter in der php.ini auf 2048M eingestellt, also 2 Gigabyte. Sieht man sich nun bei dem Versuch, eine Datei hochzuladen, den in der Konsole ausgegebenen Fehler an, erhält man die Nachricht, dass der Compiler bei der Abarbeitung des Programmcodes auf einen "Unexpected token" getroffen ist und durch diesem dann einfach nicht mehr weiter machen kann.

 

Wir möchten den Kunden eines mit Magento 2 implementierten Onlineshops den Login mit einem Usernamen ermöglichen (zusätzlich zu dem regulären Login mit E-Mail-Adresse). Hierzu gab es schon in Magento 1 eine schöne Extension "Diglin Username". Diese ist für Magento 2 aktuell im Beta-Stadium, aber recht gut zu verwenden. Hier zeigen wir Euch, wie:

 

Wir wollen dem Kunden nun die Möglichkeit geben, während der Bestellung Kommentare eingeben zu können, die dieser Bestellung dann backendseitig zugeordnet werden sollen und so die Bearbeitung durch den Shopbetreiber ermöglichen. Zudem soll der Kunde seinen eingegebenen Kommentar sowohl in der Bestell-E-Mail als auch in der Bestellübersicht seines Kundenkontos finden können. Die erste Aufgabe ist mir einer geeigneten Extension schnell gelöst, wir haben hier mit der Erweiterung  https://marketplace.magento.com/chandankumarsingh-order-comment-checkout.html gearbeitet. Ist soweit ganz gut anwendbar, mit ein paar Schwächen, die aber mit ein paar Handgriffen gut auszugleichen sind. Nun erstellt diese Extension jedoch nur Backendkommentare. Bestellbestätigung und Bestellübersicht enthalten den eingegebenen Kommentar nicht.

 

Möchte man im Rahmen des Inkrafttretens der neuen EU Datenschutzgrundverordnung (DSGVO) in Magento das Kontaktformular abändern, so dass der Name kein Pflichtfeld mehr ist und so zu einem freiwillig auszufüllenden Feld verändert wird, sind einige Dinge zu beachten. Zuerst entfernt man die "required"-Klasse und das "Sternchen" in der Datei \app\design\frontend\PAKET\TEMPLATE\template\contacts\form.phtml, so dass dies das Ergebnis ist:

 

Wie fügt man in Magento 1.9 eine Checkbox im Kontaktformular und im Registrierungsformular ein, z.B. um die Volljährigkeit zu bestätigen oder das Akzeptieren der Datenschutzbestimmungen einzufordern? Eine praktikable Lösung sind hierbei die Bestellbedingungen (Admin->Verkäufe->Bestellbedingungen). Wir möchten nun also im Kontaktformular die Bestätigung der Datenschutzbestimmungen einbauen und in das Registrierungsformular die Bestätigung der Datenschutzbestimmungen und die Bestätigung der Volljährigkeit, beides in deutscher und englischer Sprache (2 Storeviews). Hierzu erstellen wir nun 4 Bestellbedingungen im Magento-Backend (Alter und Datenschutz, jeweils deutsch und englisch).

 

Wie erstellt man Sitemaps mit Bildern im Magento Onlineshop (Multishop mit 2 Websites und 3 Sprachen / Store Views je Website) und schließt bestimmte Seitentypen für einzelne Store Views aus? Hier ein Lösungsweg: Zuerst erstellen wir Unterordner für jede Sitemap, z.B. /sitemaps/sitemap-websitename1-storeviewname1/,  /sitemaps/sitemap-websitename1-storeviewname2/, usw.. Danach legen wir im Magento-Backend pro Storeview eine Sitemap an und führen die Erstellung durch, so dass wir dann als Ergebnis eine Sitemap pro Sitemap-Ordner zur Verfügung haben (/sitemaps/sitemap-websitename1-storeviewname1/sitemap.xml,  /sitemaps/sitemap-websitename1-storeviewname2/sitemap.xml, etc.).

 

Nach Installation des Sicherheitsupdates SUPEE-10570 für Magento CE 1.9.2.4 kann es passieren, dass der Warenkorb nur eine weiße Seite zeigt, ohne dass Serverlogs und Magento-Logs Fehler aufzeigen. Und dies nur bei aktivierter Kompilierung. Den Fehler hier zu finden ist ohne Logs relativ schwierig - wir konnten jedoch nach langer Suche  den Schuldigen ausmachen, hier war es eine Funktion in /app/code/core/Mage/Customer/Helper/Data.php, namentlich getPasswordTimestamp().

 

Erscheint in dem System-Logfile var/log/ system.log diese Fehlermeldung: DEBUG (7): HEADERS ALREADY SENT: <pre>[0] PFAD_ZUR_MAGENTO_ISTALLATION\app\ code\core\Mage\Core\Controller\Response\Http.php:53, gilt es zuerst, die Stelle zu finden an der der Fehler entsteht, da die Http.php nur nachgeschaltet ist. Hierzu fügen wir z.B. in der Datei

 

Nach dem Kauf der UPS-Erweiterung "UPS Shipment" und dem Download der Datei bms-magento-upsshipment-1.3.3.zip wird diese entpackt und in den Hauptpfad der Magentoinstallation kopiert. Die SOAP-(PHP-)Extension muss hierzu aktiviert sein. Nach Inbetriebnahme der Erweiterung kann dann der Fehler "Missing or invalid Shipto AttentionName" auftauchen, wenn der Versand an eine Adresse außerhalb Deutschlands erfolgen soll. UPS benötigt hier dann neben dem eigentlichen Adressaten auch den "z.Hd."-Eintrag, der aber nicht aus Magento heraus übermittelt wird.

 

Funktioniert in manchen Bereichen des Magento-Backends der Bildupload nicht mehr und erscheint in der Fehlerkonsole der Fehler "ReferenceError: Uploader is not defined", so kann dies an der fehlenden Einbindung einiger benötigter Javascript-Dateien liegen, die nach der Umstellung von Flash- auf HTML-Uploader mit Magento CE 1.9.3 bzw. den entsprechenden Patches nun zwingend benötigt werden.

 

Wie integriert man die Mengeneinheit eines Artikels (z.B. Stück, m, qm, Liter, etc.) in der Bestellbestätigung in der Spalte "Menge" (Qty)? Zuerst schauen wir uns an, welche Datei für die Ausgabe der bestellten Produkte verantwortlich ist:

 

Wie verschlüsselt man Backend und Checkout in Magento? Durch die geeingnete Einstellung im Backend in System->Konfiguration->ALLGEMEIN->Web->Sicher. Doch wie verschlüsselt man auch alle restlichen Seiten? In dem man die sicherer Base-URL auch System->Konfiguration->ALLGEMEIN->Web->Ungesichert einträgt. Jaaa, so einfach, oder! Leider nicht bei bestehenden Magento-Installationen. Was ist hier das Problem? Alle in den Suchmaschinen indizierten ungesicherten (mit http-Protokoll ausgelieferten) Unterseiten werden nun zur Startseite umgeleitet.

 

Nach Einspielung des Magento-Patches SUPEE-9767 ist es nicht mehr möglich, PDFs via WYSIWYG-Editor in das Magento-System per Upload-Funktionalität zu übertragen, auch wenn dieser Dateityp zuvor über eine geeignete config.xml in den Kreis der erlaubten Erweiterungen aufgenommen wurde. Dies liegt an der nun vorhandenen neuen validate()-Funktion, die nach einer erfolglosen Ermittlung des Dateiformats via getimagesize() eine Exception ausgibt. Somit müssen wir verhindern, dass es zu dieser Exception kommt.

In Magento sorgt die Surcharge Extension dafür, dass man einfach und komfortabel Zuschläge für verschiedene Bereiche des Online-Shops erheben kann, ohne dafür die in Magento implementierten Preisregeln aufbohren zu müssen, um negative Rabatte zu ermöglichen. So beispielsweise auch für die Zahlarten als Zahlartenaufschlag für Nachnahmezahlung, Paypal und Co.. Mit PHP7 verändert sich jedoch die Darstellung im Checkout - hier wird statt den jeweiligen individuellen Zahlartenaufschlägen schlicht und einfach "1" (+ Währung) angezeigt.

 

Bei der Verwendung von PHP 7 für Magento Shops in der CE 1.9 (hier: 1.9.2.4) kann in der Artikelbearbeitung beim Bildupload Probleme geben. Dieser bricht beispielsweise ab oder bleibt ohne weitere Fehlermeldung hängen. Grund hierfür ist die mit PHP 7 eingeführte "Uniform Variable Syntax", heißt, in einfachen Worten gesagt, wir lesen nun (bezogen auf eingebettete Variablen) von links nach rechts und nicht mehr von rechts nach links.

Taucht die Fehlermeldung "Magento: is_readable() expects parameter 1 to be a valid path, string given" in den Magento-Logs auf, kann das an einem Bug in der Varien-Bibliothek liegen, genauer gesagt, an einem Bug in der Datei /lib/Varien/Io/File.php. Hier empfiehlt es sich, die Abfrage

Mit der Magento Extension "Simple Configurable Products" von Organic Internet sollte es möglich sein, in der Artikelliste (innerhalb einer Kategorie) den niedrigsten Preis für ein konfigurierbares Produkt in Abhängigkeit von den zugeordneten einfachen Produkten anzeigen zu lassen. Es soll somit der niedrigste Preis aller zugeordneten Produkte angezeigt werden. Die SCP-Extension führt hierzu (überwiegend) geeignete Datenankabfragen durch, in den Sie mit der ORDER-Anweisung die gewünschten Zeilen anfordert.

Bei der Verwendung von der Magento-Erweiterung "Improved Navigation" von Amasty kann folgender Fehler auftreten: Bindet man die Filter auf einer CMS-Seite (z.B. als Einstiegsmöglichkeit auf der Startseite) ein, so führt die Anwahl eines Filters auf die Unterseite "/shopby" mit der jeweiligen Option als URL-Parameter. Dort erkennt der Controller jedoch keine Beteiligung der Amasty-Extension und versucht, eine CMS-Seite anzuzeigen. Nach einiger Recherche zeigt sich, dass Amasty hier (ohne Not) aus der URL "/shopby" die URL "/s" macht und diese dann nicht zugeordnet werden kann - die Anzeige der 404-Seite ist die Folge.

 

Angenommen, wir möchten neben den Verkaufskategorien im Hauptmenü einige CMS-Seiten positionieren, die wir frei in der Kategoriebearbeitung editieren und hin- und herschieben möchten. Nehmen wir als Beispiel eine Seite für die Unternehmensdarstellung, die wir also also Kategorie "Unternehmen" anlegen und die dann unter /unternehmem.html erreichbar ist. Wir möchten jedoch nicht, dass /unternehmen.html z.B. mit statischem Block (da beschränkte Bearbeitungsmöglichkeiten) angezeigt wird, sondern eine neu erzeugte CMS-Seite "Unternehmen", somit erreichbar unter /unternehmen.

 

Wie kann man Kategorien in Magento auf CMS-Seiten oder auf Kontaktseiten weiterleiten? Es ist insbesondere bei mehrsprachigen Onlineshops komfortabel, wenn man einzelne Content-Elemente in der Kategoriestruktur abbilden kann, so z.B. eine Unternehmensdarstellung oder einen Link zum Kontaktformular (systemseitig bereitsgestellt unter /contacts). Wie in mehreren Threads beschrieben, reicht es hierzu leider nicht aus einen Custom-Rewrite zu erstellen, der den System-Rewrite ersetzten soll.

 

Wenn beim Produktimport in Magento Optionen von Multiselect-Attributen fehlen:

Auch in der Community Edition in der Version 1.9.1.0 bleibt ein Bug bestehen, der den reibungslosen Import von Multiselect-Attributen verhindert. Das Problem: Nach dem Import von Produkten mit Multiselect-Attributen fehlen an machen Stellen einige Attribut-Optionen.

In Magento können sich Fehler ergeben, wenn man über die Sprachauswahl verschiedene Seiten ansteuern möchte, für die verschiedene URL Keys angegeben wurden, z.B. "about-us" für die englische "Über uns"-Seite und "ueber-uns" für das deutsche Pendant.

Klein aber fein!

Tritt in Magento der Fehler "Diese Anfrage konnte nicht verarbeitet werden"

Heißt also in etwa: Für die Produkt Entity mit der ID 9478 und das Attribut mit der ID 180 wurde für den Store mit der ID 1 ein Wert versucht einzutragen, den es bereits gibt.

Die Problemstellung: Wir haben ein Attribut mit der Eigenschaft "Mehrfach Auswahl" erstellt und möchten dieses nun in Magento in der Kategorieansicht für die Sortierfunktion verwenden, die Produktliste also gemäß den Ausprägungen dieses Attributs sortieren. In den Standardeigenschaften eines Mehrfach Auswahl Attributs ist eben diese Funktionalität ("Als Sortiermöglichkeit in Kategorieansicht verwendbar") nicht aktivierbar.

Die Problemstellung: Wir verwenden den Onestepcheckout von Magestore und haben die Gift Wrap Funktionalität (Geschenkverpackung) zur Transportversicherung umgewidmet, die man damit optional zu jeder Bestellung hinzuwählen kann.

Der Rechnungskauf über den Dienstleister BillSAFE funktioniert aktuell nur mit dem Magento-Standard-Checkout ohne Probleme.

Problemstellung: In der Magento-Suche finden sich bei der Suche nach "Ölen" Produkte aus Polen, bei der Suche nach "grün" jegliche Arten von Grundierungen und bei "Laser" alle Gläser des Shops.

Problemstellung: Nach der Aktivierung der Option "Flat Catalog Product verwenden" im Magento-Admin-Bereich (System->Konfiguration->KATALOG->Katalog) funktioniert die Ausgabe der Artikelnummer per getSku() innerhalb einer Produktinstanz (z.B. $_product->getSku()) nicht mehr, Rückgabewert ist NULL.

Mit den Anweisungen IF und DEPEND in Magentos E-Mail-Templates (System->Transaktions-E-Mails) kann man die Ausgabe einzelner Inhalte bedingungsabhängig komfortabel steuern.

Der standardmäßig installierte Magento-Editor TinyMCE folgt leider nicht immer den Wünschen des Benutzers.

Sind Bilder im Backend-Bereich von Magento nach einem erfolgreichen Upload nicht sichtbar und werden diese ohne Probleme im Frontend des Onlineshop-Bereiches angezeigt kann dies an der PHP-Konfiguration des Shop-Servers liegen.

Mit den folgenden Schritten kann man einfach und relativ schnell eine schöne Lightbox für die Artikel-Detail-Ansicht in Magento-Onlineshops einbauen. Wir haben uns hier für die auf jQuery basierende Fancybox entschieden.

Mit ein wenig Programmieraufwand kann man Magento dazu bringen, die Reihenfolge der Beträge im Bestell-Prozess, im Warenkorb und in der Aufstellung innerhalb der versandten E-Mails zu verändern - hier am Beispiel der Steuern, die wir hinter den Gesamtbetrag verschieben möchten (die Veränderung der Reihenfolge im Adminbereich unter System->Konfiguration->VERKÄUFE->Verkäufe->"Reihenfolge der Gesamtbeträge des Bezahlvorgangs" führt hier zu keinem Erfolg):

In älteren Versionen des Magento-Systems kommt es zum Teil immer noch zu Problemen bei der Berechnung der Gesamt-Summen und Steuern und einer rundungsbedingten Abweichung von 1 Cent.

In den aktuellen Versionen von Magento (Magento 1.7.0.2 und älter) gibt es immer noch keine Möglichkeit, eigene kostenwirksame und User-gesteuerte (an- und abwählbare) Komponenten in den Bestell-Prozess einzubinden (Geschenkverpackung, Transportversicherung, etc.).

Spätestens, wenn man innerhalb eines Magento-Onlineshops die Versandart "Abholung" und die Zahlungsart "Nachnahme" anbietet, sollte man sich mit der Abhängigkeit von Versand- und Zahlungsart beschäftigen.


Wendet man über eine Warenkorb-Preisregel einen Zuschlag oder Rabatt auf den Warenkorb an (Einstellungen im Magento-Adminbereich: Rabatt auf Preise ohne MwSt.

Wer einen Magento-Onlineshop erstellen lässt, bekommt die Möglichkeit, einen Mindermengenzuschlag einzustellen, leider nicht mitgeliefert. Das heißt: Einen Aufschlag auf den Warenkorbpreis, wenn dieser einen bestimmten Wert unterschreitet.

Die Magento-Extension "PDF Catalog" aus dem Hause Magazento bietet eine gute Möglichkeit, Artikel und ganze Kategorien per PDF ausgeben zu lassen.

Variante 1: href="/Magento-Agentur/Magento-Programmierung-Muenchen.php">Magento-Block per XML
Der Block ist in der Datei \app \design \frontend \Dein_Templatepack \Dein_Template \layout \page.xml zu definieren, in unserem Falle heißt dieser "firstheader" und erhält (optionale) Designvorgaben in der Datei

Tritt bei der Magento-Programmierung nach der Einbindung eines Bilduploads in einer Widget-Instanz kein Fehler auf, die Buttons zur Auswahl und dem Upload einer Bilddatei jedoch nicht angezeigt, kann es an der fehlenden Integration von JavaScript-Dateien liegen (insbesondere, wenn die Buttons im Rahmen der normalen CMS-Seitenbearbeitung erscheinen, in der Widget-Instanz jedoch nicht).

Findet man einen Eintrag 'Could not determine temp directory, please specify a cache_dir manually' in den Error-Log-Files des Magento-Systems, da die Navigation im Admin-Bereich kurz nach einer frischen Magento-Installation nicht funktionierte, kann man diesen Fehler schnell beheben

Wird man nach dem Versuch, im Magento-Admin-Bereich auf die 'StoreMaintenance'-Extension auf die 404-Fehlerseite weitergeleitet