WooCommerce-átvitel WP-CLI-vel
A WooCommerce áruház átvitele parancssorból: kapcsolók, a szakaszok sorrendje, hibanapló, folytatás és memóriabeállítások.
Több ezer rendelésű boltnál a WP-CLI gyorsabb az admin varázslónál, és teljesen kiküszöböli a böngésző-időtúllépést. Ugyanaz a motor hajtja mindkét felületet, ezért az eredmény azonos, csak a kezelőfelület más.
Mikor használd a WP-CLI-t
Szekció neve “Mikor használd a WP-CLI-t”- A boltodban néhány ezernél több rendelés vagy termék van.
- Megosztott tárhelyen futsz szigorú PHP-időtúllépéssel.
- Az átvitelt egy telepítési folyamat részeként szkriptelni szeretnéd.
- A böngésző nagy adatmennyiségnél futás közben folyton megszakad.
- Tesztkörnyezetben SSH-n át dolgozol, admin felület nélkül.
Kis és közepes boltnál, vagy nem műszaki felhasználónak a varázsló a jobb választás. A varázsló áttekintő képernyőjén egy WP-CLI (nagy boltokhoz ajánlott) panel mutatja a leggyakoribb parancsokat.
Az elsődleges parancs
Szekció neve “Az elsődleges parancs”Minden WooCommerce-átviteli munka egyetlen, névtérrel ellátott parancson megy át, szakaszonként külön kapcsolóval:
wp fluent_cart_migrator migrate_from_woo [kapcsoló]Külön parancs az EDD-től. A WooCommerce a
migrate_from_wooparancsot használja, az Easy Digital Downloads amigrate_from_edd-et. Független parancsok, független állapottal, így az a bolt, amelyik korábban EDD-átvitelt futtatott, WooCommerce-ből is átvihet adatot anélkül, hogy a kettő zavarná egymást.
Kapcsolók
Szekció neve “Kapcsolók”| Kapcsoló | Mit csinál |
|---|---|
--all |
A teljes folyamat sorban: termékek, adókulcsok, kuponok, rendelések, hiányzó vásárlók, újraszámolás. A kész szakaszokat kihagyja, a megszakadtakat folytatja. |
--products |
A WooCommerce-katalógus átvitele FluentCart-termékekké. Szinkronizálja a kategóriákat, tulajdonságokat, letölthető fájlokat, az áruház beállításait (csak az első oldalon), és az utolsó oldalon bekötik a csomagkapcsolatokat. |
--tax_rates |
A WooCommerce adókonfigurációjának átvitele és FluentCart-adókulcsok létrehozása. Automatikusan kimarad, ha a WooCommerce-ben az adó ki van kapcsolva. |
--coupons |
A WooCommerce-kuponok átvitele FluentCart-kuponokká, az áthelyezett termék- és kategóriakorlátozásokkal. |
--payments |
Rendelések, tranzakciók, visszatérítések, vásárlók és előfizetések átvitele. 1000 rendelésenkénti oldalakban dolgozik, az utolsó oldalt elmenti a folytatáshoz. |
--missing-customers |
FluentCart-vásárlókat hoz létre azoknak a regisztrált customer / subscriber fiókoknak, amelyek sosem adtak le rendelést. |
--recount |
Az összesítők újraszámolása az átvitel után: kuponfelhasználás, vásárlói élettartam-érték és vásárlásszámok, árván maradt megújító tranzakciók, előfizetések számlázásszámai. |
--stats |
Az átvitel előtti statisztikák a WooCommerce-boltról. Adatot nem visz át. |
--log |
A sikertelen rendelések naplójának megjelenítése. |
--reset |
Az átvitt adatok és az átviteli állapot törlése. Fejlesztői mód kell hozzá. |
Gyakori munkafolyamatok
Szekció neve “Gyakori munkafolyamatok”Teljes átvitel egy paranccsal
Szekció neve “Teljes átvitel egy paranccsal”wp fluent_cart_migrator migrate_from_woo --allMinden szakaszt sorban lefuttat. A már kész szakaszokat kihagyja. Ha egy korábbi futás a termékeknél vagy a rendeléseknél szakadt meg, az utolsó befejezett oldaltól folytatja.
Lépésről lépésre
Szekció neve “Lépésről lépésre”Több ellenőrzésre van lehetőséged, ha minden szakaszt külön futtatsz. Hasznos, ha a szakaszok között meg szeretnéd nézni az eredményt, vagy egy szakasz különleges kezelést igényel.
wp fluent_cart_migrator migrate_from_woo --productswp fluent_cart_migrator migrate_from_woo --tax_rateswp fluent_cart_migrator migrate_from_woo --couponswp fluent_cart_migrator migrate_from_woo --paymentswp fluent_cart_migrator migrate_from_woo --missing-customerswp fluent_cart_migrator migrate_from_woo --recountA sorrend számít:
- Először a termékek. A rendelések és a kuponok a termékek szakasza által írt azonosítótérképen át oldják fel a termékhivatkozásokat.
- Az adókulcsok a rendelések előtt. A rendelések adósorai az adószakasz által létrehozott FluentCart-kulcsazonosítókra mutatnak.
- A kuponok a rendelések előtt. A rendeléseken alkalmazott kuponok kód alapján kapcsolódnak vissza az átvitt kuponrekordokhoz.
- Utolsónak az újraszámolás. Mindent újraépít abból, ami már átkerült.
A forrásadat előnézete
Szekció neve “A forrásadat előnézete”Mielőtt bármit átvinnél, nézd meg, mi van a forrásáruházban:
wp fluent_cart_migrator migrate_from_woo --statsKiírja a termékek, rendelések, fizetett tranzakciók, vásárlók, előfizetések és kuponok számát, az összes regisztrált fizetésiátjáró-azonosítót, és az adataidban előforduló rendelésállapotokat. Semmit nem ír.
Hibák megtekintése futás után
Szekció neve “Hibák megtekintése futás után”Ha egyes rendelések az átvitel során elbuktak (sérült rekord, hiányzó termékhivatkozás, hibás rendelési tétel), a Migrator rögzíti őket, és nem állítja le az egész futást. Megtekintésük:
wp fluent_cart_migrator migrate_from_woo --logMinden bejegyzés mutatja a WooCommerce-rendelés azonosítóját és a hibaüzenetet. A hibákat maga a futás közben is figyelmeztetésként kiírja, így egy hosszú CLI-átvitel menet közben jelzi a problémákat.
Visszaállítás és újrakezdés (csak tesztkörnyezetben)
Szekció neve “Visszaállítás és újrakezdés (csak tesztkörnyezetben)”wp fluent_cart_migrator migrate_from_woo --resetMegerősítést kér, majd törli az összes átvitt FluentCart-adatot és a WooCommerce-átvitel állapotát. A fejlesztői módhoz kötött, és éles oldalon soha nem szabad futtatni.
Folytatási viselkedés
Szekció neve “Folytatási viselkedés”A CLI teljesen folytatható. Az állapot minden elkészült oldal és lépés után a __fluent_cart_woocommerce_migration_steps beállításba kerül.
- Szakaszszintű folytatás: az
--allújrafuttatása kihagyja a kész szakaszokat. - Oldalszintű folytatás a termékeknél: az utolsó befejezett termékoldal el van mentve, az újrafuttatás a következőtől folytatja.
- Oldalszintű folytatás a rendeléseknél: ugyanez a mechanizmus, 1000 rendelésenkénti oldalakban.
- Idempotens újrafuttatás: a
--productsaz azonosítótérkép alapján helyben frissíti a már átvitt termékeket, nem duplikálja őket. A--couponskód alapján frissíti a meglévő kuponokat. A--recountmindig az aktuális adatokból számol újra, soha nem növel.
Ezért nyugodtan megszakíthatsz egy hosszú futást a Ctrl+C billentyűvel, és újraindíthatod: nem keletkezik duplikált adat, és nem marad ki rekord.
A Migrator a memóriakimerülés ellen is véd egy futáson belül: a kötegek között üríti a WordPress futásidejű objektum-gyorsítótárát és lekérdezésnaplóját, és megállítja a köteget, ha a folyamat eléri a PHP memóriakorlátjának nagyjából 70%-át. A következő hívás friss folyamattal folytatja.
Memória- és időzítési tippek
Szekció neve “Memória- és időzítési tippek”Nagyon nagy boltoknál adj elég memóriát a PHP-nak:
wp --exec='ini_set("memory_limit","1G");' fluent_cart_migrator migrate_from_woo --allVagy ezzel egyenértékűen:
php -d memory_limit=1024M $(which wp) fluent_cart_migrator migrate_from_woo --allHa a tárhely szigorúan korlátozza a folyamatokat, az --all helyett futtasd külön a szakaszokat, hogy minden hívás saját memóriakörnyezetet kapjon.
Amit a CLI nem tud a varázslóhoz képest
Szekció neve “Amit a CLI nem tud a varázslóhoz képest”- Nem rajzolja ki a varázsló élő, lépésenkénti folyamatpaneljét, helyette oldalankénti haladássorokat ír ki.
- Nem szakítja meg és folytatja a szakaszt menet közben kérésre, csak az oldalak és szakaszok között.
- Nem jeleníti meg az átvitel utáni teendők panelt. Ehelyett dolgozd végig a teendőlistát: kösd újra a fizetési átjárókat, cseréld le a WooCommerce-rövidkódokat és blokkokat, nézd át az e-mail-értesítéseket, és az előfizetések élesítés előtti tudnivalóit.
Minden másban a CLI funkcionálisan egyenértékű a varázslóval, valós terhelésnél pedig gyorsabb.
Készült: