Magento 1

FAQ

Lösungen für häufig gestellte Fragen und Probleme bei der Verwendung von Clerk mit Magento 1

Haben Sie Probleme mit Ihrer Magento 1-Integration? Diese FAQ behandelt die häufigsten Probleme und deren Lösungen, von Währungsumrechnung bis zu Synchronisierungsfehlern.

Währungsumrechnung #

Ab Version v3.0.3 der Magento 1-Erweiterung ist die Währungsumrechnung standardmäßig enthalten, sofern Sie die Standard-Umrechnungsfunktion von Magento 1 verwenden.

Sie wird in my.clerk.io -> Designs mit dem Formatter price_in_currency hinzugefügt.

Der Helper kann folgendermaßen Ihrem Design hinzugefügt werden:

{%raw%}
<div class="clerk-product-price">
{{ product.price_final_excl_tax | price_in_currency }}
</div>{%endraw%}

Der Helper wandelt den Preis automatisch in die Währung der aktuellen Session um und fügt das Währungssymbol hinzu.

Verwendung von Formattern #

Clerk.js ermöglicht es Ihnen, benutzerdefinierte JavaScript-Funktionen zu schreiben, die Ihren Designs neue Funktionen hinzufügen.

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

  • Über my.clerk.io > Developers > Formatters, wobei jeder Formatter als separater Eintrag erstellt werden kann.

  • Als Konfiguration für Clerk.js im Tracking-Script, das auf allen Seiten eingefügt wird; es können mehrere Formatter gleichzeitig hinzugefügt werden.

Für Magento 1 enthält diese Datei das Tracking-Script:

app->design->frontend->base->default->template->clerk->tracking.phtml

Beispiel-Formatter #

Ein Beispiel kann unten gesehen werden. Beachten Sie, dass dies für Clerk V2 (neueste Version) ist:

Clerk('config', {
  key: 'O7UITkJIXqXibeQF9ONobiGGKYYKtbvh',
  formatters: {
    form_key: function () {
      return '<?php echo $this->getFormKey(); ?>';
    },
    price_in_currency: function(price) {
      price = Math.round(price * 100) / 100;
      var price_converted = Math.round((price * <?php echo (float)$rates[$currentCurrencyCode]; ?>) * 100) / 100;
      var retVal = <?php echo json_encode($currentCurrencySymbol); ?> + ' ' + price_converted.toFixed(2).toString();
      return retVal;
    },
    log_price: function(price) {
      console.log(price);
    }
  }
});

Mehrere Formatter #

Sie können beliebig viele Formatter schreiben, durch Kommas getrennt:

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;
  }
}

Verwendung in Designs #

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

{%raw%}{{ x formatter | attribute }} {{ x | formatter | attribute1 | attribute2 }}{%endraw%}

Dies ermöglicht es Ihnen, jede gewünschte Funktionalität in Ihren Designs zu erstellen.

HTTP-Authentifizierung #

HTTP-Authentifizierung wird häufig auf Staging-Seiten verwendet, um unerwünschte Besucher zu vermeiden.

Dies blockiert den Clerk Importer und zeigt einen 401 Unauthorized-Fehler im Synchronisierungsprotokoll an.

Sie können dies beheben, indem Sie die Authentifizierungsinformationen in die Import-URL einfügen.

In my.clerk.io > Data > Configuration aktualisieren Sie Ihre Import-URL wie folgt:

http://USER:PASS@magento.clerk.io/clerk/api/store/1

Häufige Synchronisierungsfehler #

Hinweis: Wir empfehlen, immer die neueste Version der Erweiterung zu verwenden, um alle aktuellen Funktionen von Clerk zu erhalten.

Beim Importieren von Daten mit der Magento 1-Erweiterung ist der Server Ihres Webshops dafür verantwortlich, Produkt-, Kategorie- und Verkaufsdaten an Clerk zu senden.

In einigen Fällen kann jedoch die Konfiguration des Servers den Importer daran hindern, Zugriff zu erhalten, was zu einem Fehler in Data Sync führt.

Nachfolgend finden Sie eine Liste der häufigsten Fehler und wie man sie behebt.

401 Unauthorized #

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

Dies wird gelöst, indem Sie den Benutzernamen und das Passwort als Teil der Import-URL einfügen:

http://username:password@magento.clerk.io/clerk/api/store/1

403 Forbidden #

Dieser Fehler tritt auf, wenn Ihr Server den Importer am Zugriff hindert.

In den meisten Fällen müssen Sie einfach die IP-Adresse des Importers auf die Whitelist setzen, damit er Zugriff erhält.

Die aktuelle IP-Adresse finden Sie hier.

Überprüfen Sie auch Ihren Public Key, Private Key und die Import-URL, damit sie für den Shop korrekt sind, den Sie innerhalb von my.clerk.io betreiben.

Was ist, wenn ich bereits die Whitelist eingestellt habe, aber derselbe Fehler weiterhin auftritt?

Es gibt einige Fälle, in denen Sie die IP-Adresse des Importers auf die Whitelist gesetzt haben und trotzdem der Fehler auftritt.

In diesen Fällen empfehlen wir, Folgendes zu überprüfen:

  • Der Authentifizierungsteil des Bodys könnte vom Server des Shops aus der Anfrage entfernt worden sein.

  • Rate Limit des Servers in Bezug auf Cloudflare.

404 Not Found #

Dieser Fehler tritt auf, wenn der Importer keinen Zugriff auf den Link hat, der Daten vom Webshop sendet.

In den meisten Fällen passiert dies, weil die Erweiterung entweder:

  • Überhaupt nicht installiert ist

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

Stellen Sie zunächst sicher, dass Sie die Erweiterung korrekt installiert haben.

Stellen Sie außerdem sicher, dass Sie den Cache Ihres Webshops leeren, bevor Sie einen neuen Import versuchen.

429 Too Many Requests #

Dieser Fehler tritt auf, wenn Ihr Server dem Importer den Zugriff aufgrund zu vieler eingehender Anfragen verweigert.

Sie können dies beheben, indem Sie das Anfrage-Limit Ihres Servers erhöhen oder die Page Size in my.clerk.io > Data > Configuration auf einen höheren Wert setzen. Eine größere Seitengröße bewirkt, dass der Importer weniger, aber größere Anfragen stellt.

Wenn Sie den Hosting-Anbieter Byte.nl verwenden, gibt der Importer diesen Fehler in der Regel aufgrund ihres Rate Limiters zurück. Kontaktieren Sie in diesem Fall Byte.nl und bitten Sie sie, den User-Agent des Importers “clerk” auf die Whitelist zu setzen.

500 Internal Server Error #

Dieser Fehler bedeutet, dass Ihr Server einen internen Fehler hatte und nicht angeben kann, welcher Fehler aufgetreten ist.

In diesen Fällen prüfen Sie Ihr Server-Log, um herauszufinden, welcher Prozess abgestürzt ist und warum.

In den meisten Fällen liegt es einfach an einem Produkt mit ungültigem Attribut oder einer Funktion, die im Webshop falsch aufgerufen wird.

503 Service Unavailable #

Dieser Fehler ist in der Regel temporär und tritt auf, wenn der Server zu beschäftigt ist, um die Anfrage zu bearbeiten.

Versuchen Sie es später noch einmal.

Wenn das Problem weiterhin auftritt, kann es bedeuten, dass der Server mit Prozessen ausgelastet ist und sich nahe an der maximalen Kapazität befindet.

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

Magento API-Fehler #

Auch dieser Fehler bedeutet, dass Ihr Server einen internen Fehler hatte und nicht angeben kann, welcher Fehler oder Fehlercode aufgetreten ist.

In diesen Fällen prüfen Sie Ihr Server-Log, um herauszufinden, welcher Prozess abgestürzt ist und warum.

In den meisten Fällen liegt es einfach an einem Produkt mit ungültigem Attribut oder daran, dass Ihr Speicherlimit überschritten wurde.

Powerstep wird nicht angezeigt #

Wenn der Add-To-Basket-Schritt nicht aktiviert ist, liegt das typischerweise an zwei Gründen:

  • Sie haben ein anderes Add-To-Basket-Popup oder eine Funktion aktiviert, die die Funktion von Clerk blockiert.

  • Die falschen Element-IDs wurden in die Erweiterung eingetragen.

Anderes Popup aktiviert #

Prüfen Sie zunächst Ihre bestehende Magento-Installation, um zu sehen, ob bereits ein Popup oder Dropdown angezeigt wird, wenn Sie ein Produkt in den Warenkorb legen.

Diese können normalerweise den Add-To-Basket-Schritt von Clerk blockieren.

Ist dies der Fall, deaktivieren Sie das Popup und versuchen es erneut.

Falsche Element-IDs #

Wenn Sie kein anderes Add-To-Basket-Popup haben und Ihr Powerstep aktiviert ist, aber nicht angezeigt wird, liegt es wahrscheinlich daran, dass die falschen Template-IDs in den Einstellungen der Clerk-Erweiterung eingetragen wurden.

Dies führt dazu, dass der Powerstep nicht funktioniert.

Um dies zu beheben, loggen Sie sich zuerst in Ihren Magento-Adminbereich ein und gehen zu System > Configuration > Clerk > Settings.

Wählen Sie dann den richtigen Configuration Scope, der Ihrem Shop entspricht.

Unter Powerstep-Einstellungen überprüfen Sie das Feld Templates.

Dieses Feld sollte die korrekten IDs, durch Kommas getrennt, enthalten, wenn Sie mehr als eine verwenden.

Um sicherzustellen, dass Ihre IDs korrekt sind, loggen Sie sich in my.clerk.io ein.

Wählen Sie den richtigen Shop aus und gehen Sie zu Recommendations/Search > Elements.

Klicken Sie auf Edit Element für einen Slider, den Sie im Powerstep anzeigen möchten.

Prüfen Sie im letzten Tab “Insert into website” den Embed-Code.

Kopieren Sie den Wert von data-template aus dem Embed-Code in das Feld Templates in der Magento-Erweiterung.

Klicken Sie auf Save Config in der Magento-Erweiterung und der Powerstep sollte anschließend funktionieren.

Cache-Probleme #

Wenn Sie das Powerstep-Popup aktiviert haben und es trotzdem nicht angezeigt wird, wenn Sie ein Produkt in den Warenkorb legen, liegt das Problem meist am Cache.

  1. Gehen Sie zu System > Cache und leeren Sie alle internen und Drittanbieter-Caches.

  2. Wenn das Problem noch nicht behoben ist, verwenden Sie wahrscheinlich Full Page Cache, der sich nur auf Seiten auswirkt, die ein Besucher bereits in seiner Sitzung gesehen hat. Das Deaktivieren hat nur minimale Auswirkungen auf die Ladegeschwindigkeit.

Sobald Sie den Full Page Cache deaktiviert haben, sollte das Clerk-Popup erscheinen.

Wenn nicht, kontaktieren Sie bitte den Clerk Support über das Live-Chat-Icon in der rechten unteren Ecke. Wir helfen Ihnen gerne, eine Lösung für Ihre spezifische Einrichtung zu finden.

Frontpage-Slider werden zwischengespeichert #

Dies geschieht normalerweise, wenn Embed-Codes über die CMS-Seiten von Magento eingebunden werden, da die Startseite gecached wird.

Fügen Sie die Embed-Codes stattdessen direkt über FTP in die Dateien der Startseite ein.

Dadurch verhindert Magento das Caching der gerenderten Ergebnisse.

Bilder werden nicht angezeigt #

Wenn der Bild-Cache von Magento geleert wird – egal ob manuell oder automatisch –, ändern sich alle Bildpfade.

Das bedeutet, dass die an Clerk gesendeten Bildpfade nicht mehr funktionieren.

Das kann ganz einfach behoben werden:

  1. Loggen Sie sich bei my.clerk.io ein.

  2. Klicken Sie auf den Shop, bei dem Bilder fehlen.

  3. Gehen Sie zu Daten.

  4. Klicken Sie oben rechts auf Start New Data Sync.

Dadurch wird eine neue vollständige Synchronisation Ihrer Produkte gestartet, sodass Clerk die korrekten Bildpfade erhält.

In der Clerk Magento-Erweiterung v2.1.0 wird dieses Problem automatisch gelöst, indem bei Löschen des Bild-Caches automatisch eine Synchronisierung gestartet wird.

Wenn Sie eine ältere Version der Erweiterung nutzen, empfehlen wir dringend das Upgrade auf die neueste Version.

Upgrade zu Clerk.js 2 #

Clerk.js 2 ist eine schnellere und flexiblere Version unserer JavaScript-Bibliothek.

Sie erleichtert die Installation von Clerk auf jedem Webshop.

Da sich die beiden Versionen jedoch geringfügig unterscheiden, müssen Sie diese Schritte befolgen, um ein Upgrade erfolgreich durchzuführen.

Die zwei wichtigsten Unterschiede von Clerk.js 2 sind, dass die Designs in my.clerk.io die Liquid Templating-Sprache verwenden; sie können jedoch auch einfach mit dem Design Editor erstellt werden.

Designs erstellen #

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

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

Option Design Editor #

  1. Gehen Sie zu my.clerk.io > Recommendations/Search > Designs > New Design.

  2. Wählen Sie Ihren Design-Typ.

  3. Im Design Editor klicken Sie auf ein bestehendes Element wie Name, Bild, Button usw., um es zu bearbeiten oder neue Elemente hinzuzufügen und damit mehr Informationen zu den Produkten anzuzeigen.

  4. Klicken Sie auf Publish, wenn Sie fertig sind, und gehen dann zu Schritt 2 der Anleitung.

  5. Gehen Sie zu Recommendations/Search > Elements und ändern Sie Ihr Clerk-Element, sodass es Ihr neues Design verwendet.

  6. Klicken Sie auf Update Element. Dies führt vorübergehend dazu, dass sie nicht mehr in Ihrem Webshop angezeigt werden, bis Sie mit Schritt 2 fertig sind. Wählen Sie das neue Design für alle Elemente, die aktualisiert werden sollen.

Jetzt sind Sie bereit, zu Clerk.js 2 zu wechseln.

Upgrade der Erweiterung #

Wenn Sie bereits die neueste Version der Clerk Magento-Erweiterung haben, können Sie diesen Schritt überspringen.

Sie können die neueste Erweiterung unter folgendem Link herunterladen:

https://github.com/clerkio/clerk-magento/releases/latest

Änderungen speichern #

Bevor Sie das Upgrade versuchen, stellen Sie sicher, dass Sie entweder:

  • Die geänderten Dateien lokal auf Ihrem FTP gespeichert haben oder
  • Ein Backup aller geänderten Dateien gemacht haben, das Sie auf die neue Erweiterung übertragen können.

In der Regel werden am häufigsten die Dateien Product.php und Productbase.php angepasst, die Produktattribute steuern.

Diese Dateien befinden sich hier:

app->code->community->Clerk->Clerk->Model->Catalog->Product.php

app->code->community->Clerk->Clerk->Model->Catalog->Productbase.php

Erweiterung deaktivieren #

Bevor Sie mit dem Upgrade fortfahren, ist es sehr wichtig, dass Sie Folgendes tun:

  1. Deaktivieren Sie die alte Erweiterung auf der Seite System > Configuration > Clerk > Settings in Magento. Setzen Sie einfach Enable auf No und klicken auf Save Config.

  2. Anschließend deinstallieren Sie die Erweiterung entweder über Magento Connect oder durch Löschen der Dateien vom FTP, falls Sie sie direkt dort installiert haben.

Andernfalls kann es sein, dass Ihre Konfigurationsseite nicht mehr funktioniert und keine der Erweiterungen später arbeitet.

Erweiterung installieren #

Installieren Sie anschließend die neueste Erweiterung erneut und kopieren eventuell gesicherte Dateien zurück auf Ihren FTP-Server.

Ihre Konfiguration sollte selbst nach der Neuinstallation der Erweiterung erhalten bleiben.

Prüfen Sie unter System > Configuration > Clerk, ob alles noch vorhanden ist.

Jetzt haben Sie die neueste Clerk-Version für Magento installiert und Clerk.js 2 läuft auf Ihrem Webshop!

Die vollständige Dokumentation zu Clerk.js 2 finden Sie hier:

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

Umgang mit require.js #

Dies gilt nur bei Verwendung der Magento 1 Clerk-Erweiterung v.3.7.2 oder niedriger.

In manchen Setups verhindert Require.js, dass Clerk.js geladen wird, wodurch keine Slider oder Suchergebnisse angezeigt werden.

In diesem Fall erscheint folgender Fehler in Ihrer Konsole:

Uncaught ReferenceError: Clerk is not defined

Es gibt zwei Möglichkeiten, Require.js zu behandeln. Beide Methoden erfordern eine Änderung im Tracking-Script in dieser Datei:

app->design->frontend->base->default->template->clerk->tracking.phtml

In Require.js einbinden #

Die beste Methode ist, Require.js dazu zu bringen, Clerk zu erkennen.

Fügen Sie require(['clerk'], function() {}); am Ende des Tracking Scripts ein.

Require.js ignorieren #

Wenn die oben genannte Lösung nicht funktioniert, kann Require.js ignoriert werden.

Fügen Sie window.__clerk_ignore_requirejs = true; am Anfang des Tracking Scripts ein.

Nachdem Sie eine dieser Methoden angewendet haben, ist Require.js mit Clerk kompatibel.

Diese Seite wurde von einer hilfreichen KI übersetzt, daher kann es zu Sprachfehlern kommen. Vielen Dank für Ihr Verständnis.