私たちのシナリオは大規模なMultiSiteネットワークで、私たちのチームはネットワーク上に新しいサブサイトを作成することによってクライアントのためのステージサイトを構築します。
stageite.ourcompany.com
すべてのコンテンツが正常になり、クライアントが正常に動作するようになると、ドメインはマップされ、ライブサイトのURLは次のようになります。
clientcompany.com
しかし、リンク、画像などが開発用URLを参照しているクロールレポートでは、間違ったURLが多数作成されています。
2つの質問
Hostファイルを変更して実際のドメイン名に基づいて作成するというアイデアを検討しましたが、これは私のチームの半分や他のクライアントには不可能です。
ありがとうございました。
私は次のことをお勧めします:(所属なし)
https://interconnectit.com/products/search-and-replace-for-wordpress-databases/
どういうわけか最近、私は検索とdbプラグインの置き換えについて奇妙な経験をしました。
また、いくつかのプラグインはそれを使用せず、奇妙な振る舞いを示すので、私はあなたのwp-config.phpファイルでの定義の使用を避けたいと思います。可能であれば、これら2つのオプションについてwp-optionsテーブルを更新することをお勧めします(少なくとも、それが私の経験でした)。
私はあなたがしていることの多くをします...そして上のツールを使って問題を抱えたことが一度もありません。完了したら、必ずサイトから外してください。
ご覧のとおり、URLを変更する方法はいくつかあります。 http://codex.wordpress.org/Changing_The_Site_URL
あなたのwp-config.phpの中でそのように定数を使うことができます。
define('WP_HOME','http://example.com');
define('WP_SITEURL','http://example.com');
データベースを変更することもできます。あなたが使用できる良いプラグインは検索と置換です: https://wordpress.org/plugins/search-and-replace/
もう一つの安全な方法は、あなたが端末SSH経由でアクセスするなら、あなたはWordPressコマンドラインを使うことができます: http://wp-cli.org/commands/search-replace/
Velvet Blues があなたの後味です。
また、おそらくすでにこれを行っているはずですが、とにかく言うべきです。開発用URLにある間は、検索ロボットがそのサイトにインデックスを付けないようにすることをお勧めします。
Velvet Bluesの代わりにMySQLクエリを使用したい場合は、これも機能するはずです。
UPDATE wp_posts SET post_content=(REPLACE (post_content, '<old url>','<new url>'));
あなたはテーブル名とURLを置き換える必要があるでしょう、しかしそれはそうするべきです。
役に立ったことを願っています!
BackupBuddy (iThemes.comの有料ソリューション)を強くお勧めします。
推奨される無料の代替手段は次のとおりです。
上記のすべては、シリアル化されたデータについても、データベース内のURLの検索と置換を適切かつ自動的に処理します。
そして、何百ものサイトで上記を管理する必要があるなら、 WP-CLI が助けになるはずです - BackupBuddy そしておそらく他のツールのためにも。