EDD-átvitel WP-CLI-vel
Az Easy Digital Downloads áruház átvitele parancssorból: kapcsolók, munkafolyamatok, segédparancsok, 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 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ó beállítóképernyője egy WP-CLI (nagy boltokhoz ajánlott) panelen mutatja a leggyakoribb parancsokat.
Az elsődleges parancs
Szekció neve “Az elsődleges parancs”Minden átviteli munka egyetlen, névtérrel ellátott parancson megy át, szakaszonként külön kapcsolóval:
wp fluent_cart_migrator migrate_from_edd [kapcsoló]Kapcsolók
Szekció neve “Kapcsolók”| Kapcsoló | Mit csinál |
|---|---|
--all |
A teljes folyamat sorban: termékek, adókulcsok, kuponok, fizetések, újraszámolás. A kihagyott vagy megszakadt lépéseket folytatja. |
--products |
Az EDD-letöltések átvitele FluentCart-termékekké. Újakat hoz létre, a meglévőket az azonosítótérkép alapján frissíti. |
--tax_rates |
Az EDD adóbeállításainak átvitele és FluentCart-adókulcsok létrehozása. Automatikusan kimarad, ha az EDD-ben az adó ki van kapcsolva. |
--coupons |
Az EDD-kedvezménykódok átvitele FluentCart-kuponokká. Kód alapján frissít, ha van egyezés, különben beszúr. |
--payments |
Az EDD-rendelések, tranzakciók, előfizetések és licencek átvitele. Oldalanként 1000 rendelés kötegekben dolgozik, az utolsó oldalt elmenti a folytatáshoz. |
--recount |
Az átvitel utáni statisztikák újraszámolása: élettartam-érték, átlagos rendelési érték, vásárlói vásárlásszámok, előfizetések számlázásszámai, hiányzó UUID-k. |
--stats |
Az átvitel előtti statisztikák a forrásáruházról. Adatot nem visz át. |
--verify_license |
Az EDD- és a FluentCart-licencek összevetése az átvitel után. Jelzi a hiányzó licenceket és az állapoteltéréseket. |
--log |
A sikertelen fizetések naplójának (_fluent_edd_failed_payment_logs) megjelenítése. |
--reset |
Az átvitt adatok törlése é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_edd --allMinden szakaszt sorban lefuttat. Ha egy szakasz korábban elkészült, automatikusan kihagyja. Ha az előző futás a fizetéseknél szakadt meg, az utolsó feldolgozott 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_edd --productswp fluent_cart_migrator migrate_from_edd --tax_rateswp fluent_cart_migrator migrate_from_edd --couponswp fluent_cart_migrator migrate_from_edd --paymentswp fluent_cart_migrator migrate_from_edd --recountA sorrend számít. A termékeknek létezniük kell, mielőtt a fizetések hivatkozhatnak rájuk. Az újraszámolás legyen az utolsó szakasz.
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_edd --statsKiírja a termékek, rendelések, tranzakciók, vásárlók, előfizetések és licencek számát, a talált átjárókat és az adataidban előforduló rendelésállapotokat. Semmihez nem nyúl.
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ó vásárlóhivatkozá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_edd --logMinden bejegyzés mutatja az EDD-rendelés azonosítóját, a hibaüzenetet, a hiba típusát és azt a szakaszt, ahol elbukott. Ebből indulhat a további vizsgálat.
Licenc-integritás ellenőrzése
Szekció neve “Licenc-integritás ellenőrzése”Az EDD Software Licensinget is érintő átvitel után futtasd:
wp fluent_cart_migrator migrate_from_edd --verify_licenseÖsszeveti az EDD-licencrekordokat a FluentCart-licencrekordokkal, és jelzi a hiányzókat és az állapoteltéréseket. Az EDD kikapcsolása előtt futtasd le.
Kiegészítő parancsok
Szekció neve “Kiegészítő parancsok”A fő migrate_from_edd parancson túl a Migrator segédprogramokat ad a takarításhoz és a fejlesztői munkához.
Az EDD-adatok eltávolítása az átvitel után
Szekció neve “Az EDD-adatok eltávolítása az átvitel után”Ha az átvitelt ellenőrizted, és az EDD maradványait el szeretnéd távolítani az adatbázisból:
wp fluent_cart_migrator edd_cleanupTörli az EDD bejegyzéstípusait (edd_advanced_report, edd_discount, edd_license_log, edd_log, edd_payment), az árván maradt bejegyzés- és hozzászólás-metaadatot, valamint a download_category és edd_log_type taxonómiát. Futtatás előtt megerősítést kér.
Csak teljes ellenőrzés után takaríts. Ne futtasd az
edd_cleanupparancsot, amíg alaposan nem ellenőrizted az átvitelt, és a vásárlók, előfizetések és licencek nem működnek helyesen a FluentCartban. Az eredeti EDD-rekordok a tartalékod, ha valamit egyeztetni kell.
Folyamat visszaállítása és a séma frissítése (fejlesztőknek)
Szekció neve “Folyamat visszaállítása és a séma frissítése (fejlesztőknek)”wp fluent_cart_migrator migrate_freshTörli az összes átviteli folyamatbeállítást, frissíti a FluentCart adatbázissémáját, törli az átvitt FluentCart-termékeket, és eltávolítja az átviteli metaadatot az EDD-bejegyzésekről. Tesztkörnyezetben hasznos, ha a teljes átvitelt elölről szeretnéd futtatni.
Ehhez a fejlesztői mód kell.
Az átvitt adatok visszaállítása (fejlesztőknek)
Szekció neve “Az átvitt adatok visszaállítása (fejlesztőknek)”wp fluent_cart_migrator resetTörli az átvitt adatokat és az átviteli állapotot. Valamivel enyhébb a migrate_fresh-nél: nem frissíti a sémát. Futtatás előtt megerősítést kér.
Ehhez is a fejlesztői mód kell.
Hiányzó előfizetés-UUID-k pótlása
Szekció neve “Hiányzó előfizetés-UUID-k pótlása”wp fluent_cart_migrator fix_subs_uuidÖnálló segédprogram, amely pótolja az előfizetési rekordok hiányzó UUID-it. A régebbi EDD-telepítésekből átvitt előfizetésekből néha hiányzik az UUID, ezt md5(id + uuid4 + microtime) értékkel tölti fel, hogy a FluentCart többi része megbízhatóan hivatkozhasson rájuk.
Folytatási viselkedés
Szekció neve “Folytatási viselkedés”A CLI teljesen folytatható. Az állapot minden elkészült lépés után a __fluent_cart_edd3_migration_steps beállításba kerül.
- Szakaszszintű folytatás: az
--allújrafuttatása kihagyja a kész szakaszokat. - Oldalszintű folytatás a fizetéseknél: a fizetések átvitele elmenti a
last_order_pageértékét, az újrafuttatás a következő kötegtől folytatja. - Az egyes szakaszok idempotens újrafuttatása: a
--productsaz azonosítótérkép alapján frissíti a már átvitt termékeket, 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.
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:
php -d memory_limit=1024M $(which wp) fluent_cart_migrator migrate_from_edd --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 mutat élő, lekérdezéses folyamatjelzőt a varázsló vizuális stílusában. A fizetések szakaszában a WP-CLI beépített folyamatjelzőjét használja.
- Nem szakítja meg és folytatja a szakaszt menet közben kérésre, csak a szakaszok között.
- Nem jeleníti meg az átvitel utáni visszafelé kompatibilitási figyelmeztetést. Olvasd el közvetlenül a Visszafelé kompatibilitás fejezetet, hogy tudd, mit kell bekapcsolva hagynod.
Minden másban a CLI funkcionálisan egyenértékű a varázslóval, valós terhelésnél pedig gyorsabb.
Készült: