Ofte stillede spørgsmål
Oplever du problemer med din Magento 2-integration? Denne FAQ dækker de mest almindelige problemer og deres løsninger, fra billedstørrelser til synkroniseringsfejl.
Billedstørrelser #
Som standard bruger udvidelsen de originale billedstørrelser, der er indstillet i Magento 2.
Disse kan ændres, hvis det er nødvendigt.
Start med at logge på din Magento 2-backend og gå til:
Stores > Configuration > Clerk > ConfigurationUnder Synchronization > Image type kan du vælge præcis, hvilken opløsning billederne skal sendes i:

Klik derefter på Save Config.
Nu skal du blot køre en ny Sync i my.clerk.io, og dine nye billedstørrelser bliver importeret.
Brug af formatters #
Clerk.js giver dig mulighed for at skrive brugerdefinerede JavaScript-funktioner, der 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 configuration for Clerk.js i tracking-scriptet, der indsættes på alle sider, hvor flere formatters kan tilføjes på én gang.
For Magento 2 indeholder denne fil tracking-scriptet:
vendor->view->frontend->templates->tracking.phtml
Eksempel på formatter #
Et eksempel ses nedenfor. Bemærk, at dette er til Clerk V2 (seneste version):
Clerk('config', {
key: 'O7UITkJIXqXibeQF9ONobiGGKYYKtbvh',
formatters: {
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 #
Når du har oprettet dine Formatters, kan du bruge dem i dine Designs med denne syntaks:
{% raw %}{{ price | log_price }} {{ price | calculate_discount | special_price }}{% endraw %}
Dette giver dig mulighed for at lave al den funktionalitet i dine Designs, som du har brug for.
Tilføj til kurv med Form Key #
Magento 2 bruger en form_key til CSRF-beskyttelse. Når du opretter Tilføj til kurv-knapper i Clerk-designs, skal du inkludere denne form_key for at kurvfunktionen virker.
Clerk.js-scriptet til Magento 2 indeholder en indbygget formkey global variabel, som automatisk indeholder form_key-værdien fra siden.
Brug i dit design #
I dit Clerk-design skal du inkludere form_key som et skjult inputfelt i din Tilføj til kurv-formular med {{ formkey }}:
<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>
Den globale {{ formkey }} er forudkonfigureret i Magento 2-udvidelsen, så der kræves ingen yderligere opsætning.
HTTP-autentificering #
HTTP-autentificering bruges ofte på staging-sites for at undgå uønskede besøgende.
Dette vil blokere Clerk-importøren 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 opdaterer du din import-URL således:
http://USER:PASS@magento2.clerk.io/

Almindelige synkroniseringsfejl #
Note: Vi anbefaler altid at opdatere udvidelsen til den nyeste version for at få alle opdaterede funktioner fra Clerk.
Når du importerer data med Clerks Magento 2-udvidelse, er din webshops server ansvarlig for at sende product, category, and sales data til Clerk.
Dog kan serverens konfiguration i nogle tilfælde blokere importen fra at tilgå dataene, hvilket forårsager en fejl i Data Sync.
Herunder er en liste over de mest almindelige fejl, og hvordan du løser dem.
401 Unauthorized #
Denne fejl opstår, hvis din webshop eller udviklingsmiljø kræver HTTP-autentificering for at tilgå den.
Dette løses ved at indsætte Username og Password som en del af Import-URL’en:
http://username:password@magento2.clerk.io
403 Forbidden #
Denne fejl sker ofte af en af følgende årsager:
Din server blokerer importøren fra at tilgå den. I de fleste tilfælde skal du blot whiteliste importørens IP-adresse for at give adgang. Den seneste IP-adresse kan findes her.
Du har muligvis forkerte public key, private key og/eller import URL i butikken i my.clerk.io.
Du bruger Storeviews med skjulte URL’er, såsom mywebshop.com?__store=b2b. Nogle gange kan disse URL’er også indeholde 3 underscores som dette: mywebshop.com?___store=b2b.
Hvis det sidste er tilfældet, skal du blot inkludere __store-parameteren i URL’en i Data:

Hvad hvis jeg allerede har whitelistet, men fejlen stadig opstår?
Der er enkelte tilfælde, hvor du har whitelistet importørens IP-adresse, og fejlen stadig består.
I disse tilfælde anbefaler vi at undersøge følgende:
Autentificeringsdelen af body’en kan være fjernet fra anmodningen fra butikkens 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 sker det, fordi udvidelsen enten:
Ikke er installeret
En cache forårsager, at linket ikke bliver initialiseret
Sørg først for, at du har installeret udvidelsen korrekt.
Tøm dernæst din webshops cache, før du prøver en ny import.
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 for 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 og større anmodninger:

Hvis du bruger hostudbyderen hypernode.com/nl, returnerer importøren typisk denne fejl på grund af deres rate limiter. I så fald skal du kontakte hypernode.com/nl og bede dem 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 se, hvilken proces der crashede og hvorfor.
I de fleste tilfælde skyldes det blot et produkt med en ugyldig attribut eller en funktion, der er kaldt forkert i webshoppen.
503 Service Unavailable #
Denne fejl er som regel midlertidig og skyldes, at serveren er for optaget til at håndtere anmodningen.
Prøv igen lidt senere.
Hvis problemet fortsætter, kan det betyde, at serveren er overbelastet og nærmer sig max kapacitet.
Tjek server load for at se, om det er tilfældet.
Invalid response #
Denne fejl opstår ofte, hvis din webshop bruger et redirect-system til at sende kunder til forskellige domæner.
F.eks. kan “ https://mywebshop.com” omdirigere til “ https://mywebshop.com/it".
Hvis dette er tilfældet, skal du blot bruge den fulde URL ved import i my.clerk.io:

MSI-lagerimport #
Hvis din Magento 2-butik bruger MSI (Multi-Source Inventory), kan du importere det samlede lager på tværs af alle kilder til Clerk ved at tilføje nedenstående attributkode til udvidelsens yderligere felter.
Gå i din Magento-admin til Stores > Configuration > Clerk > Configuration.
Under Synchronization > Additional Fields skal du tilføje:
multi_source_stock.Klik på Save Config og kør derefter en ny sync i my.clerk.io > Data.
Clerk importerer multi_source_stock som summen af antal på tværs af alle MSI-kilder.
Dette er nyttigt, når standard lagerkilden er 0, men produkter stadig er på lager i andre kilder.
Opgradering til Clerk.js 2 #
Clerk.js 2 er en hurtigere og mere fleksibel version af vores JavaScript-bibliotek.
Det gør det nemmere at installere Clerk på alle webshops.
Dog fungerer de to versioner lidt forskelligt, så du skal 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 template-sproget, men de kan også nemt oprettes med Design Editor.
Opret 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:
Brug den intuitive Design Editor til at lave nye Designs, som beskrevet i de følgende punkter.
Konverter dine gamle Designs. Følg denne guide for at se, hvordan du gør det.
Design Editor-muligheden #
- Gå til my.clerk.io > Recommendations/Search > Designs > New Design.

På den følgende skærm skal du give dit Design et Navn (vi anbefaler at tilføje “V2”, så det er tydeligt, at du bruger Clerk.js 2).
Vælg Design Type.

- I Design Editor kan du klikke på et af de eksisterende elementer såsom navn, billede, knap mm. for at redigere det, eller tilføje nye elementer til Designet for at tilføje mere information om produkterne.

Klik på Publish, når du er færdig, og gå til Step 2 i guiden.
Gå til Recommendations/Search > Elements og ændr dit Clerk Element til at bruge dit nye Design.
Klik på Update Element. Dette vil midlertidigt få dem til ikke at blive vist på din webshop, indtil du er færdig med Step 2. Vælg det nye Design for alle Elementer, der skal opdateres.

Du er nu klar til at skifte til Clerk.js 2.
Opgrader udvidelsen #
ADVARSEL: Husk at tage backup af eventuelle ændrede filer, da de vil blive overskrevet.
Opgradering af Magento 2-udvidelsen sker via kommandolinjen.
Det gøres ved at følge disse trin:
Log ind på din server via kommandolinje.
Navigér til din webroot-mappe (typisk
_/var/www/your_domain/public_html_).Aktiver Root Access ved at skrive
suog derefter indtaste dit kodeord.Indtast følgende kommandoer i rækkefølge:
composer update clerk/magento2
php bin/magento setup:upgrade
php bin/magento setup:di:compile
- Vent, til udvidelsen er færdig.
Din Magento 2 er nu opgraderet til den nyeste version.
Nu har du den seneste version af Clerk til Magento 2 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 #
Denne guide gælder kun, når du bruger op til v.2.8.3 af Magento 2 Clerk-udvidelsen.
I nogle opsætninger forhindrer Require.js Clerk.js i at blive indlæst, hvilket betyder, at hverken sliders eller søgeresultater bliver vist.
Når dette sker, vises følgende fejl i din konsol:
Uncaught ReferenceError: Clerk is not defined
Magento 2-udvidelsen håndterer allerede Require.js, men i visse tilfælde er det nødvendigt at få Require.js til at ignorere Clerk.js.
Det kan du gøre i denne fil:
vendor->clerk->magento2->templates->tracking.phtml
Indsæt blot window.__clerk_ignore_requirejs = true; øverst i tracking-scriptet:

Når du har gjort dette, 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.