コンテンツの再構築
2025-11-09

ブログのページの移行ができたので、残るはページのコンテンツを移行していきます。ページの使い方によってはこの手順はできませんが、基本機能ということで参考にしてください。

公式のコースでは、ページのタイプに合わせてインポートの処理を入れていくという形になっています。

私が提供しているサイトは、あまり凝ったことをしていないので Post の移行で利用したスクリプトを参照にしながら作成していきます。

ページコンテンツの移行

ページのコンテンツを移行するためのスクリプトを migrations/import-wp/lib/transformToPage.ts のファイルを作成して、以下のコードを準備しました。

migrations/import-wp/lib/transformToPage.ts

変更点は、私のブログではページにカテゴリ、タグなどを利用していない点などがあるため項目を減らし、Post ではなく Page への処理のため変数名を変更した形です。

続いて、移行スクリプトを実行した際に、上記のコードを参照するようにコードを変更します。

migrations/import-wp/index.ts

これで一通り準備が完了しました。以下のコマンドを実行して、page の処理を実行します。

sh

処理が完了すると、以下のように Post のコンテンツも移行することができました。

Image

注意点

今回の移行は、私が作成していた Wordpress のサイトからの移行の手順をまとめていますが、Portable Text がテーブルに関しての部分が標準で対応していないため拡張する必要があります。この部分は、移行ではなく拡張のところで別途紹介していきたいと思います。

まとめ

いくつかのプロセスに分けて Wordpress から Sanity にデータの移行をしました。様々なコンテンツのタイプを Wordpress で利用している場合は追加の手順が必要となりますが、今回の処理の基本を押さえて、追加でやればより多くのタイプのコンテンツタイプを移行することができると思います。

移行に関しての手順はいったんここまで、このあとブログに仕上げる部分は別途まとめていきます。

ここまでのコードは、以下のリポジトリで公開をしています。