Skip to content

Kõik WordPressist, veebiarendusest — ja mitte ainult

🔄 Kuidas taastada pisipilte WooCommerce'is (5 sammu)

🔄 Kuidas taastada pisipilte WooCommerce'is (5 sammu)

Vahetasite oma WooCommerce teemat ja tootepildid läksid sassi? Olen seal olnud. Pärast mallide vahetamist jäävad vanad pisipildid lõigatuks eelmise teema mõõtude järgi, samas kui uus teema nõuab hoopis teistsuguseid proportsioone. Tulemus: mõnes kohas kärbitakse, teises venitatakse ja seal, kus peaksid olema esiletoodud pildid, on tühjad kohad.

Iga toote käsitsi muutmine on ummiktee, kui teie kataloogis on sadu tooteid. Õnneks pakub WordPress kolme toimivat meetodit pisipiltide automaatseks taasloomiseks: plugin, sisseehitatud WooCommerce mehhanism ja WP-CLI. Igaüks neist sobib erinevasse olukorda.

Vaatame läbi kõik viis sammu, alates kõige lihtsamast kuni kõige keerukamani.

💡 Kiire ülevaade:

  • Paigaldage tasuta plugin Regenerate Thumbnails WordPress.org-i repositooriumist: see lahendab valdava osa taasloomise ülesannetest.
  • Käivitage täielik taasloomine menüüst Tööriistad → Regenerate Thumbnails: plugin töötleb kõik pildid ühe korraga.
  • Üksiku pildi puhul kasutage taasloomist meediateegist: kiire ja ilma massilise uuesti ülesehitamiseta.
  • Kui teil on uuem WooCommerce'i versioon (3.3+), lubage sisseehitatud taustal taasloomine: see käivitub automaatselt, kui mõõdud muutuvad.
  • Suurte poodide puhul, kus on kestaühendus, kasutage WP-CLI käsku wp media regenerate: kiirem kui plugin ja ilma HTTP ülekoormuseta.

1. Samm: paigaldage Regenerate Thumbnails plugin

See on tasuta plugin, millel on üle miljoni aktiivse installatsiooni WordPress.org-is ja mida haldab Automatticu meeskond. See teeb täpselt seda, mida nimi lubab, ilma üleliigse liidese või seadistusteta.

Minge Pluginad → Lisa uus, otsige „Regenerate Thumbnails", klõpsake Paigalda kohe, seejärel Aktiveeri. Plugin ei vaja seadistamist: pärast aktiveerimist ilmub halduspaneelile kohe menüüpunkt Tööriistad → Regenerate Thumbnails.

Pange tähele, et plugin töötab originaalsete üleslaaditud failidega. See ei paki lähtepilte uuesti kokku, vaid loob uued pisipildid, kasutades kehtivaid mõõtmeid, mis on määratletud teema seadetes ja Seaded → Meedia. Vanad pisipildid kustutatakse valikuliselt (märkige ruut „Kustuta vanad, kasutamata pisipildid").

2. Samm: käivitage kõigi pisipiltide täielik taasloomine

Avage Tööriistad → Regenerate Thumbnails. Liides on minimalistlik: üks nupp ja kolm valikut.

Pisipiltide täieliku taasloomise liides pluginis

Enne alustamist veenduge, et Jäta vahele juba õiges suuruses pisipiltide taasloomine on valitud: see säästab aega, jättes vahele pisipildid, mis juba vastavad nõutud mõõtudele.

Klõpsake Taasloo kõik pisipildid. Plugin töötleb iga pilti meediateegis ükshaaval. Saja pildi puhul võtab protsess aega 2-3 minutit. Mitme tuhande puhul kuni 15-20 minutit.

Ärge sulgege brauseri vahekaarti, kui taasloomine käib. Kui leht ise värskendub, pole probleemi: juba töödeldud pildid jäävad uuesti üles ehitatud ja plugin lihtsalt jätkab sealt, kus pooleli jäi.

Pärast lõpetamist näete kokkuvõtet, mis näitab, mitu pisipilti edukalt taasloodi ja kui paljudel esines vigu. Vead on tavaliselt seotud rikutud failidega (kahjustatud JPEG või mittestandardne formaat), mis on logis nähtavad.

Tulemus on pöördumatu. Te ei saa uuesti üles ehitatud pisipilte varasematele versioonidele tagasi kerida, seega varundage oma sait enne massilist taasloomist.

3. Samm: taastage üks konkreetne pilt

Massiline taasloomine pole alati vajalik. Kui asendasite ühe tootekaardi ja soovite uuesti üles ehitada ainult selle pisipildid, võimaldab plugin seda valikuliselt teha.

Minge Meedia → Teek ja lülituge loendivaatele. Iga pildi kõrval reas näete linki Taasloo pisipildid.

Üksikute pisipiltide taasloomine meediateegi kaudu

Klõpsake sellel ja plugin ehitab pisipildid uuesti üles ainult selle faili jaoks. Ühe pildi töötlemise aeg on 1-2 sekundit.

See sama meetod töötab ka pakett-töötluse puhul: märkige vajalike piltide kõrval olevad ruudud, valige rippmenüüst hulgitoimingud Taasloo pisipildid ja klõpsake Rakenda. Mugav, kui muudatused puudutasid mitukümmend pilti, mitte kogu kataloogi.

Muide, sama valik on saadaval ka üksiku manuse redigeerimislehel: klõpsake meediateegis pildil ja külgribale ilmub taasloomise nupp.

4. Samm: lubage WooCommerce'i sisseehitatud taasloomine

Alates WooCommerce 3.3-st on taustal pisipiltide taasloomine tuuma sisse ehitatud. See käivitub automaatselt kahel juhul: kui muudate pildi mõõtmeid kohandaja kaudu ja avaldate need või kui vahetate teemat.

See toimib järgmiselt: WooCommerce tuvastab mittevastavuse praeguste pisipiltide suuruste ja määratletud suuruste vahel, paneb taustaülesande järjekorda ja ehitab järk-järgult kõik vajaliku uuesti üles. Kohandaja pakub reaalajas eelvaadet, nii et muudatused on nähtavad kohe, isegi enne avaldamist.

Saate kontrollida, kas järjekord töötab, menüüst WooCommerce → Olek → Logid: valige wc-background-regeneration logi. Kui protsess on aktiivne, ilmub halduspaneelile teade koos tühistamisnupuga.

Kui sisseehitatud mehhanism ei tööta (näiteks sait on BasicAuth taga ja taustajärjekord ei saa iseendale HTTP-päringuid teha), keelake see filtriga:

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

Pärast seda käivitage taasloomine käsitsi plugina või WP-CLI kaudu.

Enamiku uuematel WooCommerce'i versioonidel olevate poodide jaoks on see sisseehitatud mehhanism piisav. Regenerate Thumbnails pluginat on vaja siis, kui soovite protsessi üle käsitsi kontrolli või soovite puhastada vanu kasutamata pisipilte.

5. Samm: taasloomine WP-CLI kaudu (suurtele poodidele)

Käsurida on kiireim meetod, sest puudub HTTP-päringute ja brauseriliidese ülekoormus. Sobib, kui teil on SSH-ühendus ja WP-CLI on paigaldatud.

Põhikäsk kõigi pisipiltide taasloomiseks:

1wp media regenerate --yes

--yes lipp jätab kinnituse vahele. Ilma selleta küsib WP-CLI kinnitust iga manuse kohta, mis on tuhandete piltide puhul mõttetu.

Ühe manuse jaoks määrake selle ID:

1wp media regenerate 123

Kasulik --image_size valik määrab taasloomiseks konkreetse suuruse. Näiteks kui teema lisas uue shop_catalog suuruse ja teisi pole vaja puudutada:

1wp media regenerate --image_size=shop_catalog

Väga suurte poodide puhul (kümned tuhanded tooted) käivitage käsk screen või tmux sees, et protsess ei katkeks, kui SSH-seanss katkeb. Ja kindlasti varundage enne käivitamist: WP-CLI, nagu ka plugin, kirjutab pisipildid pöördumatult üle.

⁉️🤔 Korduma kippuvad küsimused

Kas ma pean pärast WooCommerce'i uuendamist pisipilte taaslooma?

WooCommerce'i uuendamine iseenesest ei muuda pildi mõõtmeid, seega pole taasloomine vajalik. Kuid kui uuendus sisaldab kohandaja seadete lähtestamist või uuendasite samal ajal teemat, kontrollige pisipiltide mõõtmeid ja käivitage taasloomine, kui esineb mittevastavus.

Mida teha, kui taasloomine jääb kinni?

Värskendage lehte Tööriistad → Regenerate Thumbnails. Plugin jätkab samast kohast: see töötleb pilte ükshaaval ega kaota edenemist. Kui see jääb ikka ja jälle sama faili juures kinni, on lähtepilt tõenäoliselt rikutud. Laadige see meediateegist alla, salvestage pildiredaktoris uuesti ja laadige uuesti üles.

Kas ma saan pisipilte testisaidil taasluua ja seejärel tootmiskeskkonda üle kanda?

Tehniliselt jah: kopeerige /wp-content/uploads/ kaust pärast taasloomist. Kuid see on riskantne: pisipildid on tihedalt seotud teemas ja Seaded → Meedia all määratletud mõõtmetega. Kui tootmissaidil on erinevad seaded, ei klapi pisipildid jälle. Usaldusväärsem on käivitada taasloomine otse tootmisserveris pärast varundamist.

Miks on WP-CLI parem kui plugin?

Kiirus. Plugin teeb iseendale HTTP-päringu AJAX-i kaudu: iga fail tähendab ühte päringut. WP-CLI töötab otse failisüsteemi ja andmebaasiga, ilma veebiserveri kihita. Tuhande pildi puhul on erinevus minutid versus pool tundi. Kuid WP-CLI nõuab kestaühendust, mida kõik hostid ei paku.

Kas taasloomine kustutab originaalpildid?

Ei. Nii plugin, WP-CLI kui ka WooCommerce'i sisseehitatud mehhanism töötavad ainult pisipiltidega: koopiad, mis on originaalist kindlates mõõtmetes genereeritud. Algne üleslaaditud fail jääb puutumata. Seetõttu saate taasloomist käivitada nii mitu korda kui soovite.

Kas ma peaksin kustutama vanad kasutamata pisipildid?

Jah, kui teie hostingu kettaruum hakkab otsa saama. Märkeruut „Kustuta vanad, kasutamata pisipildid" Regenerate Thumbnails pluginas leiab ja eemaldab pisipildid, mille suurused pole enam ei teemas ega Seaded → Meedia all registreeritud. Kindlasti varundage enne selle tegemist: kustutatud faile saab taastada ainult varukoopiast.

Mida teha, kui pildid pole pärast taasloomist ikka õiged?

Vaadake läbi lühike kontrollnimekiri. Esiteks: avage Seaded → Meedia ja Välimus → Kohanda → WooCommerce → Tootepildid, võrrelge mõõtmeid. Kui need ei vasta teemas määratletule, loob taasloomine teistsugused pisipildid, kui mall eeldab. Teiseks: kontrollige, kas mõni vahemällu salvestamise plugin või CDN ei salvesta vanu pisipilte vahemällu, ja tühjendage vahemälu. Kolmandaks: avage lähtefail meediateegist: kui originaal ise on madala eraldusvõimega, ei paranda ükski taasloomine kvaliteeti.

Enamiku olukordade jaoks piisab tasuta Regenerate Thumbnails pluginast. Kui teie pood on suur ja vajate taasloomist regulaarselt, õppige WP-CLI-d: üks käsk säästab kümneid minuteid. Ja uuematel WooCommerce'i versioonidel käivitub taustamehhanism sageli ise: lihtsalt avaldage uued mõõtmed kohandajas.