EDD-átvitel: hibaelhárítás
A sikertelen fizetések naplója, a licencellenőrzés, a gyakori hibák megoldása, az átvitel visszaállítása és a gyakori kérdések.
A Migrator tűri a rossz adatot: az egyes rekordok hibáját rögzíti, és nem állítja le a futást. Ez a fejezet megmutatja, hogyan találod meg ezeket a hibákat, hogyan ellenőrizheted az épséget az átvitel után, és hogyan állsz helyre a gyakori problémákból.
A sikertelen fizetések naplója
Szekció neve “A sikertelen fizetések naplója”Ha egy rendelés átvitele nem sikerül (sérült rekord, hiányzó vásárlóhivatkozás, hibás tételek, átjáróadat-ellentmondás), a hiba a _fluent_edd_failed_payment_logs WordPress-beállításba kerül, a futás megszakítása helyett.
Hibák megtekintése a CLI-ből
Szekció neve “Hibák megtekintése a CLI-ből”wp fluent_cart_migrator migrate_from_edd --logMinden bejegyzés mutatja:
| Mező | Jelentése |
|---|---|
edd_id |
A hibás EDD-rendelés azonosítója |
message |
Emberi nyelvű hibaüzenet |
error_type |
Rövid kód a hibakategóriáról |
stage |
Hol történt a hiba a folyamatban (data_setup, validation, migration) |
Hibák megtekintése a varázslóban
Szekció neve “Hibák megtekintése a varázslóban”Az átvitel befejező képernyője kinyitható hibanapló-szakaszt mutat. Kattints rá, és ugyanazt az adatot látod, mint a CLI --log kimenetében.
Mit tegyél egy hibás bejegyzéssel
Szekció neve “Mit tegyél egy hibás bejegyzéssel”- Nyisd meg az eredeti EDD-rendelést a WordPress adminban (az EDD felületén a rendelések között).
- Vesd össze a hibaüzenettel. Az ok általában kézenfekvő (hiányzó vásárlói e-mail-cím, törölt termékhivatkozás, törött metaadat).
- Javítsd ki a forrásadatot az EDD-ben.
- Futtasd újra a fizetések szakaszát:
wp fluent_cart_migrator migrate_from_edd --payments. A Migrator csak azokat a rendeléseket veszi fel, amelyek még nem kerültek át sikeresen.
A licencek épségének ellenőrzése
Szekció neve “A licencek épségének ellenőrzése”Ha a boltod EDD Software Licensinget használ, az átvitel után futtasd az ellenőrző parancsot:
wp fluent_cart_migrator migrate_from_edd --verify_licenseÖsszeveti az EDD licencrekordjait a FluentCart licencrekordjaival, és jelzi:
- az EDD-ben meglévő, de a FluentCartból hiányzó licenceket;
- az állapoteltéréseket (aktív az EDD-ben, de inaktív a FluentCartban, vagy fordítva).
Minden eltérésnél vizsgáld meg, hogy a forráslicenc rendellenes-e (szülőrendelés nélküli licenc, törölt webhelyre mutató aktiválás), vagy az átvitel valóban kihagyta. Ha valóban kihagyta, a fizetések szakaszának újrafuttatása általában megoldja, mert a licencek a rendelések feldolgozásának részeként kerülnek át.
Gyakori hibák
Szekció neve “Gyakori hibák”„EDD 3.0 or later required” üzenet
Szekció neve “„EDD 3.0 or later required” üzenet”Az összeférhetőségi ellenőrzés megállítja az átvitelt, ha EDD 2.x-et talál a régi, bejegyzéstípus-alapú adatmodellel. A Migrator csak az EDD 3.x v3 táblaszerkezetét támogatja.
Megoldás: frissítsd az Easy Digital Downloadst 3.x-re. Az EDD 3.0 beépített átviteli eszközzel konvertálja a régi adatot a v3 táblákba. Futtasd le ezt előbb, majd térj vissza a FluentCart Migratorhoz.
Az átvitel félúton megakad
Szekció neve “Az átvitel félúton megakad”A megakadt átvitel szinte mindig szerveroldali időtúllépés: a PHP max_execution_time megszakította a kérést, vagy a tárhely folyamatfelügyelője leállította a hosszú szkriptet.
Megoldás a varázslóból: egyszerűen frissítsd az oldalt. A varázsló az utolsó befejezett kötegtől folytatja. Ha újra megakad, csökkentsd a Köteg mérete legördülő lista értékét (próbáld 50-nel vagy 25-tel), hogy minden köteg bőven beleférjen a tárhely időkorlátjába.
Megoldás a CLI-ből: a CLI teljesen megkerüli a HTTP-időtúllépést. Ha a varázsló folyton megakad, válts a CLI-re:
wp fluent_cart_migrator migrate_from_edd --allElfogyó memória
Szekció neve “Elfogyó memória”Nagy boltoknál a PHP-nak elfogyhat a memóriája a fizetések szakaszában.
Megoldás: ideiglenesen adj a PHP-nak több mozgásteret az átvitel futtatásához:
php -d memory_limit=1024M $(which wp) fluent_cart_migrator migrate_from_edd --allHa így is eléred a korlátot, az --all helyett futtasd külön a szakaszokat:
wp fluent_cart_migrator migrate_from_edd --productswp fluent_cart_migrator migrate_from_edd --paymentswp fluent_cart_migrator migrate_from_edd --recountMinden hívás saját memóriakörnyezetet kap.
„Customer not found” hibák
Szekció neve “„Customer not found” hibák”Ha a hibák „customer not found” üzenetet mutatnak, az EDD-rendelés olyan vásárlórekordra hivatkozik, amelyet töröltek az edd_customers táblából, de a rendelés metaadatában még megvan.
Megoldás: ha az elsődleges keresés elbukik, a Migrator a rendelés e-mail-címéből és címmetaadatából hoz létre vásárlót. Ha a rendelésnek egyáltalán nincs használható e-mail-címe, a fizetések szakaszának újrafuttatása előtt kézzel kell javítanod a rendelést az EDD-ben.
Az előfizetések számlázásszámai rosszak
Szekció neve “Az előfizetések számlázásszámai rosszak”Az újraszámolási szakasz után néha egy előfizetés számlázásszáma nem egyezik azzal, amit vártál.
Megoldás: ez általában azt jelenti, hogy a megújító rendeléseket az EDD-ben sosem kapcsolták a szülőelőfizetéshez (hiányzik a subscription_id). Az újraszámolás a parent_order_id alapján automatikusan összekapcsolja az árván maradt megújításokat, de csak akkor, ha van felderíthető kapcsolat. Futtasd újra kézzel az újraszámolást:
wp fluent_cart_migrator migrate_from_edd --recountHa a számok még mindig eltérnek, nézd meg a megújító rendeléseket a FluentCartban, és ellenőrizd, hogy a parent_id mezőjük megegyezik-e az eredeti előfizetés szülőrendelésének azonosítójával.
A licenc-webhelyaktiválások nem maradtak meg
Szekció neve “A licenc-webhelyaktiválások nem maradtak meg”Ha egy vásárló azt jelzi, hogy a licence hirtelen érvénytelen egy korábban aktivált webhelyen, ellenőrizd, hogy a webhely URL-je megmaradt-e az átvitelkor.
Megoldás: a Migrator normalizálja a webhely-URL-eket (kisbetű, protokoll nélkül, záró perjel nélkül). Ha a vásárló webhely-URL-jét szokatlanul tárolta az EDD (portszámmal, : karakterrel, nem ASCII karakterekkel), előfordulhat, hogy a normalizálás után nem egyezett. Nézd meg közvetlenül a FluentCart-licencrekord webhelyaktiválásait, és szükség esetén add hozzá kézzel a webhelyet.
Hiányzó előfizetés-UUID-k
Szekció neve “Hiányzó előfizetés-UUID-k”Néhány előfizetés UUID nélkül maradhat az átvitel után, ha a forrásrekord részben sérült volt. Futtasd a dedikált javítást:
wp fluent_cart_migrator fix_subs_uuidEz pótolja a hiányzó UUID-ket anélkül, hogy máshoz nyúlna.
Átvitel visszaállítása
Szekció neve “Átvitel visszaállítása”Ha egy tesztkörnyezeti átvitel problémás, és elölről szeretnéd kezdeni, a Migrator tiszta visszaállítási útvonalakat ad. Mindegyik a fejlesztői módhoz kötött: a wp-config.php-ban meg kell adnod a FLUENT_CART_DEV_MODE állandót, különben egyik útvonal sem működik. Ez szándékos: a visszaállítás pusztító, és az állandóhoz kötés lehetetlenné teszi, hogy véletlenül az admin felületről indítsd el.
Élesben soha ne futtass visszaállítást. A visszaállítás eldobja a FluentCart tábláit, és törli az átvitt bejegyzésadatot. Csak tesztelő, helyi vagy más módon elszigetelt környezetben használd.
A visszaállítás gombja a varázslóban
Szekció neve “A visszaállítás gombja a varázslóban”Ha a fejlesztői mód aktív, és a varázsló korábbi átvitelt észlel az oldalon, az átvitel előtti áttekintő képernyőn az „előző átvitel észlelve” értesítésben megjelenik egy átvitel-visszaállító hivatkozás. Rákattintva megerősítést kér, majd lefuttatja a visszaállítást. Éles oldalon (fejlesztői mód nélkül) ez a hivatkozás teljesen rejtett: az értesítés ettől még megjelenik, és megerősíti, hogy az előző futás befejeződött, csak a visszaállítási lehetőség nélkül.
Mit töröl a visszaállítás
Szekció neve “Mit töröl a visszaállítás”A visszaállítás alapos: mindent visszagörget, amit az átvitel létrehozott, hogy tiszta lappal indulhass.
Adatbázisséma:
- eldobja a FluentCart tábláit a
DBMigrator::refresh()hívással.
Törölt WordPress-beállítások:
__fluent_cart_edd3_migration_steps(a szakaszok haladása);_fluent_edd_failed_payment_logs(rendelésenkénti hibarekordok);__fluent_cart_migration_summary(összesítő számok).
Átvitt bejegyzésadat:
- törli az átvitel által létrehozott FluentCart-termékbejegyzéseket;
- eltávolítja az átviteli metaadatot az EDD-bejegyzésekről (
_fcart_migrated_id,__edd_migrated_variation_maps).
Az eredeti EDD-adatodhoz sosem nyúl. Csak a FluentCart-oldali rekordokat és a kétirányú leképezési metaadatot érinti.
reset és migrate_fresh
Szekció neve “reset és migrate_fresh”Mindkettő pusztító, de különböző szinten működnek.
| Parancs | Hatókör | Mikor használd |
|---|---|---|
wp fluent_cart_migrator migrate_from_edd --reset |
Törli az átvitt adatokat és az átviteli állapotot | Gyors visszaállítás a próbafuttatások között |
wp fluent_cart_migrator reset |
Ugyanaz, mint a --reset, önálló parancsként |
Ugyanaz a helyzet, másik belépési pont |
wp fluent_cart_migrator migrate_fresh |
Visszaállítás és sémafrissítés | Ha maga a FluentCart-séma megváltozott (bővítményfrissítéskor vagy fejlesztés közben) |
A legtöbb tesztkörnyezeti munkafolyamathoz elég a --reset vagy a reset. A migrate_fresh-hez akkor nyúlj, ha a FluentCart adatbázissémája frissült, és garantáltan tiszta lapot szeretnél.
Próbafuttatási munkafolyamat tesztkörnyezetben
Szekció neve “Próbafuttatási munkafolyamat tesztkörnyezetben”Egy tipikus próbahurok:
- Klónozd az éles oldalt a tesztkörnyezetbe, az EDD adatbázissal együtt.
- Kapcsold be a fejlesztői módot a tesztkörnyezet
wp-config.phpfájljában. - Telepítsd a FluentCartot és a Migrator bővítményt.
- Futtasd le a teljes átvitelt a varázslóval vagy a CLI-vel.
- Nézd át a termékeket, rendeléseket, előfizetéseket, licenceket és kuponokat.
- Jegyezd fel, mit kell a forrásadatban kitakarítani az éles futás előtt (duplikált vásárlók, törött termékek, régi rekordok).
- Állítsd vissza az átvitelt:
wp fluent_cart_migrator migrate_from_edd --reset. - Takarítsd ki a forrásadatot.
- Futtasd újra a teljes átvitelt.
- Ha a tesztkörnyezetben az eredmény megfelelő, ismételd meg az éles oldalon (kikapcsolt fejlesztői móddal).
A következmények nélküli ismétlés az egyszeri átvitelt szabályozott, nyomon követhető folyamattá teszi.
Megerősítő kérdések
Szekció neve “Megerősítő kérdések”Minden visszaállítási útvonal megerősítést kér az adatok törlése előtt, a CLI-ben és a varázslóban is. A CLI-kérdést a szokásos WP-CLI --yes kapcsolóval kihagyhatod:
wp fluent_cart_migrator migrate_from_edd --reset --yesEzt csak átnézett szkriptekben tedd. A megerősítés okkal van.
Gyakori kérdések
Szekció neve “Gyakori kérdések”A meglévő vásárlóknak kell tenniük valamit?
Szekció neve “A meglévő vásárlóknak kell tenniük valamit?”Nem. A fiókjaik, rendelési előzményeik, előfizetéseik és licenceik mind átkerülnek. A meglévő WordPress-belépési adataikkal lépnek be, és mindent ott találnak, ahol várják, csak most a FluentCartban az EDD helyett.
Az aktív előfizetések automatikusan megújulnak tovább?
Szekció neve “Az aktív előfizetések automatikusan megújulnak tovább?”Igen. Az előfizetési rekordok az átjáró előfizetés-azonosítóival (Stripe, PayPal) kerülnek át. Amíg ugyanazokat az átjáró-fiókokat kötöd újra a FluentCartban, a megújítások fennakadás nélkül folytatódnak. A PayPal Standard előfizetéseket a Migrator visszafelé kompatibilitási rétege kezeli.
A vásárlók szoftverlicencei tovább működnek?
Szekció neve “A vásárlók szoftverlicencei tovább működnek?”Igen. A Migrator elfogja az EDD-formátumú licenc-API hívásokat (aktiválás, kikapcsolás, érvényesség-ellenőrzés, frissítésellenőrzés), és a FluentCarton át irányítja őket. A vásárlóknak nem kell semmit frissíteniük vagy újrakonfigurálniuk.
Módosítja vagy törli az átvitel az EDD-adataimat?
Szekció neve “Módosítja vagy törli az átvitel az EDD-adataimat?”Soha. A Migrator csak olvassa az EDD adatbázistábláit. Az eredeti adatod érintetlen. Az egész átvitelt ellenőrizheted az EDD-áruházad ellen, mielőtt bármit átállítanál.
Mi van, ha az átvitel félúton megszakad?
Szekció neve “Mi van, ha az átvitel félúton megszakad?”Egyszerűen indítsd újra. A Migrator követi a saját haladását, kihagyja a kész szakaszokat, és a fizetések szakaszát pontosan abból a kötegből folytatja, ahol megállt. Nem keletkezik duplikált adat.
Mennyi ideig tart az átvitel?
Szekció neve “Mennyi ideig tart az átvitel?”A bolt méretétől függ:
- Kis boltok (néhány száz rendelés): két-öt perc.
- Közepes boltok (több ezer rendelés): tíz-harminc perc.
- Nagy boltok (több tízezer rendelés): harminc perctől pár óráig.
A CLI közepes és nagy boltoknál következetesen gyorsabb a varázslónál, mert elkerüli a HTTP-időtúllépéseket és a kötegenkénti oda-vissza kéréseket.
Futtathatom többször az átvitelt?
Szekció neve “Futtathatom többször az átvitelt?”Igen. Minden szakasz idempotens. A termékek újrafuttatása az azonosítótérkép alapján frissíti a már átvitt termékeket. A kuponok újrafuttatása kód alapján frissíti a meglévő kuponokat. Az újraszámolás mindig az aktuális adatokból számol újra. Az újrafuttatás nem okoz duplikált rekordot.
Mi a helyzet a WooCommerce vagy a SureCart átvitellel?
Szekció neve “Mi a helyzet a WooCommerce vagy a SureCart átvitellel?”A WooCommerce támogatott, a saját útmutatóját lásd az Átköltözés WooCommerce-ből fejezetben. A SureCart a forrásválasztóban még „hamarosan” jelzéssel látszik.
Hol kérhetek segítséget, ha elakadok?
Szekció neve “Hol kérhetek segítséget, ha elakadok?”- Nézd meg a sikertelen fizetések naplóját:
wp fluent_cart_migrator migrate_from_edd --log. - Futtasd a licencellenőrzést:
wp fluent_cart_migrator migrate_from_edd --verify_license. - Ha egy vásárló az átvitel után problémát jelez, olvasd el a Visszafelé kompatibilitás fejezetet.
- Nyiss támogatási jegyet a FluentCart-fiókodon keresztül.
Készült: