Nytt domene regulært uttrykk (Regex) viderekobler i WordPress

Regex - Regulære uttrykk

De siste ukene har vi hjulpet en klient med å gjøre en kompleks migrering med WordPress. Klienten hadde to produkter, som begge har blitt populære til det punktet at de måtte dele virksomhetene, merkevaren og innholdet ut til separate domener. Det er ganske oppdrag!

Deres eksisterende domene blir liggende, men det nye domenet vil ha alt innhold med hensyn til det produktet ... fra bilder, innlegg, casestudier, nedlastinger, skjemaer, kunnskapsbase osv. Vi gjorde en revisjon og gjennomsøkte nettstedet for å sikre at vi ikke ville savner ikke en enkelt eiendel.

Når vi hadde fått det nye nettstedet på plass og i drift, var tiden inne for å trekke bryteren og sette den i live. Det betydde at alle nettadresser fra det primære nettstedet som tilhørte dette produktet, måtte omdirigeres til det nye domenet. Vi holdt de fleste baner konsistente mellom nettstedene, så det viktigste var å konfigurere viderekoblingene riktig.

Omdirigere plugins i WordPress

Det er to populære plugins tilgjengelig som gjør en god jobb med å administrere viderekoblinger med WordPress:

  • Omdirigering - kanskje det beste pluginet på markedet, med muligheter for vanlige uttrykk og til og med kategorier for å administrere viderekoblinger.
  • Rankmath SEO - Dette lette SEO-pluginet er et pust av frisk luft og lager listen min over Beste WordPress-plugins på markedet. Den har viderekoblinger som en del av tilbudet og vil til og med importere omdirigeringens data hvis du migrerer til den.

Hvis du bruker en Managed WordPress Hosting-motor som WPEngine, de har en modul for å håndtere omdirigeringer før personen noen gang treffer nettstedet ditt ... en ganske fin funksjon som kan redusere ventetid og overhead på hosting.

Og selvfølgelig kan du skriv omdirigeringsregler i .htaccess-filen på WordPress-serveren din ... men jeg vil ikke anbefale det. Du er en syntaksfeil fra å gjøre nettstedet ditt utilgjengelig!

Hvordan lage en Regex-viderekobling

I eksemplet jeg gir ovenfor kan det virke enkelt å bare gjøre en typisk viderekobling fra en undermappe til det nye domenet og undermappen:

Source: /product-a/
Destination: https://newdomain.com/product-a/

Det er imidlertid et problem med det. Hva om du har distribuerte lenker og kampanjer som har en søkestreng for kampanjesporing eller henvisninger? Disse sidene vil ikke omdirigere ordentlig. Kanskje URL er:

https://existingdomain.com/product-a/?utm_source=newsletter

Fordi du skrev et nøyaktig samsvar, omdirigerer den nettadressen ingen steder! Så du kan bli fristet til å gjøre det til et vanlig uttrykk og legge til et jokertegn i URL-en:

Source: /product-a/(.*)
Destination: https://newdomain.com/product-a/

Det er ganske bra, men det er fortsatt et par problemer. Først skal den matche hvilken som helst URL med / produkt-a / i den og omdirigere dem alle til samme destinasjon. Så alle disse banene vil omdirigere til samme destinasjon.

https://existingdomain.com/product-a/
https://existingdomain.com/help/product-a/
https://existingdomain.com/category/parent/product-a/

Vanlige uttrykk er imidlertid et vakkert verktøy. Først kan du oppdatere kilden din for å sikre at mappenivået er identifisert.

Source: ^/product-a/(.*)
Destination: https://newdomain.com/product-a/

Dette vil sikre at bare det primære mappenivået omdirigeres riktig. Nå for det andre problemet ... hvordan får du informasjon om spørringsstrengen fanget på det nye nettstedet hvis omdirigering ikke inkluderer den? Vel, vanlige uttrykk har også en flott løsning for det:

Source: ^/product-a/(.*)
Destination: https://newdomain.com/product-a/$1

Jokertegninformasjonen blir faktisk fanget opp og lagt til destinasjonen ved hjelp av variabelen. Så…

https://existingdomain.com/product-a/?utm_source=newsletter

Viderekobles riktig til:

https://newdomain.com/product-a/?utm_source=newsletter

Husk at jokertegnet vil gjøre det mulig å omdirigere hvilken som helst undermappe, så dette vil også være aktivert:

https://existingdomain.com/product-a/features/?utm_source=newsletter

Vil omdirigere til:

https://newdomain.com/product-a/features/?utm_source=newsletter

Selvfølgelig kan vanlige uttrykk bli langt mer komplekse enn dette ... men jeg ville bare gi et raskt eksempel på hvordan du setter opp en jokertegn-regex-viderekobling som sender alt rent til et nytt domene!

2 Kommentarer

  1. 1

Hva tror du?

Dette nettstedet bruker Akismet for å redusere spam. Lær hvordan kommentaren din behandles.