Přesměrování nového regulárního výrazu domény (Regex) na WordPress

Regex - regulární výrazy

Posledních několik týdnů pomáháme klientovi s komplexní migrací pomocí WordPressu. Klient měl dva produkty, z nichž oba se staly populárními do té míry, že museli rozdělit firmy, branding a obsah do samostatných domén. Je to docela závazek!

Jejich stávající doména zůstává na místě, ale nová doména bude mít veškerý obsah s ohledem na tento produkt ... od obrázků, příspěvků, případových studií, stahování, formulářů, znalostní báze atd. Provedli jsme audit a procházeli jsme web, abychom zajistili, že nebudeme Nechybí mi ani jedno aktivum.

Jakmile jsme nový web zprovoznili a zprovoznili, nastal čas vytáhnout přepínač a uvést jej do provozu. To znamenalo, že všechny adresy URL z primárního webu, které patřily k tomuto produktu, musely být přesměrovány do nové domény. Většinu cest jsme udržovali konzistentní mezi weby, takže klíčem bylo správné nastavení přesměrování.

Přesměrovat doplňky ve WordPressu

K dispozici jsou dva populární pluginy, které skvěle zvládají správu přesměrování pomocí WordPress:

  • Přesměrování - možná nejlepší plugin na trhu se schopnostmi regulárního výrazu a dokonce i kategoriemi pro správu vašich přesměrování.
  • Rankmath SEO - tento lehký SEO plugin je závan čerstvého vzduchu a dělá můj seznam Nejlepší pluginy WordPress na trhu. V rámci své nabídky má přesměrování a při migraci na něj dokonce importuje data přesměrování.

Pokud používáte hostitelský modul spravovaného WordPress jako WPEngine, mají modul pro zpracování přesměrování dříve, než osoba vůbec narazí na váš web ... docela pěkná funkce, která může snížit latenci a režii vašeho hostingu.

A samozřejmě můžete zapište pravidla přesměrování do souboru .htaccess na vašem serveru WordPress ... ale nedoporučoval bych to. Už vám zbývá jedna chyba syntaxe od znepřístupnění vašeho webu!

Jak vytvořit přesměrování Regex

V příkladu, který poskytuji výše, se může zdát jednoduché jednoduše provést typické přesměrování z podsložky do nové domény a podsložky:

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

S tím je však problém. Co když máte distribuované odkazy a kampaně, které mají řetězec dotazů pro sledování kampaní nebo doporučení? Tyto stránky nebudou správně přesměrovány. Možná je URL:

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

Protože jste napsali přesnou shodu, nebude se tato adresa URL nikam přesměrovávat! Může vás tedy lákat, abyste z něj udělali regulární výraz a do adresy URL přidali zástupný znak:

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

To je docela dobré, ale stále existuje několik problémů. Nejprve bude odpovídat libovolné adrese URL / produkt-a / a přesměrujte je všechny do stejného cíle. Takže všechny tyto cesty budou přesměrovány do stejného cíle.

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

Regulární výrazy jsou však krásný nástroj. Nejprve můžete aktualizovat svůj zdroj, abyste zajistili identifikaci úrovně složky.

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

Tím zajistíte, že bude správně přesměrována pouze úroveň primární složky. Nyní k druhému problému ... jak získáte informace řetězce dotazů zachycené na novém webu, pokud je váš přesměrování neobsahuje? Regulární výrazy mají také skvělé řešení:

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

Informace o zástupných znacích jsou skutečně zachyceny a připojeny k cíli pomocí proměnné. Tak…

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

Bude správně přesměrováno na:

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

Mějte na paměti, že zástupný znak umožní přesměrovat také jakoukoli podsložku, takže bude také povoleno:

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

Přesměrování na:

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

Samozřejmě, regulární výrazy mohou být mnohem složitější než tohle ... ale chtěl jsem jen poskytnout rychlý příklad, jak nastavit zástupné přesměrování regulárního výrazu, které vše čistě předá nové doméně!

Co si myslíte?

Tyto stránky používají Akismet k omezení spamu. Zjistěte, jak jsou vaše údaje komentářů zpracovávány.