Verktøykasse av Smart WordPress Utvikler File Splitter og Search & Replace

I introduksjonsdelen av denne serien nevnte jeg at "WordPress-verktøy" ikke kan defineres i et bestemt medium: Et WordPress-verktøy kan være i form av et WordPress-plugin, en enkelt PHP-fil, et nettsted eller en desktop-applikasjon.

I denne delen av "Toolbox of the Smart WordPress Developer" -serien skal vi gå gjennom to forskjellige verktøy i to forskjellige typer medier: WXR File Splitter (som et skrivebordsprogram) og WP Serialized Search & Replace (som en PHP-fil).

Splitting Store Backup-filer

Hvis du er freelance webdesigner eller jobber hos et webdesignbyrå, og du leser denne artikkelen, er det sjansene for at du regelmessig installerer WordPress på servere, så du vet litt (eller mye) om migrering av WordPress. Og hvis du er en av de heldige få WordPress-utviklerne, har du kanskje hatt en klient med et stort nettsted som må migreres mellom to servere.

Selv om det finnes dusinvis av forskjellige teknikker og alternativer der ute for å flytte WordPress-installasjoner, kan vi i noen tilfeller ikke ha noe annet enn den mest pålitelige: Backup (WordPress Extended RSS (WXR)). 

Hva om kunden din gir deg den gamle, crappy shared serverens WP-Admin-legitimasjon og ingenting annet? Hva om det nye hip-WordPress-pluginet ikke kan migrere fra den gamle serveren til den nye? Når de mørke tider kommer, må du være klar og forberedt.

Hvis WXR-sikkerhetskopien er stor (og jeg mener gigabyte av enorm), vil WXR File Splitter være den som dashes bort tårene dine.

Arbeider med WXR File Splitter

Dårlige nyheter først: Dette verktøyet, som fungerer i Windows, er gammelt. Super gammel. Og det virker ikke. Jeg mener at det ikke fungerer med nyere WordPress-versjoner (de to siste årene, sannsynligvis). jeg tuller ikke.

Men selvfølgelig skal jeg ikke skrive om et verktøy som er helt ubrukelig. Så den gode nyheten er at det er ekstremt enkelt å få det til å fungere så enkelt at du bare trenger å gjøre et raskt søk og erstatte i sikkerhetskopi filen.

La oss gå over trinnene:

  1. Last ned verktøyet her (før den nettsiden går ned også).
  2. Last ned backupfilen fra administrasjonspanelet Verktøy> Eksporter side.
  3. Åpne backupfilen din og gjør alt koder med store bokstaver (ved å søke og erstatte åpningskodene bare - det er ikke nødvendig å gjøre det samme med koder) og lagre filen.
  4. Åpne WXRsplit.exe fil.
  5. Angi størrelsen på utdatafilene (og antall filer beregnes auto).
  6. Klikk på Split filer knapp.

Ildprøven? Vel, det burde være: Hvis klienten overlever administrasjonspanelet på et nettsted som er vert for servere som brukes i andre verdenskrig, bør løsningen på ditt migreringsproblem ikke være enkelt. Ikke sant?

Åh, og det er en Mac OS X-versjon utviklet av en uavhengig utvikler, men jeg har ikke hatt sjansen til å prøve den (og har en nervøs sammenbrudd på grunn av det) fordi jeg ikke eier en Mac.

Nå, la oss gå videre til vårt andre verktøy: WP Serialized Search & Replace.

Sikker søk og erstatt operasjoner i WordPress-databasen med WP Serialized Search & Replace

Jeg jobbet på et webdesignbyrå en gang tilbake i 2012. På min første dag gjennomgikk jeg noen tidligere prosjekter for å se hvordan vi jobbet med våre kunder. Jeg så at når vi landet en klient, begynte vi å bygge deres nettside i et underdomene i vårt eget merkedom og viste vårt arbeid til kunden når det var nødvendig. og når alt ble satt (inkludert å få den siste betalingen), flyttet vi nettstedet til klientens domene.

Den dagen foreslo jeg umiddelbart å endre denne arbeidsflyten med våre kunder, fordi det avtrakk vårt arbeid; men sjefen avviste mitt forslag på grunn av "økonomiske årsaker". Han forklarte at tidligere klienter hadde forsøkt å stjele vårt arbeid rett før den siste betalingen, og det var derfor vi jobbet som dette. "Nonsens", trodde jeg, men han var jo sjefen.

Mitt første arbeid var en høy prioritet klient som trengte nettsiden så fort som mulig. (Heldigvis ble innholdet sendt på forhånd.) Jeg installerte raskt WordPress til et underdomen på nettstedet vårt og aktiverte temaet (valgt av klienten) sammen med noen plugins. Jeg justerte alle innstillingene til kjernen, temaet og pluginene, og begynte deretter å jobbe med innholdet.

Da jeg var ferdig (og imponerte sjefen ved å fartsfylle en hel nettside på mindre enn fire timer), viste vi nettstedet til klienten og fikk umiddelbart en godkjenning og en melding som sier at nettstedet skal være oppe i morgen som de skulle besøke en expo.

Med tillit bestemte jeg seg for å gjøre litt overtid og flytte nettsiden den dagen. Jeg lastet ned alle filene fra FTP og i stedet for å gjøre en rask WXR-sikkerhetskopiering, gjorde jeg en SQL-sikkerhetskopiering i phpMyAdmin. Etter å ha endret webadressene til webområdet i wp_options bord, lastet jeg opp filene og sendte inn SQL til klientens nettside database. Å, og jeg slette raskt alt i utviklingsunderdomene.

Da jeg la merke til at de fremhevede bildene ble ødelagt, gjennomgikk jeg SQL-filen og så at de alle fortsatt hadde nettadresser fra underdomenet til eget nettsted. Jeg gjorde et raskt søk og erstatt, lagret endringene i sikkerhetskopien, og overskriver databasen med den nye SQL-en. Da jeg besøkte nettstedet, så jeg ikke bare at bildene fortsatt var ødelagte, men også at alle innleggene var borte, selv om de fortsatt var i databasen.

Det er dagen jeg lærte om "serialiserte oppføringer". (Jeg kom også hjem om midnatt, fordi jeg jobbet resten av dagen med å bygge den samme nettsiden igjen på klientens server.) Fra denne erfaringen lærte jeg at serielliserte oppføringer lagres med karaktertall, og hvis tegnetallet er ikke Det stemmer ikke med strengen, men WordPress sletter oppføringen helt og holdent.

Så, hvordan gjør vi et søk og erstatt i WordPress, inkludert serielliserte oppføringer? Med WP Serialized Search & Replace, selvfølgelig.

Bruke WP Serialized Search & Replace

WP Serialized Search & Replace er mer som en bærbar verktøy: Du laster bare opp mappen (inn i WordPress installasjonsmappen) og kjører index.php fil. Så, hvis dine WordPress-filer er i mywebsite.com/wp/ katalog, bør du kjøre verktøyet fra mywebsite.com/wp/srtool/index.php (navnet på verktøyets mappe spiller ingen rolle, så du kan endre mappenavnet hvis du vil).

Etter at du har kjørt verktøyet, ser du fem seksjoner:

  1. Søk / Erstatt: Har to inngangsfelt for "søk" og "erstatt" -felt, og en avmerkingsboks for å slå på vanlige uttrykk.
  2. database: Har fire inntastingsfelter for databasens legitimasjon. Verktøyet fyller automatisk på disse feltene ved å sjekke wp-config.php fil.
  3. bord: Som standard vil verktøyet fungere i alle databasetabeller, men hvis du vil, kan du velge individuelle tabeller ved å klikke på "Velg tabeller" -radio, eller ved å fylle de to inntastingsfeltene for å ekskludere eller inkludere tabeller.
  4. handlinger: Det er fem handlinger i denne delen: "Oppdater detaljer" kobler seg til databasen dersom du endrer databasegodkjenningene, "Dry Run" simulerer søke- og erstattingsprosessen, "Live Run" kjører faktisk søk ​​og erstattingsprosessen, "Konverter til InnoDB" konverterer databasemotoren til InnoDB, og "Konverter til UTF8 Unicode" konverterer databasetabells tegnsett til Unicode.
  5. Slett: Sletter verktøyet, hele mappen.

Jeg må si, jeg likte designen, men jeg tror dette verktøyet ville fungere bedre som et WordPress-plugin.

Wrapping Up for Today

Vi tok opp tempoet litt for denne delen, og gikk over to små WordPress-verktøy i ett enkelt innlegg. Jeg tror de begge fortjener kreditt, til tross for at de er litt utenfor radaren i WordPress-fellesskapet.

Hva synes du om disse verktøyene? Kjenner du bedre alternativer? Del dine tanker og erfaringer med oss ​​i kommentarfeltet nedenfor. Og hvis du likte artikkelen, ikke glem å dele den med vennene dine!

Se deg i neste del der vi snakker om WordPress GitHub Plugin Updater, et flott verktøy for å håndtere oppdateringsprosessen for WordPress-plugins som er vert på GitHub.