Et år eller så siden, hadde jeg en hosting katastrofe. Serveren min hosting leverandør ble hacket og det tok dem over en uke å identifisere hva problemet var og fikse det.
I mellomtiden klarte mine kunders nettsteder alle omdirigere til et datingside, og jeg fikk telefonsamtaler som krever at jeg fikse ting med en gang.
Jeg måtte handle raskt. Men i stedet for å bare flytte alle nettstedene som de var til en ny server (og en ny hostingleverandør, kan jeg legge til) bestemte jeg meg for å flytte nettstedene på en måte som ville gjøre det lettere for meg å flytte dem alle igjen hvis Jeg trengte å. Så flyttet jeg en rekke nettsteder med sin egen WordPress-installasjon i mitt eksisterende Multisite-nettverk, som jeg allerede hadde flyttet til den nye serveren.
Å flytte enkeltsteder til et Multisite-nettverk er mer komplisert enn å bare flytte det til en ny enkeltinstallasjon, men det er ikke umulig. I denne opplæringen viser jeg to metoder for å gjøre det: bruker plugins, og manuelt.
For å følge denne opplæringen må du:
Hvis nettstedet ditt ikke har mye konfigurasjon opprettet via plugin-, tema- eller nettstedinnstillingsskjermbilder, kan det hende du klarer å flytte den med WordPress Importer-plugin. Hvis nettstedet har widgets, kan du kopiere innstillingene sine ved hjelp av plugin for Widget Settings Importer / Exporter.
Men hvis du har lagt til mye skreddersydd konfigurasjon ved hjelp av innstillinger eller alternativer skjermbilder eller temaet tilpasser, vil ingen av disse bli kopiert på tvers av. I dette tilfellet må du gjøre et manuell trekk.
For full detaljer om hvordan du bruker disse pluginene for å flytte nettstedet ditt, se min tidligere opplæring om bruk av plugins for å flytte et WordPress-nettsted. Prosessen er akkurat det samme for å flytte et nettsted til et Multisite-nettverk som det er for et enkelt nettsted.
Nettstedet du flytter til Multisite, har tre komponenter som du må kopiere fra det gamle nettstedet:
wp-innhold / opplasting
i ditt gamle nettsted, mens du er i multisite-installasjonen, må de gå inn wp-content / uploads / nettsteder / XX
, hvor XX
er ditt nye nettsteds ID i nettverket (mer av det snart)Merk: Hvis Multisite-nettverket du flytter nettstedet ditt til, ble opprettet før WordPress 3.5, vil det ikke ha en sider
mappe. I stedet får du en blogs.dir
mappe inn wp-innhold
med alle opplastingsfilene for subsites. Dette vil ha en nummerert mappe for nettstedet du lager, som du kopierer filene til i stedet. Jeg vil dekke dette mer detaljert nedenfor.
Før du gjør noe slikt, er det en god ide å sikkerhetskopiere nettstedet du flytter og Multisite-installasjonen. Bruk din foretrukne backup plugin, eller en kombinasjon av FTP og phpMyAdmin hvis du foretrekker å jobbe manuelt.
Du bruker denne sikkerhetskopien til å kopiere de relevante filene til det nye nettstedet ditt, og det gir deg også trygghet i tilfelle du har noen problemer.
Før du kan overføre det gamle nettstedet til Multisite, må du opprette et nytt, tomt nettsted i nettverket. Senere importerer du alt fra det gamle nettstedet ditt til dette nye nettstedet.
Opprett nettstedet på vanlig måte, ved å gå til Nettverksadministrator> Nettsteder, klikke Legg til ny, og angi detaljene til ditt nye nettsted.
Hvert nettsted i et Multisite-nettverk har sin egen unike numeriske ID. Dette brukes til å identifisere mappen i wp-content / uploads / nettsteder
katalog (eller wp-innhold / blogs.dir
hvis ditt Multisite-nettverk er eldre, se ovenfor), og også å identifisere databasetabellene for dette nettstedet.
Finn dette ved å gå til Nettverksadministrator> Nettsteder og deretter velge Redigere alternativ for nettstedet du nettopp har opprettet. Nettadressen WordPress tar deg til å gi deg nettstedets ID. Nettadressen skal være i skjemaet http://mynetwork.com/wp-admin/network/site-info.php?id=XX
.
XX
er IDen til nettstedet ditt, og vil være navnet på mappen som inneholder sine filer, samt prefikset for databasetabellens navn.
Identifiser pluginene som brukes av ditt gamle nettsted, og installer dem enten (hvis de ikke allerede er installert) i WordPress-nettverket via plugins skjerm eller last opp dem til wp-innhold / tillegg
fra sikkerhetskopien du tok av ditt gamle nettsted.
Gjør det samme for alle temaer nettstedet ditt bruker - kopier dem fra sikkerhetskopien din til wp-content / themes
katalog over nettverket ditt, eller bare installer dem på nytt.
Merk: Temaer og plugins lagres på ett sted for alle nettsteder i et Multisite-nettverk. Du trenger ikke å lagre dem et sted som er spesifikt for det nye nettstedet..
Kopier opplastingene fra det gamle nettstedet til det nye. Filene du må kopiere er i wp-innhold / opplasting
på ditt gamle nettsted. Hvor du laster opp dem, vil avhenge av hvor gammel nettverket er:
sider
mappe inn wp-innhold / opplasting
. Finn undermappen med nettstedets ID og last opp innholdet til wp-innhold / opplasting
mappe fra det gamle nettstedet ditt til det.blogs.dir
mappe, som også inneholder en mappe med nettstedets ID. Det vil da ha en undermappe kalt filer
. Kopier innholdet i wp-innhold / opplasting
mappe fra ditt gamle nettsted til filer
mappe.Merk: Du må kanskje slette noen mapper som WordPress har opprettet for det nye nettstedet ditt i sider
eller blogs.dir
mappe for å unngå sammenstøt.
Når du har gjort alt dette, aktivere noen temaer og plugins i ditt nye nettsted.
WordPress Multisite bruker separate databasetabeller for hvert nettsted i nettverket. I stedet for å lagre innleggene for nettstedet ditt i wp_posts
, for eksempel lagrer den den inn wp_XX_posts
, hvor XX
er nettstedet ditt ID.
Men det bruker ikke separate tabeller for brukerdata, dette lagres i ett wp_users
og wp_usermeta
bord for hele nettverket.
Dette betyr at du må kopiere alle tabellene fra det gamle nettstedet ditt, bortsett fra de to brukertabellene, og du må endre navnene på filene du kopierer. Dessverre må du opprette brukerne manuelt på det nye nettstedet ved hjelp av WordPress-administrasjonsskjermene.
For mer informasjon om Multisite og database tabeller, se denne opplæringen på WordPress-databasen og Multisite.
I PhpMyAdmin For ditt gamle nettsted, klikk på Struktur fane. Velg deretter alle tabellene bortsett fra wp_users
og wp_usermeta
. Et eksempel er vist nedenfor.
Klikk på Med valgt: dropdown boksen, velg Eksport og så Gå. Dette vil laste ned a sql
filen til maskinen din med innholdet i disse tabellene.
Som jeg nevnte ovenfor, kan du ikke kopiere wp_users
og wp_usermeta
tabeller da disse vil bli duplisert i Multisite-nettverket.
Før du begynner å importere tabellene du nettopp har lastet ned, sett opp de samme brukerne på det nye nettstedet ditt som du hadde i den gamle. Merk at de vil ha forskjellige IDer i multisite-nettverksdatabasen enn de gjorde på det gamle nettstedet, noe som kan føre til noen unøyaktigheter ved å tildele innlegg til forfattere. Du må rette opp dette på slutten, som jeg vil dekke senere.
Lag en kopi av sql
fil som er lastet ned til maskinen din, og gi den et navn som forteller deg hva det er (for eksempel ved å legge til kopiere
til navnet sitt). Åpne den i en kodeditor.
Endre alle forekomster av nettstedets domene i Multisite-nettverket til det nye Multisite-domenet. For eksempel hvis nettstedet ditt var på http://mysite.com
, endre den til http://network.com/mysite
. Hvis nettverket ditt bruker underdomener, må du endre det til http://mysite.network.com
. Lagre filen din.
Databasetabellene på ditt nye Multisite-nettsted vil kreve prefikser for nettsted-IDen. I din sql
fil, erstatt alle forekomster av wp_
med wp_XX_
, hvor XX
er nettstedet ditt ID.
Lagre nå sql
fil.
Nå som du har installert temaer og plugins og eksportert dataene dine, må du importere databasetabellene til multisite-nettverket.
Før du laster opp tabellene fra det gamle nettstedet ditt, må du slette de duplikatene som WordPress har lagt til på det nye nettstedet ditt.
I phpMyAdmin, slipp noen tabeller som er prefiks med wp_XX_
, hvor XX
er nettstedet ditt ID. Disse vil inneholde følgende, men kan også inkludere tabeller opprettet av plugins:
wp_XX_commentmeta
wp_XX_comments
wp_XX_links
wp_XXoptions
wp_postmeta
wp_posts
wp_terms
wp_term_relationships
wp_term_taxonomy
Velg de tabellene (pluss noen wp_XX_
tabeller opprettet av plugins), klikk på Med valgt: rullegardinmenyen, velg Miste og så Ja.
Eksempelet nedenfor inneholder en ekstra tabell som er opprettet av et plugin:
Viktig: Hvis ditt gamle nettsted hadde databastabeller som ble opprettet av plugins, må du installere de samme programtilleggene på nettverket før du importerer den nye databasen. Importen vil inkludere disse tabellene, som ikke fungerer hvis ikke pluginet er installert.
Neste last opp databasen du har redigert:
Fjern nettleserens cache. Dette unngår eventuelle problemer du måtte ha hvis nettleseren har cached innhold fra det gamle nettstedet.
Logg deg nå på WordPress admin for den eksterne siden. Hvis du flyttet brukertabellene over, vil innloggingsdetaljerne være de samme som for ditt gamle nettsted, men hvis du ikke gjorde det, blir disse alt du angav da du installerte WordPress på den nye plasseringen..
Besøk Permalinks skjerm for det nye nettstedet ditt og slå ganske permalinks tilbake på.
Se på hovedmenyen innlegg skjerm og sjekk hvilke forfattere som har blitt tildelt dem - det er en god sjanse for at dette vil gå galt. Du kan endre dette i bulk:
Redigeringsruten vises i skjermbildet:
Hvis nettstedet ditt har sider og egendefinerte innleggstyper, gjentar du det ovenfor for dem.
Sjekk at alle koblingene fungerer ok, og at widgets og plugins oppfører seg som de burde. Hvis ikke, kan du enten gå tilbake gjennom prosessen, bruke sikkerhetskopiene der du trenger, eller bare sette opp plugins og widgets fra ditt nye nettsted.
Hvis du vil beholde det samme domenenavnet du brukte til nettstedet da det var i en enkelt nettstedinstallasjon, kan du bruke domenekartleggingstillegget for å gjøre dette. Installer pluginet, aktiver det for nettverket ditt, og følg instruksjonene gitt av plugin for å sette opp det. Dette vil innebære å gjøre endringer i domenets DNS-innstillinger.
Flytte et nettsted til et WordPress Multisite-nettverk fra egen installasjon, er ikke noe du kan gjøre raskt eller uten å være veldig grundig, men det er mulig, og jeg har gjort det noen ganger. Bare følg trinnene som er oppgitt her, og sørg for at du har sikkerhetskopier i tilfelle problemer, og du burde finne det fungerer greit for deg.