Masside leidmine ja asendamine WordPressi andmebaasides - lihtne viis
Seal on mitu korda, kus me peame URL-ide muutmine meie WordPressi veebisaidi andmebaasis. Näiteks peame seda tegema pärast WordPressi andmebaasi ühest saidist, nt. alates http://acme.com
kaugtööstusettevõttesse http://acme.dev
kohaliku arengu veebisait meie arvutis.
WordPress.org-is on palju pluginaid, nagu WP DBManager ja WP Migrate DB, ning on ka mitmeid kolmanda osapoole tööriistu, mis võimaldavad teil impordi andmebaas lihtsalt. Keeruline osa peab muuta iga URL-i eksemplari andmebaasi sees.
Pärast andmebaasi migreerimist sisestatakse selle sisemised URL-id ikka viitavad vanale saidile, sel juhul on acme.com
. Võite leida vana URL-i wp_options
tabeli väärtuseks siteurl
ja Kodu
ja see on tõenäoliselt ka andmebaasi mitmetes teistes ridades ja tabelites. Need vanad URL-id võivad teie saidi korralikult töötamise takistada, nii et peate seda tegema muutke need uueks URL-iks, meie näites acme.dev
.
Siis pääsete meie arenduskohale aadressil acme.dev
lihtsalt juhib tühjale lehele.
Niisiis, kuidas me muudame kõiki neid URL-e andmebaasis?
SQL-päringu käivitamine
Tavaliselt käivad inimesed järgmisel SQL päringul, mis asendab väärtusi siteurl
ja Kodu
Valikud wp_options
tabel.
UPDATE wp_options SET option_value = asendage (option_value, 'http://acme.com', 'http://acme.dev') WHERE valiku_nimi = 'kodu' või valik_nimi = 'siteurl';
Seejärel kasutavad nad teist SQL-päringut, et asendada kõik URL-i esinemised wp_posts
tabelis, nimelt post_content
iga rea veerg.
UPDATE wp_posts SET post_content = asenda (post_content, 'http://acme.com', 'http://acme.dev');
Nende päringute käivitamine on teostatav lahendus, kuid samal ajal ei ole seda mugav teha. See võib olla isegi närvivastane, nähes, kuidas andmebaas võib haywire'i muuta, kuna päring on lihtne.
WP-CLI kasutamine
Teine tee, mida saame teha ja mida ma leian olevat mugavam alternatiiv, on WP-CLI käsurea kasutamine. See tähendab, et peate installima WP-CLI.
Eeldades, et olete installinud WP-CLI ja teil on wp
käsk, mis on kättesaadav alias, liikuge kataloogi, kus teie WordPressi saidifailid asuvad.
Seejärel käivitage järgmine käsk:
wp otsing-asendage 'http://acme.com' http://acme.dev
Esimene parameeter, 'http://acme.com'
, kas vana kirje asendatakse teise nimega, 'http://acme.dev'
.
Käsurida otsib kõik andmebaasi tabelid, mitte ainult post_content
veerg ja wp_options
tabel ja asendada iga juhtum sisestamise käsk läbi parameetrite.
Nagu näete ülaltoodud pildil, on tehtud 225 asendajat. Ja me oleme seda teinud lihtsa käsuliini kaudu.
Ma arvan, et väärib märkimist, et me saame seda kasutada wp otsingu asendamine
käsk, mitte ainult URL-ide asendamiseks, vaid ükskõik milline väärtus salvestatud ka andmebaasi. Me võime ka operatsiooni teatud tabelis piirata, liigutades tabeli nime neljandaks parameetriks järgmiselt:
wp otsing-asendada '.jpg ".webp' wp_posts
Ülaltoodud käsu käivitamisel otsib see ainult wp_posts
, tabel, mis salvestab meie sisu - postitused, lehed jne - ja asenda pildilaiend .jpg
kuni .webp
.
WP-CLI teeb SQL-operatsiooni keerulisemaks, see on intuitiivsem ning saate sellega paremini töötada. Kui soovite oma käske peenhäälestada, siis vaadake WP-CLI dokumentatsiooni, mis annab teile nimekirja võimalustest, mis võimaldavad täiustatud toimingut wp otsingu asendamine
käsk.