WordPressでの新しいドメイン正規表現(Regex)リダイレクト

正規表現-正規表現

ここ数週間、私たちはクライアントがWordPressで複雑な移行を行うのを支援してきました。 クライアントにはXNUMXつの製品があり、どちらも人気が出て、ビジネス、ブランディング、コンテンツを別々のドメインに分割する必要がありました。 それはかなりの仕事です!

既存のドメインはそのままですが、新しいドメインには、画像、投稿、ケーススタディ、ダウンロード、フォーム、ナレッジベースなど、その製品に関するすべてのコンテンツが含まれます。監査を行い、サイトをクロールして、単一の資産を見逃さないでください。

新しいサイトを設置して運用できるようになったら、スイッチを引いて稼働させる時期が来ました。 つまり、この製品に属するプライマリサイトのURLはすべて新しいドメインにリダイレクトする必要がありました。 ほとんどのパスはサイト間で一貫性を保っていたため、重要なのはリダイレクトを適切に設定することでした。

WordPressでプラグインをリダイレクトする

WordPressでリダイレクトを管理するのに最適なXNUMXつの人気のあるプラグインがあります。

  • リダイレクション –正規表現機能と、リダイレクトを管理するためのカテゴリを備えた、おそらく市場で最高のプラグイン。
  • ランクマスSEO –この軽量SEOプラグインは新鮮な空気の息吹であり、私のリストを作成します 最高のWordPressプラグイン 市場に出ています。 オファリングの一部としてリダイレクトがあり、移行するとリダイレクトのデータもインポートされます。

次のようなマネージドWordPressホスティングエンジンを使用している場合 WPEngine、人があなたのサイトにアクセスする前にリダイレクトを処理するモジュールがあります…あなたのホスティングの待ち時間とオーバーヘッドを減らすことができる非常に素晴らしい機能です。

そして、もちろん、あなたはできます リダイレクトルールを.htaccessファイルに書き込みます あなたのWordPressサーバーで…しかし私はそれをお勧めしません。 あなたはあなたのサイトにアクセスできないようにすることから離れたXNUMXつの構文エラーです!

正規表現リダイレクトを作成する方法

上記の例では、サブフォルダーから新しいドメインとサブフォルダーへの一般的なリダイレクトを実行するのは簡単に思えるかもしれません。

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

ただし、これには問題があります。 キャンペーンの追跡または紹介用のクエリ文字列を持つリンクやキャンペーンを配布した場合はどうなりますか? それらのページは適切にリダイレクトされません。 おそらくURLは次のとおりです。

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

完全一致を記述したため、そのURLはどこにもリダイレクトされません。 したがって、正規表現にして、URLにワイルドカードを追加したくなるかもしれません。

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

それはかなり良いことですが、まだいくつかの問題があります。 まず、任意のURLと一致します / product-a / その中で、それらすべてを同じ宛先にリダイレクトします。 したがって、これらのパスはすべて同じ宛先にリダイレクトされます。

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

ただし、正規表現は美しいツールです。 まず、ソースを更新して、フォルダーレベルが識別されていることを確認できます。

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

これにより、プライマリフォルダレベルのみが正しくリダイレ​​クトされるようになります。 次に、XNUMX番目の問題について…リダイレクトにクエリ文字列情報が含まれていない場合、新しいサイトでキャプチャされたクエリ文字列情報をどのように取得しますか? 正規表現には、そのための優れたソリューションもあります。

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

ワイルドカード情報は実際にキャプチャされ、変数を使用して宛先に追加されます。 そう…

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

適切にリダイレクトされます:

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

ワイルドカードを使用すると、サブフォルダーもリダイレクトできるため、これも有効になることに注意してください。

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

リダイレクト先:

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

もちろん、正規表現はこれよりもはるかに複雑になる可能性があります…しかし、すべてを新しいドメインにきれいに渡すワイルドカード正規表現リダイレクトを設定する方法の簡単なサンプルを提供したかっただけです。

どう思いますか?

このサイトはAkismetを使用して迷惑メールを減らします。 コメントの処理方法を学ぶ.