Skip to content

Allt om WordPress, webbutveckling — och mer därtill

🔄 Hur du regenererar miniatyrbilder i WooCommerce (5 steg)

🔄 Hur du regenererar miniatyrbilder i WooCommerce (5 steg)

Bytt WooCommerce-tema och produktbilderna ballade ur? Varit där. Efter ett mallbyte ligger gamla miniatyrer kvar beskurna till det förra temats mått, medan det nya temat kräver helt andra proportioner. Resultatet: beskärning på vissa ställen, uttänjning på andra och tomma ytor där utvalda bilder borde synas.

Att redigera varje produkt manuellt är en återvändsgränd när katalogen innehåller hundratals artiklar. Som tur är erbjuder WordPress tre fungerande metoder för att automatiskt regenerera miniatyrer: ett tillägg, den inbyggda mekanismen i WooCommerce och WP-CLI. Var och en passar olika situationer.

Vi går igenom alla fem stegen, från det enklaste till det mest avancerade.

💡 Snabb överblick:

  • Installera det kostnadsfria tillägget Regenerate Thumbnails från WordPress.org:s arkiv: det klarar de allra flesta regenereringsuppgifter.
  • Kör en full regenerering via Verktyg → Regenerate Thumbnails: tillägget bearbetar alla bilder i en enda körning.
  • För en enstaka bild, använd regenerering från mediebiblioteket: snabbt och utan massombyggnad.
  • Om du har en nyare WooCommerce-version (3.3+), aktivera den inbyggda bakgrundsregenereringen: den utlöses automatiskt när måtten ändras.
  • För stora butiker med shell-åtkomst, använd WP-CLI wp media regenerate: snabbare än tillägget och utan HTTP-overhead.

Steg 1: Installera tillägget Regenerate Thumbnails

Detta är ett kostnadsfritt tillägg med en miljon aktiva installationer på WordPress.org, som underhålls av Automattic-teamet. Det gör precis vad namnet lovar, utan onödigt gränssnitt eller inställningar.

Gå till Tillägg → Lägg till nytt, sök efter "Regenerate Thumbnails", klicka på Installera nu och sedan Aktivera. Tillägget kräver ingen konfiguration: efter aktivering visas menyvalet Verktyg → Regenerate Thumbnails direkt i adminpanelen.

Observera att tillägget arbetar med originalfilerna som laddats upp. Det komprimerar inte om källbilderna utan skapar nya miniatyrer med de aktuella mått som definieras i temainställningarna och Inställningar → Media. Gamla miniatyrer raderas valfritt (kryssa i "Ta bort gamla, oanvända miniatyrer").

Steg 2: Kör en full regenerering av alla miniatyrer

Öppna Verktyg → Regenerate Thumbnails. Gränssnittet är minimalistiskt: en knapp och tre alternativ.

Fullständigt gränssnitt för regenerering av miniatyrer i tillägget

Innan du startar, se till att Hoppa över regenerering av befintliga miniatyrer med rätt storlek är valt: detta sparar tid genom att hoppa över miniatyrer som redan matchar de önskade måtten.

Klicka på Regenerera alla miniatyrer. Tillägget bearbetar varje bild i mediebiblioteket en efter en. För hundra bilder tar processen 2-3 minuter. För flera tusen, upp till 15-20 minuter.

Stäng inte webbläsarfliken medan regenereringen pågår. Om sidan uppdateras av sig själv är det inget problem: redan bearbetade bilder förblir ombyggda, och tillägget fortsätter helt enkelt där det slutade.

Efter slutförandet ser du en sammanfattning som visar hur många miniatyrer som återskapades utan problem och hur många som fick fel. Fel beror oftast på skadade filer (trasig JPEG eller icke-standardformat), vilket syns i loggen.

Resultatet är oåterkalleligt. Du kan inte rulla tillbaka ombyggda miniatyrer till tidigare versioner, så säkerhetskopiera din webbplats före massregenerering.

Steg 3: Återställ en specifik bild

Massregenerering är inte alltid nödvändigt. Om du bytt ut ett enskilt produktkort och bara vill bygga om dess miniatyrer låter tillägget dig göra detta selektivt.

Gå till Media → Bibliotek och växla till listvy. Bredvid varje bild på raden ser du en Regenerera miniatyrer-länk.

Individuell regenerering av miniatyrer via mediebiblioteket

Klicka på den så bygger tillägget om miniatyrer endast för den filen. Bearbetningstiden för en enskild bild är 1-2 sekunder.

Samma metod fungerar för batch-regenerering: kryssa i rutorna bredvid de bilder du behöver, välj Regenerera miniatyrer från rullgardinsmenyn för massåtgärder och klicka på Verkställ. Praktiskt när redigeringar berört några dussin bilder snarare än hela katalogen.

Förresten finns samma alternativ på den enskilda bilagans redigeringssida: klicka på en bild i mediebiblioteket så visas en regenereringsknapp i sidopanelen.

Steg 4: Aktivera WooCommerce inbyggda regenerering

Från och med WooCommerce 3.3 finns bakgrundsregenerering av miniatyrer inbyggd i kärnan. Den utlöses automatiskt i två fall: när du ändrar bildmått via anpassaren och publicerar dem, eller när du byter tema.

Så här fungerar det: WooCommerce upptäcker en skillnad mellan aktuella miniatyrstorlekar och definierade storlekar, köar en bakgrundsuppgift och bygger gradvis om allt som behövs. Anpassaren ger live-förhandsvisning, så ändringar syns direkt, även före publicering.

Du kan kontrollera om kön körs under WooCommerce → Status → Loggar: välj loggen wc-background-regeneration. Om processen är aktiv visas ett meddelande med en avbryt-knapp i adminpanelen.

När den inbyggda mekanismen inte fungerar (till exempel om webbplatsen ligger bakom BasicAuth och bakgrundskön inte kan göra HTTP-anrop till sig själv), inaktivera den med ett filter:

1add_filter( 'woocommerce_background_image_regeneration', '__return_false' );

Kör därefter regenereringen manuellt via tillägget eller WP-CLI.

För de flesta butiker på nyare WooCommerce-versioner räcker denna inbyggda mekanism. Tillägget Regenerate Thumbnails behövs när du vill ha manuell kontroll över processen eller vill rensa bort gamla oanvända miniatyrer.

Steg 5: Regenerera via WP-CLI (för stora butiker)

Kommandoraden är den snabbaste metoden eftersom det inte finns någon overhead från HTTP-anrop och webbläsargränssnitt. Passar om du har SSH-åtkomst och WP-CLI installerat.

Grundkommando för att regenerera alla miniatyrer:

1wp media regenerate --yes

Flaggan --yes hoppar över bekräftelse. Utan den frågar WP-CLI efter bekräftelse för varje bilaga, vilket är meningslöst med tusentals bilder.

För en enskild bilaga, ange dess ID:

1wp media regenerate 123

Den användbara optionen --image_size anger en specifik storlek för regenerering. Till exempel om temat lagt till en ny shop_catalog-storlek och de andra inte behöver röras:

1wp media regenerate --image_size=shop_catalog

För mycket stora butiker (tiotusentals produkter), kör kommandot inuti screen eller tmux så att processen inte bryts om SSH-sessionen kopplas ner. Och säkerhetskopiera definitivt innan du kör: WP-CLI skriver, precis som tillägget, oåterkalleligt över miniatyrer.

⁉️🤔 Vanliga frågor

Behöver jag regenerera miniatyrer efter en WooCommerce-uppdatering?

En WooCommerce-uppdatering i sig ändrar inte bildmått, så regenerering krävs inte. Men om uppdateringen innehåller en återställning av anpassarinställningar eller om du uppdaterade temat samtidigt, kontrollera miniatyrmåtten och kör regenerering om det finns en skillnad.

Vad ska jag göra om regenereringen fastnar?

Uppdatera sidan Verktyg → Regenerate Thumbnails. Tillägget fortsätter från samma punkt: det bearbetar bilder en efter en och tappar inte framsteg. Om det fortsätter fastna på samma fil är källbilden troligen skadad. Ladda ner den från mediebiblioteket, spara om den i ett bildredigeringsprogram och ladda upp den igen.

Kan jag regenerera miniatyrer på en testsajt och sedan överföra dem till produktion?

Tekniskt sett ja: kopiera mappen /wp-content/uploads/ efter regenerering. Men detta är riskabelt: miniatyrer är hårt knutna till mått som definieras i temat och Inställningar → Media. Om produktionssajten har andra inställningar kommer miniatyrerna inte att stämma igen. Det är mer tillförlitligt att köra regenerering direkt på produktionsservern efter säkerhetskopiering.

Varför är WP-CLI bättre än tillägget?

Hastighet. Tillägget gör ett HTTP-anrop till sig självt via AJAX: varje fil innebär ett anrop. WP-CLI arbetar direkt mot filsystemet och databasen, utan webbserverlagret. På tusen bilder är skillnaden minuter jämfört med en halvtimme. Men WP-CLI kräver shell-åtkomst, vilket inte alla webbhotell erbjuder.

Kommer regenerering att radera originalbilder?

Nej. Både tillägget och WP-CLI och WooCommerce inbyggda mekanism arbetar endast med miniatyrer: kopior som genererats från originalet i specifika mått. Den ursprungliga uppladdade filen förblir orörd. Därför kan du köra regenerering hur många gånger du vill.

Bör jag ta bort gamla oanvända miniatyrer?

Ja, om ditt webbhotell börjar få slut på diskutrymme. Kryssrutan "Ta bort gamla, oanvända miniatyrer" i tillägget Regenerate Thumbnails hittar och tar bort miniatyrer vars storlekar inte längre är registrerade i vare sig temat eller Inställningar → Media. Säkerhetskopiera definitivt innan du gör detta: raderade filer kan bara återställas från en säkerhetskopia.

Vad gör jag om bilderna fortfarande inte stämmer efter regenerering?

Gå igenom en kort checklista. Först: öppna Inställningar → Media och Utseende → Anpassa → WooCommerce → Produktbilder, jämför måtten. Om de inte matchar det som definieras i temat producerar regenereringen andra miniatyrer än vad mallen förväntar sig. Andra: kontrollera om ett caching-tillägg eller CDN cachar gamla miniatyrer, och rensa cachen. Tredje: öppna källfilen från mediebiblioteket: om själva originalet har låg upplösning kommer ingen regenerering att förbättra kvaliteten.

För de flesta situationer räcker det kostnadsfria Regenerate Thumbnails. Om din butik är stor och du behöver regenerera regelbundet, lär dig WP-CLI: ett kommando sparar tiotals minuter. Och på nyare WooCommerce-versioner utlöses bakgrundsmekanismen ofta av sig själv: publicera bara de nya måtten i anpassaren.