Woocommerce

FAQ

Manuel installation af elementer #

WooCommerce er bygget omkring temaer, hvilket ofte betyder, at Clerk.io pluginet ikke kan indsætte vores embedkoder, fordi hooks ikke er placeret, hvor de skal være.

Denne guide forklarer, hvordan man manuelt indsætter koder, hvis det er tilfældet.

1. Find den rigtige fil #

1. Start med at finde din søgeformular. Du kan gøre dette ved at tjekke din kildekode og finde en unik tekst til feltet.

2. Efter at have identificeret dette, har du brug for en god måde at søge gennem dine filer for at finde dette. Vi anbefaler at bruge Sublime Text.

3. Åbn dine webshops FTP-filer og lokaliser public_html -> wp-content -> themes

4. Træk temaerne til dit skrivebord for at kopiere dem til din computer. Dette vil give dig mulighed for at søge i filerne:

5. I Sublime gå til Project -> Add Folder to Project

6. Vælg themes mappen, som du har gemt på din computer.

7. Nu kan du søge i filerne ved at gå til Find -> Find in Files. Du kan endda vælge kun at søge i .php filer, som normalt er filtypen, der bruges til tema-filer i WooCommerce:

2. Få linket til søgesiden til at fungere #

Hvis du allerede har fulgt guiden til opsætning af søgning, og har oprettet en side i WooCommerce til søge-resultaterne, men dit søgefelt ikke linker korrekt, er dette, hvad du skal gøre.

1. Start med at se på webshoppen i din browser. Vi anbefaler at bruge Chrome.

2. Find enhver HTML, der synes at være unik for søgefeltet. For eksempel søgeformular:

3. Søg efter dette i Sublime for at finde en liste over filer, som det er i:

4. Find den matchende fil på FTP.

5. Nu kan du ændre de nødvendige indstillinger for at få Clerk.io til at linke til den korrekte side. De 3 ting, du skal ændre, er:

  • Den URL, som kunden er linket til, ofte fundet i

    elementet, skal ændres for at matche navnet på den side, du har oprettet i WooCommerce. Dette vil ofte være “soegeresultater” eller “search-results”

  • “name” attributten for input-feltet, der skal være searchterm

  • Det skjulte inputfelt med name=“post_type” skal kommenteres ud.

6. En søgeformular kunne se sådan ud før ændringen:

7. Og bør se sådan ud efter ændringen:

8. Nu bør du være linket til søgesiden, når du søger: www.mywebshop.com/soegeresultater?searchterm=test

Brug af formaterere i designs #

Clerk.js giver dig mulighed for at skrive brugerdefinerede javascript-funktioner, der tilføjer ny funktionalitet til Designs.

Formaterere kan tilføjes på to måder:

  • Gennem my.clerk.io > Settings > Formatters, 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 formaterere kan tilføjes på én gang.

For WooCommerce indeholder denne fil tracking-scriptet:

wp-content->plugins->clerkio->includes->class-clerk-visitor-tracking.php

Et eksempel kan ses nedenfor. Vær opmærksom på, at dette er Clerk V2 (seneste version):

    Clerk('config', {
      key: 'O7UITkJIXqXibeQF9ONobiGGKYYKtbvh',
      formatters: {
             log_price: function(price) {
             console.log(price);
          }
      });

Du kan skrive et vilkårligt antal Formatters, 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 Formaterere, kan du bruge dem i dine Designs ved hjælp af denne syntaks:

{%raw%}{{ price | log_price }} {{ price | calculate_discount |  special_price }}{%endraw%}

Dette giver dig effektivt 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-importøren 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:

https//USER:PASS@www.ewoksRus.com

Almindelige synkroniseringsproblemer #

Bemærk: Vi anbefaler, at du altid opdaterer pluginet til den nyeste version for at få alle opdaterede funktioner fra Clerk.

Når du importerer data med Clerk.io’s WooCommerce-plugin, er webshoppens server ansvarlig for at sende produkt-, kategori- og salgsdata til Clerk.io.

Men i nogle tilfælde kan serverens konfiguration forhindre importen 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@woocommerce.clerk.io

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 whiteliste importørens IP-adresse for at give den adgang.

Den nyeste 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 whiteliste, men den samme fejl stadig opstår?

Der er et par tilfælde, hvor du har whiteliste importørens IP-adresse, og fejlen stadig vedvarer, så anbefaler vi, at du ser på disse dele:

  • Den godkendelsesdel af kroppen kan være 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 pluginet enten:

  • Ikke er installeret overhovedet

  • Deaktiveret på grund af en opdatering

  • En cache forårsager, at linket ikke bliver initialiseret

  • WooCommerce permalinks er indstillet til Post name i stedet for Month and name

Først skal du sikre dig, at du har installeret pluginet korrekt og at det er aktiveret.

Hvis du for nylig har auto-opdateret pluginet, deaktiverer WooCommerce nogle gange pluginet. Hvis dette er sket, skal du blot gå til Plugins > Clerk og klikke på Aktiver for at få det tilbage igen.

For det andet skal du sørge for at tømme din webshops cache, før du prøver en ny import.

Hvis det stadig ikke synkroniserer korrekt, skal du gå til Indstillinger => Permalinks og ændre Almindelige indstillinger til Month and name og trykke på Gem:

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 indstille anmodningsgrænsen højere for din server eller ved at indstille 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 hostudbyderen 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 whiteliste 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 skete.

I disse tilfælde kan du tjekke din Server Log for at identificere, hvilken proces der crashede og hvorfor. I de fleste tilfælde skyldes det simpelthen et produkt med en ugyldig attribut eller en funktion, der kaldes forkert i webshoppen.

Et eksempel på en sådan fejl kunne opstå, når du opgraderer både WooCommerce og Klarna. I dette tilfælde skabes problemet af ‘woocommerce-gateway-klarna’ pluginet, som ikke opgraderes.

Hvis dette sker for dig, skal du gå til woocommerce-gateway-klarna ->includes->variables-checkout.php .

Se efter:

if ( ! is_admin() && ! empty( $klarna_country )) {

og ændre det til:

if ( ! is_admin() && ! empty( $klarna_country ) && WC()->session ) {

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.

520 Webserver returnerede en ukendt fejl #

Denne fejl returneres normalt fra CloudFlare og sker ofte på grund af en flaskehals i WooCommerce, der forårsager problemer med højere side størrelser. For at løse det skal du blot indstille din side størrelse til 50 og køre en ny synkronisering:

522 Serverfejl: Forbindelsen timed out #

Denne fejl opstår normalt, hvis serveren er for travl til at svare, eller hvis vores importør ikke har adgang til serveren.

Først skal du vente et par minutter og prøve at synkronisere igen for at se, om serveren var travlt.

Hvis det stadig ikke virker, skal du sørge for at whiteliste importørens IP i din serverkonfiguration. Den nyeste IP-adresse kan findes her.

Ugyldigt svar returneret fra WooCommerce API #

Denne fejl opstår normalt, hvis WooCommerce’s Debugging er blevet aktiveret. Dette er aldrig en god idé at have aktiveret på en live-opsætning, da det bremser siderne og potentielt viser fejlmeddelelser i frontend.

Synkroniseringsproblemet opstår, hvis WooCommerce støder på en fejl, mens den genererer produktdataene til importen.

Dette kan løses ved at deaktivere Debugging i wp-config.php ved at indstille define(WP_DEBUG’, false).

Denne guide forklarer det i mere detaljer:

https://docs.woocommerce.com/document/woocommerce-product-search/api/debugging/

Og denne guide forklarer en alternativ løsning:

https://aristath.github.io/blog/wp-hide-php-errors

Fejl vil stadig blive logget, selv når de ikke er i Debug-tilstand, men de vil blive logget til en fil i stedet.

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.

Trin 1: 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.1 Start med at gå til my.clerk.io -> Recommendations / Search -> Designs og klik på New Design:

1.2. Vælg Design Type og følg designopsætningsguiden.

1.3. I Design Editor, klik på et af de eksisterende elementer som navnet, billedet, knappen osv. for at redigere det, eller tilføj nye elementer til designet for at tilføje flere oplysninger om produkter.

1.4. Klik på Publicer, når du er færdig, og gå til Trin 2 i guiden.

1.5. Til sidst skal du gå til Recommendations / Search -> Content og ændre dit Clerk.io indhold til at bruge dit nye design.

1.6. Klik på Opdater indhold. Dette vil midlertidigt få dem til ikke at vises på din webshop, indtil du er færdig med Trin 2. Vælg det nye design for alt indhold, der skal opdateres.

1.7. Der! Du er nu klar til at skifte til Clerk.js 2.

Trin 2: Opgradering af dit plugin #

ADVARSEL: Husk at tage sikkerhedskopier af eventuelle ændrede filer, da de vil blive overskrevet.

Opgradering af pluginet kan gøres direkte fra WooCommerce admin.

Start med at gå til Plugin->Tilføj ny

Søg derefter efter Clerk i søgefeltet til højre, og klik på Opdater nu.

Det er det! Nu kører du den nyeste version af Clerk.io til WooCommerce, og Clerk.js 2 kører på din webshop!

Hvis du allerede har den nyeste version, vil denne knap blot sige Aktiv.

Den fulde dokumentation for Clerk.js 2 kan findes her:

https://docs.clerk.io/docs/clerkjs-quick-start

Af og til roder Wordpress / Woocommerce plugins med Wordpress omskrivningsreglen.

Omskrivningsreglen er den konfiguration, der sikrer, at links som dette

domain.com/?p=123

bliver til smukke og SEO-optimerede links som

domain.com/product/my-beautiful-product/

og faktisk er tilgængelige for dig og dine kunder.

Hvis dine links ikke fungerer korrekt, så gør dette:

1. Log ind på din Wordpress backend

2. Gå derefter til: Dashboard –> Indstillinger –> Permalink

3. Rul ned og klik på “Gem ændringer” knappen nederst på siden uden at ændre noget. Det vil overskrive Wordpress omskrivningsreglen.

4. Når siden er blevet opdateret, tøm din Wordpress cache (hvis nogen), og vent et par minutter. Du skulle kunne se alle dine websidesider igen.

Hvis du efter alt dette stadig ikke kan besøge dine websidesider, så kontakt os på support@clerk.io, vi er her for at hjælpe!

Advarsler vist i backend og frontend #

Denne fejl opstår normalt, hvis WooCommerce’s Debugging er blevet aktiveret. Dette er aldrig en god idé at have aktiveret på en live-opsætning, da det bremser siderne og potentielt viser fejlmeddelelser i frontend.

Synkroniseringsproblemet opstår, hvis WooCommerce støder på en fejl, mens den genererer produktdataene til importen.

Dette kan løses ved at deaktivere Debug Mode enten gennem pluginet eller direkte i WooCommerce-filerne.

Håndtering af require.js #

Denne guide gælder kun, når du bruger op til v.1.7.1 af WooCommerce 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. Begge tilgange kræver, at du foretager ændringer i tracking-scriptet i denne fil:

wp-content -> plugins -> clerkio -> includes -> class-clerk-visitor-tracking.php

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:

Brug af pluginet

Hvis du bruger Clerk.io’s v2.2.4 eller senere, kan Debugging deaktiveres direkte fra plugin-siden i din WooCommerce backend.

Gå til Clerk -> Clerk Settings -> Debug Guide og klik på Deaktiver Debug Mode:

Eller direkte i filerne

Debug Mode kan også deaktiveres via FTP, i wp-config.php ved at indstille define(WP_DEBUG’, false).

Denne guide forklarer det i mere detaljer:

https://docs.woocommerce.com/document/woocommerce-product-search/api/debugging/

Og denne guide forklarer en alternativ løsning:

https://aristath.github.io/blog/wp-hide-php-errors

Fejl vil stadig blive logget, selv når de ikke er i Debug Mode, men de vil blive logget til en fil i stedet.

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;

øverst i tracking-scriptet:

Efter at have brugt en af disse tilgange, vil Require.js nu være kompatibel med Clerk.io.

Flersprog #

Når du bruger WPML i WooCommerce, skal du kunne differentiere dine sprog efter URL, som dette:

Hvis du har unikke URL’er som dette, kan du udvide WooCommerce-pluginet til at understøtte WPML.

Det er også ok at definere sproget via lang parameteren. F.eks.

Kopier butik #

Den nemmeste måde at implementere Clerk.io i flere domæner i standardopsætninger er ved at oprette en separat butik for hvert domæne i my.clerk.io. På denne måde kan du adskille produkter, salg, valutaer osv. for at holde styr på hvert domæne.

Når du er færdig med den indledende opsætning, skal du klikke på den øverste venstre hjørne af side-menuen og derefter klikke på "+ Tilføj ny butik" den sidste mulighed i rullemenuen (generelt under dine eksisterende butikker og dit firmanavn).

På siden Tilføj ny butik skal du udfylde oplysningerne om din webshop og vælge din hovedbutik fra dropdown-menuen Kopier indhold fra eksisterende butik, og derefter klikke på Tilføj butik:

Dette vil overføre Indholdet og Designene fra din hovedbutik. Husk at oversætte Overskrifter til det rigtige sprog også.

Installer og konfigurer #

Officiel support til WPML er blevet tilføjet til Clerk.io WooCommerce Extension, hvilket betyder, at så længe du bruger den version eller en nyere, bør WPML være understøttet.

I indstillingspanelet for WooCommerce vil du se indstillingerne som normalt. Hvis WPML er aktiv og konfigureret på dit WordPress-site, vil du se Multi Language Scope med det aktuelle sprog øverst på indstillingssiden.

For at skifte sprog skal du blot bruge vælgeren på topanelen. Du skal vælge det sprog, du ønsker at konfigurere Clerk til, og give dine ønskede indstillinger. Gentag dette for hvert sprog.

Bemærk, at det ikke anbefales at vælge Alle sprog fra denne dropdown, når du gemmer din konfiguration, da det kun vil gemme dine indstillinger som en fallback.

Synkroniser dine domæner #

Når du har udvidet pluginet, kan du nu synkronisere hver af dine butikker med deres sprogdomeæne.

Da du allerede har installeret udvidelsen, kan du springe det første trin over og direkte begynde at konfigurere det og synkronisere data.

Når synkroniseringen er færdig, er dit domæne klar og bruger den samme opsætning som din hovedbutik.

Denne side er oversat af en hjælpsom AI, og der kan derfor være sproglige fejl. Tak for forståelsen.