Att byta domän, gå från http till https eller flytta en sajt kräver att du uppdaterar URL:er överallt i databasen. Gör du det med rå SQL förstör du serialiserad data. wp search-replace gör det rätt. Men först måste du in på servern.
Anslut med SSH
SSH ger dig ett säkert skal på servern. Du behöver användarnamn, serveradress och ofta en port. Syntaxen är:
ssh dittkonto@din-server.se -p 22
# med en specifik nyckel:
ssh -i ~/.ssh/min-nyckel dittkonto@din-server.se -p 22
Väl inne, navigera till WordPress-roten (se del ett om cd och ls) tills du ser wp-config.php.
Torrkör alltid först
Regel nummer ett: kör aldrig en riktig search-replace utan att först se vad den skulle ändra. Flaggan --dry-run visar antalet träffar utan att röra något.
wp search-replace 'http://gammal.se' 'https://ny.se' --dry-run
Ser antalet rimligt ut? Ta bort --dry-run och kör på riktigt.
wp search-replace 'http://gammal.se' 'https://ny.se'
Varför WP-CLI och inte SQL
WordPress lagrar mycket data serialiserat — till exempel widget- och plugin-inställningar. Serialiserade strängar innehåller sin egen längd. En rå SQL-ersättning ändrar texten men inte längdtalet, och då blir datan trasig. wp search-replace förstår serialiserad data och räknar om längderna åt dig.
Bra flaggor att känna till
--all-tables— inkludera tabeller utan WordPress-prefix (t.ex. efter en migrering).--precise— långsammare men hanterar knepig serialiserad data säkrast.--skip-columns=guid— rör aldrig GUID-kolumnen; den ska inte ändras.--export=dump.sql— skriv resultatet till en fil istället för till databasen.
Ta en backup först — alltid
Innan du ändrar databasen, exportera den. Ett kommando, och du har en väg tillbaka:
wp db export backup-innan-replace.sql
Torrkör, ta backup, kör. I den ordningen — varje gång.
— Kepler Cloud
Hela WP-CLI-serien
- Terminalens grunder: hitta rätt med cd och ls
- SSH:a till din server och gör search-replace
- Uppdatera plugins med WP-CLI
- Uppdatera ditt tema med WP-CLI
- De viktigaste WP-CLI-kommandona
Vill du slippa sköta det själv? På Kepler ingår WP-CLI och SSH-åtkomst i Managed WordPress — vi håller core, teman och plugins uppdaterade åt dig. Och du kan alltid SSH:a in på din egen molnserver och köra kommandona ovan när du vill.
