Verktygslåda i Smart WordPress-utvecklaren File Splitter och Search & Replace

I introduktionsdelen av denna serie nämnde jag att "WordPress-verktyg" inte kan definieras i ett specifikt medium: Ett WordPress-verktyg kan vara i form av ett WordPress-plugin, en enda PHP-fil, en webbplats eller till och med en stationär applikation.

I den här delen av "Toolbox of the Smart WordPress Developer" -serien ska vi gå igenom två olika verktyg i två olika typer av medium: WXR File Splitter (som skrivbordsapplikation) och WP Serialized Search & Replace (som en PHP-fil).

Dela upp stora säkerhetskopior

Om du är en frilans webbdesigner eller arbetar på en webbdesignbyrå, och du läser den här artikeln, chansar du regelbundet att installera WordPress på servrar, så du vet lite (eller mycket) om migrering av WordPress. Och om du är en av de lyckliga få WordPress-utvecklarna kanske du har haft en klient med en enorm webbplats som måste migreras mellan två servrar.

Medan det finns dussintals olika tekniker och alternativ där ute för att flytta WordPress-installationer, kan vi i vissa fall inte ha någon annan än den mest tillförlitliga: WordPress Extended RSS (WXR) säkerhetskopior. 

Vad händer om din klient ger dig den gamla, galna delade serverns WP-Admin-uppgifter och inget annat? Vad händer om det nya nya WordPress-pluginet inte kan migrera från din gamla server till den nya? När de mörka tiderna kommer, måste du vara redo och förberedd.

Om WXR-säkerhetskopian är enorm (och jag menar gigabyte av enorm), WXR File Splitter kommer att bli den som dashes bort dina tårar.

Arbetar med WXR File Splitter

Dåliga nyheter först: Det här verktyget, som fungerar i Windows, är gammalt. Super gammal. Och det fungerar inte. Jag menar att det inte fungerar med de nya WordPress-versionerna (för de senaste två åren, förmodligen). jag skämtar inte.

Men självklart kommer jag inte att skriva om ett verktyg som är helt värdelöst. Så den goda nyheten är det är extremt lätt att få det att fungera så enkelt att du bara behöver göra en snabbsökning och ersätt i din backupfil.

Låt oss gå över stegen:

  1. Ladda ner verktyget här (innan den webbplatsen går ner också).
  2. Ladda ner din backupfil från din administratörspanel Verktyg> Exportera sida.
  3. Öppna din backup-fil och gör alla dina taggar stora bokstäver (genom att bara söka och ersätta öppnings taggarna - behöver inte göra samma sak med taggar) och spara filen.
  4. Öppna WXRsplit.exe fil.
  5. Ange storleken på utdatafilerna (och antalet filer kommer att beräknas auto).
  6. Klicka på Dela filer knapp.

Prövning? Tja, det borde vara: Om din klient överlåter adminpanelen på en webbplats som är värd på servrar som används under andra världskriget, bör lösningen på ditt migrationsproblem inte vara lätt. Höger?

Åh, och det finns en Mac OS X-version som utvecklats av en icke-närstående utvecklare, men jag har inte haft chansen att prova det (och har en nervös uppdelning på grund av det) för att jag inte äger en Mac.

Nu går vi vidare till vårt andra verktyg: WP Serialized Search & Replace.

Säker sökning och ersätt operationer i din WordPress-databas med WP Serialized Search & Replace

Jag arbetade hos ett webbdesignbyrå en gång tillbaka i 2012. På min första dag granskade jag några tidigare projekt för att se hur vi arbetade med våra kunder. Jag såg att när vi landade en klient började vi bygga sin hemsida i en underdomän av vår egen varumärkesdomän och visade vårt arbete till kunden när det var nödvändigt. och när allt var inställt (inklusive att få den senaste betalningen) flyttade vi webbplatsen till klientens domän.

Den dagen föreslog jag omedelbart att ändra detta arbetsflöde med våra kunder, eftersom det saktade ner vårt arbete. men chefen avvisade mitt förslag på grund av "ekonomiska skäl". Han förklarade att tidigare kunder hade försökt att stjäla vårt arbete strax innan den senaste betalningen, och det var därför vi arbetade så här. "Nonsens" trodde jag, men han var ju chefen.

Mitt första arbete var en hög prioritetsklient som behövde webbplatsen så fort som möjligt. (Lyckligtvis skickades innehållet i förväg.) Jag installerade snabbt WordPress till en underdomän på vår hemsida och aktiverade temat (valt av klienten) tillsammans med några plugins. Jag justerade alla inställningar för kärnan, temat och plugins och började sedan arbeta med innehållet.

När jag var klar (och imponerade chefen genom att snabbt måla en hel hemsida på mindre än fyra timmar) visade vi webbplatsen till kunden och fick genast ett godkännande och ett meddelande som säger att webbplatsen ska vara igång i morgon som de skulle besöka en expo.

Med självförtroende bestämde jag mig för att göra lite övertid och flytta webbplatsen den dagen. Jag hämtade alla filer från FTP och istället för att göra en snabb WXR-säkerhetskopia gjorde jag en SQL-säkerhetskopia i phpMyAdmin. Efter att ha ändrat webbadresserna till webbplatsen i wp_options tabellen, laddar jag upp filerna och skickade SQL till klientens hemsida databas. Åh, och jag raderade snabbt allt i utvecklingsunderdomänen.

När jag märkte att de presenterade bilderna bröts, granskade jag SQL-filen och såg att de alla fortfarande hade webbadresser från vår egen webbplatss underdomän. Jag gjorde en snabbsökning och ersättning, sparade ändringarna i säkerhetskopian och överstryka databasen med den nya SQL. När jag besökte webbplatsen såg jag inte bara att bilderna fortfarande var brutna, men också att alla inlägg var borta, trots att de fortfarande var i databasen.

Det är den dagen jag lärde mig om "seriella poster". (Jag kom också hem hemma vid midnatt, för jag arbetade resten av dagen med att bygga samma webbplats igen på klientens server.) Från den erfarenheten lärde jag mig att serialiserade poster lagras med teckenräkning, och om tecknet räknas t överensstämmer med strängen, lämnar WordPress inlägget helt och hållet.

Så, hur gör vi en sökning och ersätt i WordPress, inklusive serialiserade poster? Med WP Serialized Search & Replace, naturligtvis.

Använda WP Serialized Search & Replace

WP Serialized Search & Replace är mer som en bärbar verktyg: Du laddar bara upp mappen (i din WordPress installationskatalog) och kör index.php fil. Så, om dina WordPress-filer finns i mywebsite.com/wp/ katalog, bör du köra verktyget från mywebsite.com/wp/srtool/index.php (namnet på verktygets mapp spelar ingen roll så att du kan ändra mappnamnet om du vill).

När du har kört verktyget ser du fem avsnitt:

  1. Sök / Ersätt: Har två inmatningsfält för "sök" och "ersätt" fält och en kryssruta för att aktivera reguljära uttryck.
  2. Databas: Har fyra inmatningsfält för dina databasuppgifter. Verktyget fyller automatiskt i dessa fält genom att markera wp-config.php fil.
  3. tabeller: Som standard fungerar verktyget i alla databastabeller, men om du vill kan du välja enskilda tabeller genom att klicka på radioboxen "Välj tabeller" eller genom att fylla i de två inmatningsfälten för att utesluta eller inkludera tabeller.
  4. Åtgärder: Det finns fem åtgärder i det här avsnittet: "Uppdatera detaljer" återansluts till databasen om du ändrar databasuppgifter, "Dry Run" simulerar sök- och ersättningsprocessen. "Live Run" körde faktiskt sök- och ersättningsprocessen "Konvertera till InnoDB" konverterar databasmotorn till InnoDB och "Konvertera till UTF8 Unicode" omvandlar databasstabels teckenuppsättningar till Unicode.
  5. Radera: Tar bort verktyget, hela mappen.

Jag måste säga att jag gillade designen, men jag tror att det här verktyget skulle fungera bättre som ett WordPress-plugin.

Wrapping Up för idag

Vi tog upp takten lite för den här delen och gick över två små WordPress-verktyg i ett enda inlägg. Jag tror att de båda förtjänar krediter, trots att de är lite av radarn i WordPress-samhället.

Vad tycker du om dessa verktyg? Känner du till bättre alternativ? Dela dina tankar och erfarenheter med oss ​​i avsnittet Kommentarer nedan. Och om du gillade artikeln, glöm inte att dela den med dina vänner!

Vi ses i nästa del där vi talar om WordPress GitHub Plugin Updater, ett bra verktyg för att hantera uppdateringsprocessen för WordPress-plugins som finns på GitHub.