FAQ
Håndtering af valutakonvertering #
Fra v3.0.3 af Magento 1-udvidelsen er valutakonvertering inkluderet som standard, hvis du bruger Magentos standard konverteringsfunktion.
Det tilføjes i my.clerk.io -> Designs, med formatteren price_in_currency.
Hjælperen kan tilføjes til dit Design på følgende måde:
{%raw%}
<div class="clerk-product-price">
{{ product.price_final_excl_tax | price_in_currency }}
</div>{%endraw%}
Hjælperen vil automatisk konvertere prisen til valutaen for den aktuelle session og tilføje valutasymbolet.
Eksempel output:

Brug af formater i designs #
Clerk.js giver dig mulighed for at skrive brugerdefinerede javascript-funktioner, der tilføjer ny funktionalitet til Designs.
Formater kan tilføjes på to måder:
- Gennem my.clerk.io > Indstillinger > Formater, hvor hver formatter kan oprettes som separate poster.
- Som en konfiguration for Clerk.js, i tracking-scriptet der indsættes på alle sider, hvor flere formater kan tilføjes på én gang.
For Magento 1 indeholder denne fil tracking-scriptet:
app->design->frontend->base->default->template->clerk->tracking.phtml
Et eksempel kan ses nedenfor. Vær opmærksom på, at dette er for Clerk V2 (seneste version):
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);
}
}
});
Du kan skrive et vilkårligt antal Formater, adskilt af 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;
}
}
Efter at have oprettet dine formater, kan du bruge dem i dine Designs ved hjælp af denne syntaks:
{%raw%}{{ x formatter | attribute }} {{ x | formatter | attribute1 | attribute2 }}{%endraw%}
Dette giver dig mulighed for at skabe enhver funktionalitet i dine Designs, som du har brug for.
Synkronisering med HTTP Auth #
Ofte bruges HTTP-godkendelse på staging-sider for at undgå uinviterede besøgende.
Dette vil også blokere Clerk Importer og vise en 401 Unauthorized fejl i synkroniseringsloggen.
Du kan nemt verificere importøren ved at indsætte godkendelsesoplysningerne i Import-URL’en som nedenfor, i Data Sync på my.clerk.io:
http//USER:PASS@magento.clerk.io/clerk/api/store/1:

Almindelige synkroniseringsproblemer #
Bemærk: Vi anbefaler, at du altid opdaterer udvidelsen til den nyeste version for at få alle opdaterede funktioner fra Clerk.Når du importerer data med Magento 1-udvidelsen, er webshopserveren ansvarlig for at sende produkt-, kategori- og salgsdata til Clerk.io.
Men i nogle tilfælde kan serverens konfiguration forhindre importøren i at få adgang, hvilket forårsager en fejl i Data Sync.
Nedenfor er en liste over de mest almindelige fejl og hvordan man løser dem.
401 Serverfejl: Uautoriseret #
Denne fejl opstår, hvis din webshop/dev-miljø kræver HTTP-godkendelse for at få adgang til det.
Dette løses enkelt ved at indsætte Brugernavn og Adgangskode som en del af Import-URL’en:
http://username:password@magento.clerk.io/clerk/api/store/1
403 Serverfejl: Forbudt #
Denne fejl opstår, hvis din server blokerer importøren fra at få adgang til den. I de fleste tilfælde skal du blot whitelist importørens IP-adresse for at give den adgang.
Den seneste IP-adresse kan findes her.
Tjek også, at din offentlige nøgle, private nøgle og import-URL er korrekte for den butik, du opererer inden for my.clerk.io.
Hvad hvis jeg allerede har whitelisted, men den samme fejl stadig opstår?
Der er et par tilfælde, hvor du har whitelisted importørens IP-adresse, og fejlen stadig vedvarer, så anbefaler vi, at du ser på disse dele:
Godkendelsesdelen af anmodningen kan være blevet fjernet fra anmodningen fra butikkens server.
Rate limit for serveren i forhold til cloudflares.
404 Serverfejl: Ikke fundet #
Denne fejl opstår, hvis importøren ikke kunne få adgang til linket, der sender os data fra webshoppen. I de fleste tilfælde sker det, fordi udvidelsen enten:
Ikke er installeret overhovedet
En cache forårsager, at linket ikke bliver initialiseret
Sørg først for, at du har installeret udvidelsen korrekt.
For det andet skal du sørge for at rydde din webshop-cache, før du prøver en ny import.
429 Serverfejl: For mange anmodninger #
Denne fejl opstår, hvis din server nægter importøren adgang på grund af for mange indkommende anmodninger.
Du kan løse dette ved at sætte anmodningsgrænsen højere for din server eller ved at sætte Side størrelse til en højere værdi i Clerk.io importøren, hvilket får importøren til at lave færre, større anmodninger:

Hvis du bruger hostingudbyderen Byte.nl, returnerer importøren normalt denne fejl på grund af deres rate limiter. I dette tilfælde skal du blot kontakte Byte.nl og bede dem om at whitelist importørens User-Agent " clerk".
500 Intern serverfejl #
Denne fejl betyder, at din server har stødt på en intern fejl og ikke kunne specificere, hvilken fejl der opstod.
I disse tilfælde kan du tjekke din Serverlog for at identificere, hvilken proces der gik ned, og hvorfor. I de fleste tilfælde skyldes det simpelthen et produkt med en ugyldig attribut eller en funktion, der kaldes forkert i webshoppen.
503 Serverfejl: Tjenesten er utilgængelig #
Denne fejl er normalt midlertidig og skyldes, at serveren er for travl til at håndtere anmodningen. Prøv igen lidt senere.
Hvis problemet fortsætter, kan det betyde, at serveren er overbelastet med processer og er tæt på maksimal kapacitet.
Tjek serverbelastningen for at identificere, om dette er tilfældet.
Magento API: "" #
Denne fejl betyder også, at din server har stødt på en intern fejl og ikke kunne specificere, hvilken fejl eller fejlkode der opstod.
I disse tilfælde kan du tjekke din Serverlog for at identificere, hvilken proces der gik ned, og hvorfor. I de fleste tilfælde skyldes det simpelthen et produkt med en ugyldig attribut, eller din hukommelsesgrænse er overskredet.
Add-basket-trin vises ikke #
Hvis Add-To-Basket-trinnet ikke er aktiveret, skyldes det typisk to grunde:
Du har en anden add-to-basket-popup eller funktion aktiveret, som blokerer Clerk.io’s funktion
De forkerte Indhold IDs er indsat i udvidelsen.
En anden add-to-basket-popup er aktiveret
Start med at tjekke din eksisterende Magento-installation for at se, om du allerede har en popup eller dropdown, der vises, når du tilføjer et produkt til kurven.
Disse kan normalt stoppe Clerk.io’s add-to-basket-trin fra at vise.
Hvis dette er tilfældet, skal du deaktivere det og prøve igen.
Forkerte Indhold IDs er indsat i Udvidelsen
Hvis du ikke har nogen anden add-to-basket-popup, og dit powerstep er aktiveret, men ikke vises, skyldes det sandsynligvis, at de forkerte skabelon-ID’er er indsat i Clerk.io udvidelsens indstillinger. Dette vil få Powerstep til at fejle.
For at løse dette skal du starte med at logge ind på din Magento-administration og gå til System->Konfiguration->Clerk->Indstillinger

Vælg derefter den korrekte Konfigurationsomfang, der matcher din butik.

Under Power step-indstillinger skal du kontrollere feltet Skabeloner.
Dette felt skal indeholde de korrekte ID’er adskilt af kommaer, hvis du bruger mere end én.

For at sikre, at dine ID’er er korrekte, skal du logge ind på my.clerk.io.
Vælg den korrekte Butik og gå til Anbefalinger/Søg -> Indhold.
Klik på Rediger indhold for en slider, som du ønsker at vise i powerstep.

Tjek den sidste fane " Indsæt i hjemmeside" og find embedkoden.
ID’et, der findes i data-template, er det ID, du skal kopiere til Magento-udvidelsen:

Klik på Gem konfiguration i Magento-udvidelsen, og Powerstep skal fungere derefter.
Hvis du har aktiveret powerstep-popup’en, og den stadig ikke vises, når du tilføjer et produkt til kurven, skyldes problemet ofte Cache.
1. Start med at gå til System => Cache og rydde alle interne og tredjeparts-cacher.
2. Hvis det ikke løser det, bruger du sandsynligvis Full Page cache, som kun påvirker de sider, en besøgende allerede har set i deres session. Deaktivering vil have en minimal indvirkning på sidespeed.
3. Skærmbilledet nedenfor viser præcist, hvilken du skal deaktivere:

Når du har deaktiveret Full Page Cache, skal Clerk-popup’en vises. Hvis den ikke gør, bedes du kontakte Clerk Support fra live-chat-ikonet i nederste højre hjørne, så vi kan hjælpe med at finde en løsning til din specifikke opsætning 😃
Forside sliders viser altid de samme produkter #
Normalt sker dette kun, hvis embedkoder indsættes gennem Magentos CMS-sider i backend, da forsiden er cachet:

I stedet skal dine embedkoder indsættes direkte i forsideskaberne via FTP:

Magento vil ikke cache resultater, når de indsættes på denne måde.
Clerk viser ikke billeder #
Når Magentos billedcache ryddes, enten manuelt eller automatisk, ændres alle billedstier.
Dette betyder, at de billedstier, der sendes til Clerk.io, ikke længere fungerer.
Dette kan nemt løses ved at gøre følgende:
Log ind på my.clerk.io
Klik på den Butik, hvor billeder mangler
Gå til Data
Klik på Start ny datasykronisering i øverste højre hjørne

Dette vil starte en ny fuld synkronisering af dine produkter, hvilket får Clerk.io til at få de korrekte billedstier.
I Clerk.io’s Magento-udvidelse v2.1.0 er dette problem løst ved automatisk at starte en synkronisering, når billedcachen ryddes.
Hvis du bruger en ældre version af udvidelsen, anbefaler vi kraftigt at opgradere til den nyeste version.
Opgradering til Clerk.js 2 #
Clerk.js 2 er en hurtigere og meget mere fleksibel version af vores JavaScript-bibliotek, der gør installationen af Clerk.io på enhver webshop til en leg.
Men da de to versioner fungerer lidt forskelligt, skal du følge disse trin for at opgradere med succes.
De to hovedforskelle i Clerk.js 2 er, at Designs i my.clerk.io bruger Liquid skabelonsprog, men de kan også nemt oprettes ved hjælp af Design Editor.
Konvertering af Designs #
Da Clerk.js 2 har en anden tilgang til Designs, skal du oprette nye.
Du kan oprette dine Clerk.js 2 Designs på en af to måder:
1. Brug den intuitive Design Editor til at oprette nye Designs, som beskrevet i de følgende punkter.
2. Konverter dine gamle Designs. Følg denne guide for at se, hvordan du gør det.
1.1 Start med at gå til my.clerk.io -> Anbefalinger / Søg -> Designs og klik på Nyt Design:

1.2. Vælg din Designtype.

1.3. I Design Editor skal du klikke på et af de eksisterende elementer som navn, billede, knap osv. for at redigere det, eller vælge nye elementer for at tilføje flere oplysninger om produkter.
1.4. Klik på Udgiv, når du er færdig, og gå til Trin 2 i guiden.

1.5. Til sidst skal du gå til Anbefalinger / Søg -> Indhold og ændre dit Clerk.io Indhold til at bruge dit nye Design.
1.6. Klik på Opdater indhold. Dette vil midlertidigt forårsage, at de ikke vises på din webshop, indtil du er færdig med Trin 2. Vælg det nye Design for alt Indhold, der skal opdateres.

1.9. Der! Du er nu klar til at skifte til Clerk.js 2.
Opgradering af din udvidelse #
Hvis du allerede har den nyeste version af Clerk.io Magento-udvidelsen, kan du springe dette trin over.
Du kan downloade den nyeste udvidelse fra dette link:
https://github.com/clerkio/clerk-magento/releases/latest

2.1. Gem eventuelle ændringer i udvidelsesfilerne
Før du forsøger at opgradere, skal du sørge for, at du enten har:
Gemt de ændrede filer lokalt på din FTP eller
Lavet en sikkerhedskopi af eventuelle ændrede filer, som du kan overføre til den nye udvidelse.
Normalt er de filer, som de fleste udviklere ændrer, Product.php og Productbase.php, som styrer produkattributter.
Disse filer findes her:
app->code->community->Clerk->Clerk->Model->Catalog->Product.php
app->code->community->Clerk->Clerk->Model->Catalog->Productbase.php
Deaktiver og afinstaller eksisterende udvidelse
Før du forsøger at opgradere, er det meget vigtigt, at du gør dette:
2.2.1. Deaktiver den gamle udvidelse på Magentos System->Konfiguration->Clerk->Indstillinger side. Sæt blot Aktiver til Nej og klik på Gem konfiguration.

2.2.2. Derefter afinstaller den enten via Magento Connect eller ved at slette filerne
fra FTP, hvis du installerede den direkte her.

Ellers kan din Konfigurations side stoppe med at fungere, og ingen udvidelse vil fungere bagefter.
2.3. Installer den nyeste udvidelse
Til sidst skal du installere den nyeste udvidelse igen og flytte eventuelle filer, du har sikkerhedskopieret, til din FTP-server.
Din konfiguration skal være gemt, selv når du installerer den nye version. Tjek System->Konfiguration->Clerk for at sikre, at alt stadig er der.
Nu har du den nyeste version af Clerk.io til Magento installeret, og Clerk.js 2 kører på din webshop!
Den fulde dokumentation for Clerk.js 2 kan findes her:
https://docs.clerk.io/docs/clerkjs-quick-start
Håndtering af require.js #
Dette gælder kun, når du bruger v.3.7.2 eller lavere af Magento 1 Clerk-udvidelsen.
I nogle opsætninger stopper Require.js Clerk.js fra at indlæse, hvilket betyder, at ingen sliders eller søgeresultater vises.
Når dette sker, vises følgende fejl i din konsol:
Uncaught ReferenceError: Clerk is not defined
Der er to måder at håndtere Require.js på. Begge tilgange kræver, at du foretager ændringer i tracking-scriptet i denne fil:
app->design->frontend->base->default->template->clerk->tracking.phtml
Inkluder “clerk” i Require.js #
Den bedste tilgang er at forsøge at få Require.js til at genkende Clerk.io.
Du kan gøre dette ved at indsætte require([‘clerk’], function() {}); i bunden af tracking-scriptet:

Ignorer Require.js #
Hvis den ovenstående løsning ikke virker, er det muligt at ignorere Require.js.
Du kan gøre dette ved at indsætte window.__clerk_ignore_requirejs = true;
i toppen af tracking-scriptet:

Efter at have brugt en af disse tilgange, vil Require.js nu være kompatibel med Clerk.io.
Denne side er oversat af en hjælpsom AI, og der kan derfor være sproglige fejl. Tak for forståelsen.