Erstellen und Verwenden von Formatierern in Prestashop
Schreiben Sie benutzerdefinierte Funktionen zur Verwendung in Ihren Designs
Platforms:
Clerk.js ermöglicht es Ihnen, eigene Javascript-Funktionen zu 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, in dem 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 die Clerk V2(neueste Version) ist:
<!-- Start of Clerk.io E-commerce Personalisation tool - www.clerk.io -->
<script type="text/javascript">
(function(){
(function(w,d){
var e=d.createElement('script');e.type='text/javascript';e.async=true;
e.src=(d.location.protocol=='https:'?'https':'http')+'://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>
<!-- End of Clerk.io E-commerce Personalisation tool - www.clerk.io -->
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.