ホームページ全体ではなく、WordPressの投稿(記事)のみ大量に移行する機会があり、想定外の対応も必要でしたので残しておきます。
目次
スポンサーリンク
前提
- 投稿(記事)のみ移行
- スラッグは変わらない
- ディレクトリ構成が同じ(ドメイン/ディレクトリ(投稿・画像))
- 301リダイレクトが必要
移行元投稿のリスト化
この作業は必須では無いですが、リスト化することにより以下のことが整理でき、この後の作業を整理することができます。
- 個々の投稿の状態(公開されているか?非公開か?等)
- 移行が必要なもの、不要なものの区別ができる
- ”本文内の内部リンクチェック”
また、もっとも重要なのが最後の”本文内の内部リンクチェック”となり、私はExcelの関数で解読しています。
これをやると最後の内部リンクの修正や、リダイレクト設定をしやすくなると思います。
やり方が分からない場合はご相談ください。
以下のプラグインを使って移行する投稿をすべてエクスポートし、Excelやスプレッドシート等に保存します。
WP All Export(Export any WordPress data to XML/CSV)
今回抽出した項目は以下となります。
項目 | 内容 |
id | 投稿固有のID |
Date | 投稿年月日 |
Title | 件名 |
Post Type | 投稿タイプ |
Permalink | URL |
カテゴリー | カテゴリー |
タグ | タグ |
Status | 公開状態 |
Image URL | 画像URL |
Content | 本文 |
移行元サイトでエクスポート準備
以下プラグインをインストールします。
このプラグインのいいところは、投稿だけでなく投稿内の画像も一緒に移行できることです。
と思ったら、一括でエクスポートはできるのですがインポートができない・・・。
そのため以下方法で移行することにしました。
移行元サイトから投稿をエクスポート
1:対象期間を短くする
最初は全投稿を一気にエクスポートして、一気にインポートしたのですが投稿がまったくインポートできなかったため、期間を半年、半年でダメなので3ヶ月、3ヶ月でもダメなら2ヶ月、それでもだめなら1ヶ月と短くしました。
2:投稿者で絞る
期間を短くした1ヶ月でもインポートできない時があったので、投稿者を絞りました。
※カテゴリーの数より投稿者の数の方が少なかったので先にこちらを試しました。
3:ネット環境(アップロード速度を速く)の改善
『ひょっとして?』と思い、ルーターの近くの部屋に移ったところ、ある程度長い期間のファイルでもアップロードできました。
4:カテゴリーで絞る(やっていませんが)
投稿者で絞ってもダメであれば、さらに量を減らすためカテゴリーで絞ろうと考えていました。
と、ここまでやったのですが、画像(メディア)が一部しかアップされていないことが判明しました。
しかもアップされている画像もかなり少ないので、画像は手動でFTPツールを使い直接移行することにしました。
エクスポートファイルの修正
ここでやらずに移行先のWordPressで”内部リンクの修正”をやってもいいのですが、Excel上で置換機能等を使い内部リンクの修正を事前にしてしまうこともできます。
プラグインを使えば移行先のWordPressで「投稿のみ」と限定できはしますが、設定を間違ったりして投稿以外の部分:意図しないコンテンツ内のURLを誤変換してしまう可能性もあるので、Excel上でやった方が安全な場合もあります。
状況に応じて適切な方法を選ぶのがいいと思います。
移行先サイトにインポート準備
以下の前提が成立していることが必要になりますが、
- 同じ投稿について移行元サイトと移行先サイトのスラッグは変わらない
移行先サイトのパーマリンク設定を以下にします。
”/%postname%/”
これは移行先サイトにインポートした際、投稿のスラッグを移行元サイトと同じにするためです。
後ほど設定する”301リダイレクト”をスムーズにするためにも必要な設定となります。
移行先サイトに投稿をインポート
WordPressの機能「インポート」からインポーターを実行します。
移行元サイトからダウンロードした対象のファイルを選択しファイルをアップロード後、「画像もインストール」にチェックを入れ実行します。
しかしながら前述のように、事前に適切なデータ量にしておかないとうまくインポートされません。
特に画像がインポートされないのは本当に困りました(^^ゞ
そのため今回は以下のように分けて対応しています。
項目 | 内容 |
---|---|
投稿(記事) | DeMomentSomTres Exportでエクスポート後、 WordPressの元々の機能でインポートし移行 |
画像(メディア) | FTPツールを使い別途移行 |
スポンサーリンク
内部リンクの修正
プラグイン:Search Regexをインストールします。
移行元投稿のリスト化で、移行前の投稿だけに含まれるURLを事前に確認しておくと、より安全に修正できると思います。
今回は”old.com/archives/”部分が投稿と画像だけに使われていることを確認したため、以下のように設定し該当のURLを置換しました。
項目 | 入力内容 |
検索 | 移行前サイト:old.com/archives/ |
置換 | 移行先サイト:new.com/archives/ |
この作業はやる前に何度も確認することをお薦めします!
リダイレクト設定
実はクライアントさんの要望で途中で作業を中止しているので、リダイレクト設定までしていません。
以降は予定ですので、実際に作業後あらためて内容を整理します。
プラグイン:Redirectionをインストールします。
Redirectionの設定を完了させ、エクスポートに進みます。
項目 | 入力内容 | 選択内容 |
---|---|---|
ソースURL | ^/test20230121/(.*) | 正規表現 |
一致条件 | URLのみ | |
一致した時 | URLへ転送 | 301-恒久的に移動 |
ターゲットURL | https://new.com/archives/$1 |
~継続対応中のため完了次第、追記予定~
スポンサーリンク
コメント