Häufig gestellte Fragen
Verwendung von Formatierern in Designs #
Clerk.js ermöglicht es Ihnen, benutzerdefinierte JavaScript-Funktionen zu schreiben, die neue Funktionen zu den Designs hinzufügen.
Formatierer können auf zwei Arten hinzugefügt werden:
- Über my.clerk.io > Einstellungen > Formatierer, wo jeder Formatierer als separate Einträge 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 Prestashop enthält diese Datei das Tracking-Skript:
modules->clerk->views->templates->hook->clerk_js.tpl
Ein Beispiel ist unten zu sehen. Bitte beachten Sie, dass dies Clerk V2 (neueste Version) ist:
<!-- Start von Clerk.io E-Commerce Personalisierungstool - www.clerk.io -->
<script type="text/javascript">
(function(w,d){
var e=d.createElement('script');e.type='text/javascript';e.async=true;
e.src='https://cdn.clerk.io/clerk.js';
var s=d.getElementsByTagName('script')[0];s.parentNode.insertBefore(e,s);
w.__clerk_q=w.__clerk_q||[];w.Clerk=w.Clerk||function(){ w.__clerk_q.push(arguments) };
})(window,document);
Clerk('config', {
key: '{$clerk_public_key}',
collect_email: {$clerk_datasync_collect_emails},
language: '{$language}',
formatters: {
log_price: function(price) {
console.log(price);
}
},
});
</script>
<!-- Ende von Clerk.io E-Commerce Personalisierungstool - www.clerk.io -->
Sie können beliebig viele Formatierer schreiben, die durch Kommas getrennt sind:
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 in Ihren Designs mit dieser Syntax verwenden:
{% raw %}{{ price | log_price }} {{ price | calculate_discount | special_price }}{% endraw %}
Dies ermöglicht es Ihnen effektiv, jede Funktionalität in Ihren Designs zu erstellen, die Sie benötigen.
Synchronisierung mit HTTP Auth #
Oft wird die HTTP-Authentifizierung auf Staging-Seiten verwendet, um ungebetene Besucher zu vermeiden.
Dies blockiert auch den Clerk-Importer und zeigt einen 401 Unauthorized-Fehler im Synchronisierungsprotokoll an.
Sie können den Importer einfach überprüfen, indem Sie die Authentifizierungsinformationen in die Import-URL wie unten eingefügt einfügen, in der Datensynchronisierung unter my.clerk.io:
https://USER:PASS@www.ewoksRus.com

Häufige Synchronisierungsfehler #
Hinweis: Wir empfehlen Ihnen, das Plugin immer auf die neueste Version zu aktualisieren, um alle aktuellen Funktionen von Clerk zu erhalten.
Beim Importieren von Daten mit dem PrestaShop-Plugin von Clerk.io ist der Server des Webshops dafür verantwortlich, die Produkt-, Kategorie- und Verkaufsdaten an Clerk.io. zu senden.
In einigen Fällen könnte jedoch die Serverkonfiguration den Import daran hindern, Zugriff zu erhalten, was einen Fehler in der Datensynchronisierung verursacht.
Unten finden Sie eine Liste der häufigsten Fehler und wie Sie diese beheben können.
401 Serverfehler: Unautorisiert #
Dieser Fehler tritt auf, wenn Ihr Webshop-/Entwicklungsumgebung HTTP-Authentifizierung benötigt, um darauf zuzugreifen.
Dies wird einfach behoben, indem Sie den Benutzernamen und das Passwort als Teil der Import-URL einfügen:
http://username:password@prestashop.clerk.io/clerk/api/store/1
403 Serverfehler: Verboten #
Dieser Fehler tritt auf, wenn Ihr Server den Importer daran hindert, darauf zuzugreifen. In den meisten Fällen müssen Sie einfach die IP-Adresse des Importers auf die Whitelist setzen, um ihm Zugriff zu gewähren.
Die neueste IP-Adresse kann hier gefunden werden.
Überprüfen Sie auch, ob Ihr öffentlicher Schlüssel, privater Schlüssel und Import-URL korrekt für den Shop sind, in dem Sie bei my.clerk.io arbeiten.
In einigen Fällen wird dieser Fehler auch angezeigt, wenn Sie unterschiedliche Sprachdomains verwenden, wie http://webshop.com/it. In diesem Fall stellen Sie sicher, dass Sie die vollständige Domain, die Sie synchronisieren möchten, einfügen:

Was ist, wenn ich bereits auf die Whitelist gesetzt habe, aber der gleiche Fehler weiterhin auftritt?
Es gibt einige Fälle, in denen Sie die IP-Adresse des Importers auf die Whitelist gesetzt haben und der Fehler weiterhin besteht. In diesem Fall empfehlen wir Ihnen, diese Bereiche zu überprüfen:
Der Authentifizierungsteil des Körpers könnte von der Anfrage des Servers des Shops entfernt worden sein.
Rate-Limit für den Server in Bezug auf Cloudflares.
Überprüfen Sie, ob die Import-URL https enthält.
404 Serverfehler: Nicht gefunden #
Dieser Fehler tritt auf, wenn der Importer nicht auf den Link zugreifen konnte, der uns Daten vom Webshop sendet. In den meisten Fällen geschieht dies, weil die Erweiterung entweder:
Überhaupt nicht installiert ist
Ein Cache den Link daran hindert, initialisiert zu werden
Stellen Sie zunächst sicher, dass Sie das Modul korrekt installiert haben.
Zweitens sollten Sie den Cache Ihres Webshops leeren, bevor Sie einen neuen Import versuchen.
429 Serverfehler: Zu viele Anfragen #
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 Anforderungs-Limit für Ihren Server erhöhen oder die Seitenanzahl auf einen höheren Wert im Clerk.io Importer einstellen, wodurch der Importer weniger, größere Anfragen stellt:

Wenn Sie den Hosting-Anbieter Byte.nl verwenden, gibt der Importer normalerweise diesen Fehler aufgrund ihres Ratenbegrenzers zurück. In diesem Fall kontaktieren Sie einfach 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 auf einen internen Fehler gestoßen ist und nicht in der Lage war, anzugeben, welcher Fehler aufgetreten ist.
In diesen Fällen können Sie Ihr Serverprotokoll überprüfen, um zu identifizieren, 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.
Wenn Sie die Facebook Pixel App installiert haben, ist bekannt, dass dies einen 500-Fehler verursacht. Versuchen Sie, die App zu deaktivieren, und führen Sie eine neue Synchronisierung durch. Wenn es dann funktioniert, lassen Sie die App deaktiviert und kopieren Sie das Facebook-Pixel manuell in Ihre Haupt-Theme-Datei.
Sie können auch versuchen, den Debug-Modus in Prestashop zu aktivieren, der die genaue Fehlermeldung ausgibt, wenn Sie einen 500-Fehler erhalten.
Aktivieren Sie immer den Debug-Modus über FTP, um zu vermeiden, dass Sie möglicherweise aus dem Admin-Panel von Prestashop ausgesperrt werden. Überprüfen Sie, wie Sie dies mit FTP tun können.
503 Serverfehler: Dienst nicht verfügbar #
Dieser Fehler ist normalerweise vorübergehend und wird durch den Server verursacht, der zu beschäftigt ist, um die Anfrage zu bearbeiten. Versuchen Sie es später noch einmal.
Wenn das Problem weiterhin besteht, könnte es bedeuten, dass der Server mit Prozessen überlastet ist und nahe der maximalen Kapazität ist.
Überprüfen Sie die Serverlast, um festzustellen, ob dies der Fall ist.
520: Webserver gab einen unbekannten Fehler zurück #
Normalerweise wird dieser Fehler von CloudFlare zurückgegeben und tritt häufig aufgrund eines Engpasses in Prestashop auf, der Probleme mit höheren Seitenzahlen verursacht.
Um dies zu beheben, setzen Sie einfach Ihre Seitenanzahl auf 50 und führen Sie eine neue Synchronisierung durch:

Ungültige Antwort von Prestashop erhalten #
Dieser Fehler wird häufig verursacht, wenn das Facebook-Pixel-Modul verwendet wird, das ein Pixel in die obersten Dateien in Prestashop einfügt.
Dies führt häufig dazu, dass die Datensynchronisierung fehlschlägt, da das Pixel mit den Daten interferiert, die Clerk.io von Prestashop erhalten soll.
Dieses Problem zu beheben ist ganz einfach - Sie müssen lediglich eine kleine Anpassung an pspixel.php vornehmen, die die Pixel generiert.
Häufig finden Sie dies in einem der folgenden 4 Pfade:
- /modules/pspixel/pspixel.php
- /modules/alcapixel/alcapixel.php
- /modules/facebookpixel/facebookpixel.php
- /modules/canonicalseo/canonicalseo.php
In der Datei müssen Sie um Zeile 196 die folgende Zeile Code innerhalb der public function hookHeader($params) einfügen:
if (strpos($_SERVER['REQUEST_URI'], '/module/clerk/') !== false) {
return;
}
Um die neuere Datensynchronisierung zu unterstützen:
if (Tools::getValue('module') == 'clerk') {
return;
}
Am Ende sollte die Datei so aussehen:

Dies entfernt das Pixel speziell von den Links, die Clerk.io verwendet, um Daten von Prestashop zu importieren.
Deaktivierung von CCC #
CCC ( C oncateniere, C ombine und C ache) ist eine integrierte Funktionalität von PrestaShop, die es Ihnen ermöglicht, die Anzahl der Anfragen Ihres Templates zu reduzieren und diese dann zu cachen.
Manchmal kann diese Funktionalität den Datensynchronisierungsprozess stören und blockieren.
Wenn Sie Synchronisierungsfehler erleben, öffnen Sie bitte Ihr PrestaShop-Backend und besuchen Sie den Abschnitt namens
Erweiterte Parameter –> Leistung
gehen Sie dann zu dem Abschnitt namens
CCC (Kombinieren, Komprimieren und Cachen)

deaktivieren Sie alle seine Unterfunktionen, speichern Sie dann, leeren Sie den PrestaShop-Cache und genießen Sie!
P.S.: Sie können das gleiche Maß an Datenkompression - und somit Ladeleistungsverbesserungen - mit einem CDN oder einem speziellen PrestaShop-Modul erreichen, das dieselbe Kompression und Kombination von Bibliotheken durchsetzt.
Upgrade auf Clerk.js 2 #
Clerk.js 2 ist eine schnellere und viel flexiblere Version unserer JavaScript-Bibliothek, die die Installation von Clerk.io auf jedem Webshop zum Kinderspiel macht.
Da die beiden Versionen jedoch leicht unterschiedlich funktionieren, müssen Sie diese Schritte befolgen, um erfolgreich zu upgraden.
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 leicht mit dem Design-Editor erstellt werden.
Schritt 1: Designs konvertieren #
Da Clerk.js 2 einen anderen Ansatz für Designs hat, müssen Sie neue erstellen.
Sie können Ihre Clerk.js 2 Designs auf eine von zwei Arten erstellen:
1. Verwenden Sie den intuitiven Design-Editor, um neue Designs zu erstellen, wie in den folgenden Punkten beschrieben.
2. Konvertieren Sie Ihre alten Designs. Folgen Sie diesem Leitfaden, um zu sehen, wie Sie es tun.
1.1 Beginnen Sie, indem Sie zu my.clerk.io gehen und dann Empfehlungen > Suche > Designs > Neues Design

1.2 Geben Sie auf dem folgenden Bildschirm Ihrem Design einen Namen (wir empfehlen, " V2" hinzuzufügen, damit offensichtlich ist, dass Sie Clerk.js2 verwenden).
1.3. Wählen Sie den Design-Typ.
1.4. Wenn Sie fertig sind, klicken Sie auf Design erstellen.

1.5. Klicken Sie im Design-Editor auf eines der vorhandenen Elemente wie den Namen, das Bild, die Schaltfläche usw., um es zu bearbeiten, oder ziehen Sie neue Elemente in das Design, um weitere Informationen über Produkte hinzuzufügen.
1.6. Klicken Sie auf Design speichern, wenn Sie fertig sind, und gehen Sie zu Schritt 2 im Leitfaden.

1.7. Gehen Sie schließlich zu Empfehlungen / Suche -> Inhalt und ändern Sie Ihren Clerk.io Inhalt, um Ihr neues Design zu verwenden.
1.8. Klicken Sie auf Inhalt aktualisieren. Dies wird vorübergehend dazu führen, dass sie nicht auf Ihrem Webshop angezeigt werden, bis Sie mit
Schritt 2. Wählen Sie das neue Design für alle Inhalte, die aktualisiert werden sollen.

1.9. Da! Sie sind jetzt bereit, zu Clerk.js 2 zu wechseln.
Schritt 2: Upgrade Ihres Moduls #
WARNUNG: Denken Sie daran, Sicherungskopien aller modifizierten Dateien zu erstellen, da sie überschrieben werden.
Beginnen Sie damit, die neueste Version von diesem Link herunterzuladen:
https://github.com/clerkio/clerk-prestashop/releases/latest

Melden Sie sich dann bei Ihrem Prestashop-Admin an und gehen Sie zu Module und Dienste -> Module und Dienste

Führen Sie auf dieser Seite Folgendes aus:
2.1. Klicken Sie auf Neues Modul hinzufügen
2.2. Klicken Sie auf Datei auswählen und laden Sie die clerk.zip Datei hoch, die Sie gerade heruntergeladen haben
2.3. Klicken Sie auf Dieses Modul hochladen

PrestaShop zeigt jetzt eine Erfolgsmeldung an, die bestätigt, dass Ihr Modul jetzt aktualisiert wurde.
Jetzt haben Sie die neueste Version von Clerk.io für PrestaShop 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 #
Dieser Leitfaden gilt nur für die Verwendung bis zur v.4.4.1 der Prestashop Clerk-Erweiterung.
In einigen Setups verhindert Require.js, dass Clerk.js geladen wird, 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
Es gibt zwei Möglichkeiten, Require.js zu handhaben. Beide Ansätze erfordern, dass Sie Änderungen am Tracking-Skript in dieser Datei vornehmen:
modules->clerk->views->hook->visitor_tracking.tpl
“clerk” in Require.js einfügen #
Der beste Ansatz besteht darin, zu versuchen, Require.js dazu zu bringen, Clerk.io zu erkennen.
Sie können dies tun, indem Sie require([‘clerk’], function() {}); am Ende des Tracking-Skripts einfügen:

Require.js ignorieren #
Wenn die obige Lösung nicht funktioniert, ist es möglich, Require.js zu ignorieren.
Sie können dies tun, indem Sie window.__clerk_ignore_requirejs = true;
am Anfang des Tracking-Skripts einfügen:

Nachdem Sie einen dieser Ansätze verwendet haben, wird Require.js jetzt mit Clerk.io kompatibel sein.
Diese Seite wurde von einer hilfreichen KI übersetzt, daher kann es zu Sprachfehlern kommen. Vielen Dank für Ihr Verständnis.