FAQ
Probleme mit Ihrer Magento 2-Integration? Dieses FAQ behandelt die häufigsten Probleme und deren Lösungen, von Bildgrößen bis zu Synchronisationsfehlern.
Bildgrößen #
Standardmäßig verwendet die Erweiterung die Originalbildgrößen, die in Magento 2 festgelegt sind.
Diese können bei Bedarf geändert werden.
Melden Sie sich zunächst im Magento 2-Backend an und gehen Sie zu:
Stores > Configuration > Clerk > ConfigurationUnter Synchronization > Image type können Sie genau auswählen, in welcher Auflösung Bilder gesendet werden sollen:

Anschließend klicken Sie auf Save Config.
Jetzt müssen Sie einfach nur einen neuen Sync in my.clerk.io ausführen und Ihre neuen Bildgrößen werden importiert.
Verwendung von Formatters #
Clerk.js ermöglicht es Ihnen, benutzerdefinierte JavaScript-Funktionen zu schreiben, die Ihren Designs neue Funktionalitäten hinzufügen.
Formatters können auf zwei Arten hinzugefügt werden:
Über my.clerk.io > Developers > Formatters, wo jeder Formatter als eigener Eintrag erstellt werden kann.
Als Konfiguration für Clerk.js im tracking-script, das auf allen Seiten eingefügt wird, wobei mehrere Formatters gleichzeitig hinzugefügt werden können.
Für Magento 2 enthält diese Datei das tracking-script:
vendor->view->frontend->templates->tracking.phtml
Beispiel-Formatter #
Ein Beispiel ist unten zu sehen. Beachten Sie, dass dies für Clerk V2 (neueste Version) gilt:
Clerk('config', {
key: 'O7UITkJIXqXibeQF9ONobiGGKYYKtbvh',
formatters: {
log_price: function(price) {
console.log(price);
}
}
});
Mehrere Formatter #
Sie können beliebig viele Formatters schreiben, getrennt durch Kommas:
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 Formatters erstellt haben, können Sie diese in Ihren Designs mit folgendem Syntax verwenden:
{% raw %}{{ price | log_price }} {{ price | calculate_discount | special_price }}{% endraw %}
So können Sie jede Funktionalität in Ihren Designs erstellen, die Sie benötigen.
Add to Cart mit Form Key #
Magento 2 verwendet einen form_key für CSRF-Schutz. Wenn Sie Add to Cart-Schaltflächen in Clerk-Designs erstellen, müssen Sie diesen form_key einschließen, damit die Warenkorb-Funktionalität funktioniert.
Das Clerk.js-Skript für Magento 2 enthält eine eingebaute globale Variable formkey, die automatisch den form_key-Wert von der Seite enthält.
Verwendung in Ihrem Design #
Fügen Sie in Ihrem Clerk-Design den form_key als verstecktes Eingabefeld in Ihr Add to Cart-Formular mit {{ formkey }} ein:
<form action="{{ product.url }}checkout/cart/add/product/{{ product.id }}" method="post">
<input name="form_key" type="hidden" value="{{ formkey }}">
<input type="hidden" name="product" value="{{ product.id }}">
<input type="hidden" name="qty" value="1">
<button type="submit" class="clerk-add-to-cart">Add to Cart</button>
</form>
Die globale Variable {{ formkey }} ist in der Magento 2-Erweiterung vorkonfiguriert, sodass keine zusätzliche Einrichtung erforderlich ist.
HTTP-Authentifizierung #
Die HTTP-Authentifizierung wird häufig auf Staging-Seiten verwendet, um unerwünschte Besucher zu vermeiden.
Dies blockiert den Clerk-Importer und zeigt im Sync-Log einen 401 Unauthorized-Fehler an.
Sie können dies beheben, indem Sie die Authentifizierungsdaten in die Import-URL einfügen.
In my.clerk.io > Data > Configuration aktualisieren Sie Ihre Import-URL wie folgt:
http://USER:PASS@magento2.clerk.io/

Häufige Synchronisationsfehler #
Hinweis: Wir empfehlen, die Erweiterung immer auf die neueste Version zu aktualisieren, um alle aktuellen Features von Clerk zu erhalten.
Beim Importieren von Daten mit der Magento 2-Erweiterung von Clerk ist der Server Ihres Webshops dafür verantwortlich, Produkt-, Kategorie- und Verkaufsdaten an Clerk zu senden.
In einigen Fällen kann jedoch die Serverkonfiguration den Import daran hindern, auf die Daten zuzugreifen, was zu einem Fehler in Data Sync führt.
Im Folgenden finden Sie eine Liste der häufigsten Fehler und wie Sie diese beheben.
401 Unauthorized #
Dieser Fehler tritt auf, wenn Ihr Webshop oder Ihre Entwicklungsumgebung HTTP-Authentifizierung zum Zugriff benötigt.
Dies lösen Sie, indem Sie Benutzernamen und Passwort als Teil der Import-URL einfügen:
http://username:password@magento2.clerk.io
403 Forbidden #
Dieser Fehler tritt häufig aus folgenden Gründen auf:
Ihr Server blockiert den Importer beim Zugriff. In den meisten Fällen müssen Sie einfach die IP-Adresse des Importers auf die Whitelist setzen, um den Zugriff zu gewähren. Die aktuelle IP-Adresse finden Sie hier.
Sie haben möglicherweise einen falschen public key, private key und/oder eine falsche Import URL im Store in my.clerk.io hinterlegt.
Sie nutzen Storeviews mit versteckten URLs, wie mywebshop.com?__store=b2b. Manchmal enthalten diese URLs auch 3 Unterstriche, z.B.: mywebshop.com?___store=b2b.
Wenn Letzteres der Fall ist, fügen Sie den __store-Parameter in der URL in Data hinzu:

Was, wenn ich bereits auf die Whitelist gesetzt habe, aber der Fehler weiterhin auftritt?
Es gibt einige Fälle, in denen die IP-Adresse des Importers bereits auf die Whitelist gesetzt wurde und der Fehler dennoch auftritt.
In diesen Fällen empfehlen wir, Folgendes zu überprüfen:
Der Authentifizierungsteil des Bodys kann vom Server des Shops aus der Anfrage entfernt werden.
Ratenbegrenzung des Servers im Zusammenhang mit Cloudflare.
404 Not Found #
Dieser Fehler tritt auf, wenn der Importer den Link, der Daten aus dem Webshop sendet, nicht erreichen konnte.
Meistens passiert dies, weil die Erweiterung entweder:
überhaupt nicht installiert ist
ein Cache verhindert, dass der Link initialisiert wird
Stellen Sie zunächst sicher, dass Sie die Erweiterung korrekt installiert haben.
Leeren Sie anschließend den Cache Ihres Webshops, bevor Sie einen neuen Import versuchen.
429 Too Many Requests #
Dieser Fehler tritt auf, wenn Ihr Server dem Importer aufgrund zu vieler eingehender Anfragen den Zugriff verweigert.
Sie können dies beheben, indem Sie das Request-Limit für Ihren Server erhöhen oder den Page Size-Wert in my.clerk.io > Data > Configuration auf einen höheren Wert setzen, sodass der Importer weniger, aber größere Anfragen stellt:

Wenn Sie den Hosting-Provider hypernode.com/nl verwenden, tritt dieser Fehler beim Importer häufig aufgrund des dortigen Ratenbegrenzers auf. Kontaktieren Sie in diesem Fall hypernode.com/nl und bitten Sie, den User-Agent “clerk” des Importers auf die Whitelist zu setzen.
500 Internal Server Error #
Dieser Fehler bedeutet, dass Ihr Server auf einen internen Fehler gestoßen ist und nicht spezifizieren konnte, welcher Fehler aufgetreten ist.
Prüfen Sie in diesen Fällen Ihr Server-Log, um herauszufinden, welcher Prozess abgestürzt ist und warum.
In den meisten Fällen liegt es einfach an einem Produkt mit einem ungültigen Attribut oder einer Funktion, die im Webshop falsch aufgerufen wird.
503 Service Unavailable #
Dieser Fehler ist meist temporär und wird verursacht, weil der Server zu sehr ausgelastet ist, um die Anfrage zu bearbeiten.
Versuchen Sie es später noch einmal.
Wenn das Problem weiterhin auftritt, könnte es bedeuten, dass der Server mit Prozessen überlastet ist und sich an der Kapazitätsgrenze befindet.
Überprüfen Sie die Serverauslastung, um festzustellen, ob dies die Ursache ist.
Invalid response #
Dieser Fehler tritt meistens auf, wenn Ihr Webshop ein Redirect-System verwendet, um Kunden auf verschiedene Domains zu schicken.
Beispielsweise kann “ https://mywebshop.com” auf “ https://mywebshop.com/it" weiterleiten.
In diesem Fall müssen Sie beim Import in my.clerk.io einfach die vollständige URL verwenden:

MSI-Bestandsimport #
Wenn Ihr Magento 2-Store MSI (Multi-Source Inventory) verwendet, können Sie den Gesamtbestand über alle Quellen in Clerk importieren, indem Sie den unten stehenden Attributcode in die zusätzlichen Felder der Erweiterung einfügen.
Gehen Sie in Ihrem Magento-Admin zu Stores > Configuration > Clerk > Configuration.
Unter Synchronization > Additional Fields fügen Sie hinzu:
multi_source_stock.Klicken Sie auf Save Config und führen Sie dann einen neuen Sync in my.clerk.io > Data aus.
Clerk importiert multi_source_stock als Summe der Mengen über alle MSI-Quellen hinweg.
Das ist nützlich, wenn die Standard-Bestandsquelle 0 ist, Produkte aber noch in anderen Quellen vorrätig sind.
Upgrade zu Clerk.js 2 #
Clerk.js 2 ist eine schnellere und flexiblere Version unserer JavaScript-Bibliothek.
Damit wird die Installation von Clerk auf jedem Webshop einfacher.
Da die beiden Versionen jedoch etwas unterschiedlich funktionieren, müssen Sie diese Schritte befolgen, um erfolgreich zu upgraden.
Die beiden Hauptunterschiede von Clerk.js 2 sind, dass die Designs in my.clerk.io die Liquid Template-Sprache verwenden, sie können aber auch leicht mit dem Design Editor erstellt werden.
Designs erstellen #
Da Clerk.js 2 einen anderen Ansatz für Designs hat, müssen Sie neue Designs erstellen.
Sie können Ihre Clerk.js 2 Designs auf zwei Arten erstellen:
Verwenden Sie den intuitiven Design Editor, um neue Designs zu erstellen, wie in den nächsten Punkten beschrieben.
Konvertieren Sie Ihre alten Designs. Folgen Sie dieser Anleitung, um zu sehen, wie das geht.
Design Editor-Option #
- Gehen Sie zu my.clerk.io > Recommendations/Search > Designs > New Design.

Geben Sie auf dem folgenden Bildschirm Ihrem Design einen Name (wir empfehlen, “V2” hinzuzufügen, damit klar ist, dass Sie Clerk.js 2 verwenden).
Wählen Sie den Design-Typ aus.

- Im Design Editor können Sie auf jedes der vorhandenen Elemente wie Name, Bild, Button usw. klicken, um es zu bearbeiten, oder neue Elemente zum Design hinzufügen, um mehr Informationen zu Produkten hinzuzufügen.

Klicken Sie auf Publish, wenn Sie fertig sind, und gehen Sie zu Schritt 2 in der Anleitung.
Gehen Sie zu Recommendations/Search > Elements und ändern Sie Ihr Clerk-Element, um das neue Design zu verwenden.
Klicken Sie auf Update Element. Dies führt dazu, dass sie vorübergehend nicht in Ihrem Webshop angezeigt werden, bis Sie mit Schritt 2 fertig sind. Wählen Sie das neue Design für alle Elemente aus, die aktualisiert werden sollen.

Sie sind jetzt bereit, auf Clerk.js 2 umzusteigen.
Erweiterung aktualisieren #
WARNUNG: Denken Sie daran, Backups aller geänderten Dateien zu erstellen, da diese überschrieben werden.
Das Upgrade der Magento 2-Erweiterung erfolgt über die Kommandozeile.
Führen Sie dazu folgende Schritte aus:
Melden Sie sich über die Kommandozeile an Ihrem Server an.
Navigieren Sie zu Ihrem Webroot-Ordner (meistens
_/var/www/your_domain/public_html_).Aktivieren Sie Root Access, indem Sie
sueingeben und dann Ihr Passwort.Geben Sie folgende Befehle in der angegebenen Reihenfolge ein:
composer update clerk/magento2
php bin/magento setup:upgrade
php bin/magento setup:di:compile
- Warten Sie, bis die Erweiterung fertig ist.
Ihr Magento 2 ist jetzt auf die neueste Version aktualisiert.
Jetzt haben Sie die neueste Clerk-Version für Magento 2 installiert und Clerk.js 2 läuft auf Ihrem Webshop!
Die vollständige Dokumentation für Clerk.js 2 finden Sie hier:
https://docs.clerk.io/docs/clerkjs-quick-start
Umgang mit require.js #
Diese Anleitung gilt nur bei Verwendung bis v.2.8.3 der Magento 2 Clerk-Erweiterung.
In einigen 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
Die Magento 2-Erweiterung berücksichtigt bereits Require.js, doch in manchen Fällen ist es notwendig, dass Clerk.js ignoriert wird.
Dies können Sie in folgender Datei umsetzen:
vendor->clerk->magento2->templates->tracking.phtml
Fügen Sie einfach window.__clerk_ignore_requirejs = true; am Anfang des Tracking-Skripts ein:

Nach dieser Vorgehensweise ist Require.js jetzt mit Clerk kompatibel.
Diese Seite wurde von einer hilfreichen KI übersetzt, daher kann es zu Sprachfehlern kommen. Vielen Dank für Ihr Verständnis.