FAQ
Støder du på problemer med din Magento 1-integration? Denne FAQ dækker de mest almindelige problemer og deres løsninger, fra valutakonvertering til synkroniseringsfejl.
Valutakonvertering #
Fra v3.0.3 af Magento 1-udvidelsen er Currency Conversion inkluderet som standard, hvis du bruger Magento 1’s standardkonverteringsfunktion.
Den tilføjes i my.clerk.io -> Designs med formatteren price_in_currency.
Helperen 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%}
Helperen konverterer automatisk prisen til valutaen for den aktuelle session og tilføjer valutasymbolet.
Eksempel på output:

Brug af formatters #
Clerk.js giver dig mulighed for at skrive brugerdefinerede JavaScript-funktioner, som tilføjer ny funktionalitet til dine Designs.
Formatters kan tilføjes på to måder:
Gennem my.clerk.io > Developers > Formatters, hvor hver Formatter kan oprettes som separate poster.
Som en konfiguration til Clerk.js, i tracking-scriptet der indsættes på alle sider, hvor flere formatters kan tilføjes på én gang.
For Magento 1, indeholder denne fil tracking-scriptet:
app->design->frontend->base->default->template->clerk->tracking.phtml
Eksempel på formatter #
Et eksempel kan ses nedenfor. Vær opmærksom på, at dette er til 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);
}
}
});
Flere formatters #
Du kan skrive et vilkårligt antal Formatters, adskilt med 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;
}
}
Brug i designs #
Efter du har oprettet dine Formatters, kan du bruge dem i dine Designs ved at bruge denne syntaks:
{%raw%}{{ x formatter | attribute }} {{ x | formatter | attribute1 | attribute2 }}{%endraw%}
Dette gør det muligt at oprette enhver funktionalitet i dine Designs, som du har brug for.
HTTP-autentificering #
HTTP-autentificering bruges ofte på staging sites for at undgå uønskede besøgende.
Dette vil blokere Clerk Importer og vise en 401 Unauthorized fejl i synkroniseringsloggen.
Du kan løse dette ved at indsætte autentificeringsoplysningerne i Import URL’en.
I my.clerk.io > Data > Configuration, opdater din import-URL sådan her:
http://USER:PASS@magento.clerk.io/clerk/api/store/1

Almindelige synkroniseringsfejl #
Bemærk: Vi anbefaler altid at opdatere udvidelsen til den nyeste version for at få alle opdaterede funktioner fra Clerk.
Når du importerer data med Magento 1-udvidelsen, er din webshops server ansvarlig for at sende produkt-, kategori- og salgsdata til Clerk.
I nogle tilfælde kan serverens konfiguration dog forhindre Importer i at få adgang, hvilket giver en fejl i Data Sync.
Nedenfor er en liste over de mest almindelige fejl og hvordan du løser dem.
401 Unauthorized #
Denne fejl opstår, hvis din webshop eller dev-miljø kræver HTTP-autentificering for adgang.
Dette løses 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 Forbidden #
Denne fejl opstår, hvis din server blokerer importeren i at få adgang.
I de fleste tilfælde skal du blot whiteliste importørens IP-adresse for at give adgang.
Den seneste IP-adresse kan findes her.
Tjek også, at din public key, private key og import-URL er korrekt for den butik, du arbejder med i my.clerk.io.
Hvad hvis jeg allerede har whitelistet, men den samme fejl stadig opstår?
Der er et par tilfælde, hvor du har whiteliste importørens IP-adresse, men fejlen fortsætter.
I disse tilfælde anbefaler vi, at du undersøger følgende:
Autentificeringsdelen af body’en kan være fjernet fra anmodningen fra shoppens server.
Rate limit for serveren i forhold til Cloudflare.
404 Not Found #
Denne fejl opstår, hvis importøren ikke kunne tilgå linket, der sender data fra webshoppen.
I de fleste tilfælde skyldes det, at 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.
Rens dernæst din webshops cache inden du prøver igen.
429 Too Many Requests #
Denne fejl opstår, hvis din server nægter importøren adgang på grund af for mange indgående anmodninger.
Du kan løse dette ved at sætte request limit højere på din server eller ved at sætte Page Size til en højere værdi i my.clerk.io > Data > Configuration, så importøren laver færre, større forespørgsler:

Hvis du bruger hostudbyderen Byte.nl, returnerer importøren oftest denne fejl på grund af deres rate limiter. Kontakt i så fald Byte.nl og bed dem om at whiteliste importørens User-Agent “clerk”.
500 Internal Server Error #
Denne fejl betyder, at din server stødte på en intern fejl og ikke kunne specificere hvilken fejl, der opstod.
I disse tilfælde skal du tjekke din Server Log for at identificere, hvilken proces der crashede og hvorfor.
I de fleste tilfælde skyldes det blot et produkt med en ugyldig attribut eller en funktion, der kaldes forkert i webshoppen.
503 Service Unavailable #
Denne fejl er normalt midlertidig og skyldes, at serveren er for optaget til at håndtere anmodningen.
Prøv igen senere.
Hvis problemet fortsætter, kan det betyde, at serveren er overbelastet med processer og nærmer sig maksimal kapacitet.
Tjek serverload for at identificere om dette er tilfældet.
Magento API-fejl #
Denne fejl betyder også, at din server stødte på en intern fejl og ikke kunne specificere hvilken fejl eller fejlkode, der opstod.
I disse tilfælde skal du tjekke din Server Log for at identificere, hvilken proces der crashede og hvorfor.
I de fleste tilfælde skyldes det blot et produkt med en ugyldig attribut eller at din memory limit blev overskredet.
Powerstep vises ikke #
Hvis Add-To-Basket-trinnet ikke er aktiveret, skyldes det typisk to årsager:
Du har en anden tilføj-til-kurv-popup eller funktion aktiveret, som blokerer Clerk’s funktion.
Der er indsat forkerte Content ID’er i udvidelsen.
Anden popup aktiveret #
Start med at tjekke din nuværende Magento-installation for at se, om du allerede har en popup eller dropdown, der vises, når man tilføjer et produkt til kurven.
Disse kan normalt stoppe Clerk’s add-to-basket-trin i at blive vist.
Hvis dette er tilfældet, skal du deaktivere den og prøve igen.
Forkerte content ID’er #
Hvis du ikke har andre add-to-basket popups, og din powerstep er aktiveret men ikke vises, skyldes det sandsynligvis, at de forkerte template ID’er er indsat i Clerk-udvidelsens indstillinger.
Dette vil få Powerstep til at fejle.
For at løse dette skal du starte med at logge ind på din Magento admin og gå til System > Configuration > Clerk > Settings.

Vælg derefter det korrekte Configuration Scope, der matcher din butik.

Under Power step settings skal du tjekke feltet Templates.
Dette felt skal indeholde de korrekte ID’er adskilt af komma, hvis du bruger mere end ét.

For at sikre, at dine ID’er er korrekte, log ind på my.clerk.io.
Vælg den korrekte Store og gå til Recommendations/Search > Content.
Klik på Edit Content for en slider, du vil vise i powerstep.

Tjek det sidste faneblad “Insert into website” og find embed-koden.
ID’et, der findes i data-template, er det ID, du skal kopiere til Magento-udvidelsen:

Klik på Save Config i Magento-udvidelsen, og Powerstep bør virke herefter.
Cache-problemer #
Hvis du har aktiveret powerstep-popup, og den stadig ikke vises, når du tilføjer et produkt til kurven, skyldes problemet ofte Cache.
Gå til System > Cache og ryd alle interne og tredjepartscaches.
Hvis dette 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 af den vil have minimal påvirkning på hastigheden.
Skærmbilledet herunder viser præcis, hvilken du skal deaktivere:

Når du har deaktiveret Full Page Cache, bør Clerk-popup’en vises.
Hvis ikke, kontakt venligst Clerk Support via live-chat-ikonet i nederste højre hjørne, så hjælper vi med at finde en løsning til din specifikke opsætning.
Forsidesliders caches #
Normalt sker dette kun, hvis embed-koder indsættes gennem Magentos CMS Pages i backend, da forsiden caches:

I stedet bør dine embed-koder indsættes direkte i forside-filerne via FTP:

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

Dette starter en ny fuld synkronisering af dine produkter, så Clerk får de korrekte billedstier.
I Clerks Magento-udvidelse v2.1.0 løses dette problem ved automatisk at starte en Sync, når billedcachen ryddes.
Hvis du bruger en ældre version af udvidelsen, anbefaler vi stærkt at opgradere til den nyeste version.
Opgradering til Clerk.js 2 #
Clerk.js 2 er en hurtigere og mere fleksibel version af vores JavaScript-bibliotek.
Det gør det lettere at installere Clerk på enhver webshop.
Da de to versioner fungerer en smule forskelligt, skal du dog følge disse trin for at opgradere succesfuldt.
De to største forskelle i Clerk.js 2 er, at Designs i my.clerk.io bruger Liquid templating-sprog, men de kan også nemt laves med Design Editor.
Opret designs #
Da Clerk.js 2 har en anderledes tilgang til Designs, skal du lave nye.
Du kan oprette dine Clerk.js 2 Designs på en af to måder:
Brug den intuitive Design Editor til at lave nye Designs, som beskrevet i punkterne nedenfor.
Konverter dine gamle Designs. Følg denne guide for at se, hvordan du gør.
Design Editor-valgmulighed #
- Gå til my.clerk.io > Recommendations/Search > Designs > New Design.

- Vælg din Design Type.

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

Gå til Recommendations/Search > Content og ændr din Clerk Content til at bruge dit nye Design.
Klik på Update Content. Dette vil midlertidigt bevirke, at de ikke vises på din webshop, indtil du er færdig med Trin 2. Vælg det nye Design for alt Content, der skal opdateres.

Du er nu klar til at skifte til Clerk.js 2.
Opgradér udvidelse #
Hvis du allerede har den nyeste version af Clerk 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

Gem ændringer #
Inden du forsøger at opgradere, skal du sikre at du enten:
- Har gemt de ændrede filer lokalt på din FTP, eller
- Har lavet en backup af æ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 produktattributter.
Disse filer findes her:
app->code->community->Clerk->Clerk->Model->Catalog->Product.php
app->code->community->Clerk->Clerk->Model->Catalog->Productbase.php
Deaktiver udvidelse #
Inden du forsøger at opgradere, er det meget vigtigt at gøre følgende:
- Deaktiver den gamle udvidelse i Magento’s System > Configuration > Clerk > Settings-side. Sæt blot Enable til No og klik Save Config.

- Derefter skal du afinstallere den enten gennem Magento Connect eller ved at slette filerne via FTP, hvis du har installeret den direkte der.

Ellers kan din Configuration-side stoppe med at fungere, og ingen af udvidelserne vil virke efterfølgende.
Installér udvidelse #
Til sidst skal du geninstallere den seneste udvidelse og flytte eventuelle backupfiler til din FTP-server.
Din konfiguration bør være gemt, selv efter installation af den nye version.
Tjek System > Configuration > Clerk for at sikre, at alt stadig er der.
Nu har du den nyeste version af Clerk til Magento installeret, og Clerk.js 2 kører på din webshop!
Den fulde dokumentation for Clerk.js 2 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 loade, hvilket betyder, at ingen sliders eller søgeresultater vises.
Når dette sker, vil følgende fejl blive vist i din konsol:
Uncaught ReferenceError: Clerk is not defined
Der findes 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
Inkludér i Require.js #
Den bedste tilgang er at få Require.js til at genkende Clerk.
Det kan du gøre ved at indsætte require(['clerk'], function() {}); nederst i tracking-scriptet:

Ignorér Require.js #
Hvis ovenstående løsning ikke virker, kan du ignorere Require.js.
Det kan du gøre ved at indsætte window.__clerk_ignore_requirejs = true; øverst i tracking-scriptet:

Efter anvendelse af én af disse metoder vil Require.js nu være kompatibel med Clerk.
Denne side er oversat af en hjælpsom AI, og der kan derfor være sproglige fejl. Tak for forståelsen.