Magento 2

FAQ

Ändern der Bildgröße #

Standardmäßig verwendet die Erweiterung die ursprünglichen Bildgrößen, die in Magento 2 eingestellt sind, aber diese können bei Bedarf geändert werden.

Loggen Sie sich zunächst in Ihr Magento 2 Backend ein und gehen Sie zu:

Stores -> Konfiguration ->Kaufmann ->Konfiguration

Unter Synchronisation-> Bildtyp können Sie genau auswählen, in welcher Auflösung die Bilder gesendet werden sollen:

Klicken Sie anschließend auf Konfiguration speichern.

Jetzt müssen Sie nur noch einen neuen Sync in my.clerk.io ausführen und Ihre neuen Bildgrößen werden importiert.

Formatierer in Entwürfen verwenden #

Mit Clerk.js können Sie eigene Javascript-Funktionen schreiben, die den Designs neue Funktionen hinzufügen.

Formatierer können auf zwei Arten hinzugefügt werden:

  • Über my.clerk.io > Einstellungen > Formatters, wobei jeder Formatter als separater Eintrag erstellt werden kann.
  • Als Konfiguration für Clerk.js, im Tracking-Skript, das auf allen Seiten eingefügt wird, wo mehrere Formatierer auf einmal hinzugefügt werden können.

Für Magento 2 enthält diese Datei das Tracking-Skript:

Anbieter->Ansicht->Frontend->Vorlagen->Tracking.phtml

Ein Beispiel ist unten zu sehen. Bitte beachten Sie, dass dies für Clerk V2 (neueste Version) gilt:

    Clerk('config', {
      key: 'O7UITkJIXqXibeQF9ONobiGGKYYKtbvh',
      formatters: {
             log_price: function(price) {
             console.log(price);
          }
      });

Sie können eine beliebige Anzahl von Formatierern angeben, getrennt durch ein Komma:

formatters: {
   log_price: function(price) {
      console.log(price);
   },
   calculate_discount: function(price,special_price) {
      return price-special_price;
   },
   substring: function(text) {
      var short_string = text.substring(0,20);
      return short_string;
   }
}

Nachdem Sie Ihre Formatierer erstellt haben, können Sie sie mit dieser Syntax in Ihren Designs verwenden:

{% raw %} {{{ price | log_price }} {{ price | calculate_discount |  special_price }}) {% endraw %}

Auf diese Weise können Sie jede beliebige Funktionalität in Ihren Designs erstellen, die Sie benötigen.

Synchronisierung mit HTTP-Authentifizierung #

Häufig wird die HTTP-Authentifizierung auf Staging-Sites verwendet, um ungebetene Besucher zu vermeiden.

Dies blockiert auch den Clerk-Importer und zeigt im Synchronisierungsprotokoll den Fehler 401 Nicht autorisiert an.

Sie können den Importer leicht überprüfen, indem Sie die Authentifizierungsinformationen in die Import-URL einfügen, wie unten, in Data Sync unter my.clerk.io:

http://USER:PASS@magento2.clerk.io/

Häufige Synchronisationsprobleme #

Hinweis: Wir empfehlen Ihnen, das Plugin immer auf die neueste Version zu aktualisieren, um alle aktuellen Funktionen von Clerk zu nutzen.

Beim Importieren von Daten mit der Magento 2 Erweiterung von Clerk.io ist der Webshop-Server für das Senden der Produkt-, Kategorie- und Verkaufsdaten an Clerk.io. verantwortlich.

In einigen Fällen kann es jedoch vorkommen, dass die Konfiguration des Servers den Zugriff auf den Import verhindert, was zu einem Fehler in Data Sync. führt.

Nachfolgend finden Sie eine Liste der häufigsten Fehler und wie Sie diese beheben können.

401 Server-Fehler: Nicht autorisiert #

Dieser Fehler tritt auf, wenn Ihr Webshop/Ihre Entwicklungsumgebung eine HTTP-Authentifizierung für den Zugriff erfordert.

Dies wird einfach durch Einfügen von Benutzername und Passwort als Teil der Import-URL gelöst:

http://username:password@magento2.clerk.io

403 Server-Fehler: Forbidden #

Dieser Fehler tritt häufig aus einem der folgenden Gründe auf:

  • Ihr Server blockiert den Zugriff des Importeurs auf den Server. In den meisten Fällen müssen Sie einfach die IP-Adresse des Importeurs auf eine Whitelist setzen, um ihm Zugang zu gewähren. Die aktuelle IP-Adresse finden Sie hier.

  • Möglicherweise haben Sie einen falschen öffentlichen Schlüssel, privaten Schlüssel und/oder import url innerhalb des Shops in my.clerk.io

  • Sie verwenden Storeviews mit versteckten URLs, wie z.B. mywebshop.com?__store=b2b. Manchmal können diese URLs auch 3 Unterstriche enthalten, wie hier: mywebshop.com?___store=b2b

In letzterem Fall fügen Sie einfach den Parameter __store in die URL in Data:

Was ist, wenn ich bereits auf der Whitelist stehe, aber der gleiche Fehler immer noch auftritt?

Es gibt einige Fälle, in denen Sie die IP-Adresse des Importeurs bereits auf die Whitelist gesetzt haben, der Fehler aber immer noch auftritt. Wir empfehlen Ihnen, diese Fälle zu prüfen.

  • Der Authentifizierungsteil des Body kann aus der Anfrage vom Server des Shops entfernt werden.

  • Ratenbegrenzung für den Server in Bezug auf Cloudflares.

404 Server-Fehler: Nicht gefunden #

Dieser Fehler tritt auf, wenn der Importeur nicht auf den Link zugreifen konnte, der uns Daten aus dem Webshop sendet. In den meisten Fällen geschieht dies, weil die Erweiterung entweder:

  • gar nicht installiert ist

  • Ein Cache führt dazu, dass der Link nicht initialisiert werden kann

Vergewissern Sie sich zunächst, dass Sie die Erweiterung korrekt installiert haben.

Zweitens sollten Sie den Cache Ihres Webshops leeren, bevor Sie einen neuen Import versuchen.

429 Serverfehler: Zu viele Requests #

Dieser Fehler tritt auf, wenn Ihr Server dem Importeur den Zugriff verweigert, weil zu viele Anfragen eingehen.

Sie können dies beheben, indem Sie das Request-Limit für Ihren Server höher setzen oder indem Sie die Seitengröße im Clerk.io-Importer auf einen höheren Wert setzen, so dass der Importer weniger und größere Anfragen stellt:

Wenn Sie den Host-Provider hypernode.com/nl verwenden, gibt der Importer diesen Fehler in der Regel aufgrund seiner Ratenbegrenzer zurück. Wenden Sie sich in diesem Fall einfach an hypernode.com/nl und bitten Sie darum, den User-Agent des Importeurs " **clerk" auf die Whitelist zu setzen.

500 Interner Serverfehler #

Dieser Fehler bedeutet, dass Ihr Server auf einen internen Fehler gestoßen ist und Sie nicht in der Lage waren, den Fehler zu spezifizieren.

In diesen Fällen können Sie Ihr Server Log überprüfen, um festzustellen, welcher Prozess abgestürzt ist und warum. In den meisten Fällen handelt es sich um ein Produkt mit einem ungültigen Attribut oder um eine Funktion, die im Webshop falsch aufgerufen wird.

503 Server Fehler: Dienst nicht verfügbar #

Dieser Fehler ist in der Regel vorübergehend und wird dadurch verursacht, dass der Server zu beschäftigt ist, um die Anfrage zu bearbeiten. Versuchen Sie es etwas später erneut.

Wenn das Problem weiterhin auftritt, könnte dies bedeuten, dass der Server mit Prozessen überlastet ist und sich nahe der maximalen Kapazität befindet.

Überprüfen Sie die Serverauslastung, um festzustellen, ob dies der Fall ist.

Ungültige Antwort erhalten #

Dieser Fehler tritt in der Regel auf, wenn Ihr Webshop ein Redirect-System verwendet, um Kunden an verschiedene Domains weiterzuleiten.

Wenn Sie zum Beispiel auf " https://mywebshop.com" gehen, wird möglicherweise auf " https://mywebshop.com/it"" umgeleitet.

Wenn dies der Fall ist, müssen Sie beim Importieren in my.clerk.io: einfach die vollständige URL verwenden.

Aufrüstung auf Clerk.js 2 #

Clerk.js 2 ist eine schnellere und viel flexiblere Version unserer JavaScript-Bibliothek, die die Installation von Clerk.io in jedem Webshop zu einem Kinderspiel macht.

Da die beiden Versionen jedoch leicht unterschiedlich funktionieren, müssen Sie diese Schritte befolgen, um ein erfolgreiches Upgrade durchzuführen.

Die beiden Hauptunterschiede in Clerk.js 2 sind, dass die Designs in my.clerk.io die Liquid Template-Sprache verwenden, aber sie können auch einfach mit dem Design-Editor erstellt werden.

Schritt 1: Konvertieren von Designs #

Da Clerk.js 2 einen anderen Ansatz hat, müssen Sie neue Designs erstellen.

Sie können Ihre Clerk.js 2 Designs auf eine von zwei Arten erstellen:

1.1 Beginnen Sie, indem Sie zu my.clerk.io -> Empfehlungen / Suche -> Designs gehen und auf Neues Design: klicken.

1.2 Auf dem folgenden Bildschirm geben Sie Ihrem Design einen Namen (wir empfehlen, " V2" hinzuzufügen, damit es offensichtlich ist, dass Sie Clerk.js2 verwenden).

1.3. Wählen Sie den Entwurfstyp.

1.4. Klicken Sie im Design-Editor auf eines der vorhandenen Elemente wie den Namen, das Bild, die Schaltfläche usw., um es zu bearbeiten, oder fügen Sie dem Design neue Elemente hinzu, um weitere Informationen zu den Produkten hinzuzufügen.

1.5. Klicken Sie auf Veröffentlichen, wenn Sie fertig sind, und gehen Sie zu Schritt 2 in der Anleitung.

1.6. Zum Schluss gehen Sie zu Empfehlungen / Suche -> Inhalt und ändern Sie Ihren Clerk.io Inhalt, um Ihr neues Design zu verwenden.

1.7. Klicken Sie auf Inhalte aktualisieren. Dadurch werden sie vorübergehend nicht in Ihrem Webshop angezeigt, bis Sie mit Schritt 2 fertig sind. Wählen Sie das neue Design für alle Inhalte, die aktualisiert werden sollen.

1.9. So! Sie sind nun bereit, auf Clerk.js 2 umzusteigen.

Schritt 2: Upgrade Ihrer Erweiterung #

WARNUNG: Denken Sie daran, Sicherungskopien aller geänderten Dateien zu erstellen, da diese überschrieben werden.

Das Upgrade der Magento 2-Erweiterung erfolgt über commandline.

Führen Sie dazu die folgenden Schritte aus:

2.1. Loggen Sie sich auf Ihrem Server über commandline ein.

2.2. Navigieren Sie zu Ihrem Webroot-Ordner (normalerweise " /var/www/ihre_domain/public_html")

2.3. Aktivieren Sie den Root-Zugang, indem Sie su eingeben und dann Ihr Passwort eingeben.

2.4 Geben Sie die folgenden Befehle der Reihe nach ein:composer update clerk/magento2php bin/magento setup:upgradephp bin/magento setup:di:compile

2.5. Warten Sie, bis die Erweiterung abgeschlossen ist.

Ihr Magento 2 ist nun auf die neueste Version aktualisiert.

Jetzt haben Sie die neueste Version von Clerk.io für Magento 2 installiert, und Clerk.js 2 läuft in Ihrem Webshop!

Die vollständige Dokumentation für Clerk.js 2 finden Sie hier:

https://docs.clerk.io/docs/clerkjs-quick-start

Handhabung von require.js #

**Diese Anleitung gilt nur, wenn Sie bis zu Version 2.8.3 der Magento 2 Clerk-Erweiterung verwenden.

In manchen Setups stoppt Require.js das Laden von Clerk.js, was bedeutet, dass keine Slider oder Suchergebnisse angezeigt werden.

Wenn dies geschieht, wird der folgende Fehler in Ihrer Konsole angezeigt:

Uncaught ReferenceError: Clerk is not defined

Die Magento 2-Erweiterung verarbeitet bereits Require.js, aber in manchen Fällen ist es notwendig, dass sie Clerk.js ignoriert.

Sie können dies in der folgenden Datei tun:

vendor->clerk->magento2->templates->tracking.phtml

Fügen Sie einfach window._clerk_ignore_requirejs = true; ein.

oben in das Tracking-Skript ein:

Nach Anwendung dieses Ansatzes ist Require.js nun mit Clerk.io kompatibel.