なぜWordPressからDrupalへ移行するのか
WordPressは自由度も高くSEOにも強いと言われています
WordPressのカスタマイズにおける自由度の高さは、最終的にテンプレート内でPHPを記述することで実現します。PHPに熟練した技術者に依頼すれば、要件を満たすことが可能です。SEOに関しても特化したテンプレート、プラグインを導入し、適切なコンテンツを投稿することで最適化されます。
しかし、ブログが起点になっているため、動的なサイトを構成するには無理が出てきます
例えば、不動産検索サイト、会員サイト、予約サイトなど、見た目だけでなく、機能的、構造的に動的な独自制御が必要となる場合、既存のプラグインやテンプレートでの対応では無理があります。
オリジナルな動的サイトを構築・開発するには、どうしても、フレームワークを採用した開発手法を取らざるえません
DrupalはCMSであると同時にフレームワークとしても評価が高く、CMSとして使える状態でインストールする事ができるのに加え、その後、フレームワークとして独自機能を追加してゆくことが可能になっています。
独自機能を追加すると言っても、コア(標準プログラム)や拡張モジュールを改変するのではなく、DrupalならではのHookという手法で、追加のみで、既存の機能を変更することなく、独自機能を追加してゆきます。
そのため、既存機能を壊すことがなく、アップデートも可能。セキュリティ面での改悪のリスクも少なくなります。
Drupalの開発は学習曲線がゆるやかで、ロケットスタートしにくい
と言われていますが、ひとたび熟練すると開発効率が格段に向上します。Drupalの採用は、長い目で見るとコストパフォーマンスに優れ、思いのままのシステムを常に目指せる環境を手に入れた。ということになります。
WordPressからの移行
必要なモジュール
WordPress Migrateモジュールを使い、WordPressのコンテンツをDrupalに移行する手順です。
WordPress Migrateモジュールは、DrupalにWordPressのWXR(Wordpress eXtended Rss)ファイルのインポートをサポートしています。これは、WordPressのエクスポートからDrupalのタクソノミー、ユーザーアカウント、ノード、およびコメントを作成します。WordPressからの移行のためには、以下のモジュールが必要になります。
設定
インポートフォームでは、WordPressのコンテンツをインポートする方法について幾つかの選択を行うことができます。
WordPressのページ/ポストの変換
Drupalのコンテンツタイプをリストし、WordPressのそれぞれのページやブログ記事をインポートする方法を選択します。
添付ファイルフィールド
記事を読み込むことを選択したDrupalのコンテンツタイプは、任意のファイルのフィールドを持っている場合は、ここでそれらを選択します。ファイル・フィールドを選択しない場合は、与えられたブログ投稿に関連するすべてWordPressの添付ファイルは、自動的にファイル・フィールドに関連付けられます。
Blubrry PowerPressポッドキャスト用のフィールド
Bulubrry PowerPressのポッドキャストもフールド指定により取り込まれるようになります。
テキストフィールドのデフォルトフォーマット
本文を読み込むためのフォーマットを指定します。
WordPressのタグ/カテゴリをタクソノミーに変換
WordPressはタグ/カテゴリーの2種類をサポートしています。Drupalのタクソノミーへの対応を指定します。
パスのエイリアス設定
下記の何れかを選択します。
- パスのエイリアスを設定しない。
- WordPressでのパスをエイリアスにする。
- 自動エイリアスにより新たな統一されたエイリアスにする。
リダイレクトの生成
パスのエイリアス設定で2.以外を選択した時にリダイレクト設定を行い、WordPressにおけるパスからDrupalに移行した後のパスに301リダイレクトさせることができます。
実行
設定が完了したら、少しずつ実行してみます。一度に大量にインポートして失敗した場合、修復が面倒です。
設定、実行の詳細は https://www.drupal.org/node/1593370 を参考にしてください。