Contents of this Article

なぜ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からの移行のためには、以下のモジュールが必要になります。

  1. Wordpress Migrateモジュール
  2. Migrateモジュール
  3. Migrate_extrasモジュール
  4. Pathautoモジュール
  5. Mediaモジュール
  6. Redirectモジュール

設定

インポートフォームでは、WordPressのコンテンツをインポートする方法について幾つかの選択を行うことができます。

WordPressのページ/ポストの変換

Drupalのコンテンツタイプをリストし、WordPressのそれぞれのページやブログ記事をインポートする方法を選択します。

添付ファイルフィールド

記事を読み込むことを選択したDrupalのコンテンツタイプは、任意のファイルのフィールドを持っている場合は、ここでそれらを選択します。ファイル・フィールドを選択しない場合は、与えられたブログ投稿に関連するすべてWordPressの添付ファイルは、自動的にファイル・フィールドに関連付けられます。

Blubrry PowerPressポッドキャスト用のフィールド

Bulubrry PowerPressのポッドキャストもフールド指定により取り込まれるようになります。

テキストフィールドのデフォルトフォーマット

本文を読み込むためのフォーマットを指定します。

WordPressのタグ/カテゴリをタクソノミーに変換

WordPressはタグ/カテゴリーの2種類をサポートしています。Drupalのタクソノミーへの対応を指定します。

パスのエイリアス設定

下記の何れかを選択します。

  1. パスのエイリアスを設定しない。
  2. WordPressでのパスをエイリアスにする。
  3. 自動エイリアスにより新たな統一されたエイリアスにする。

リダイレクトの生成

パスのエイリアス設定で2.以外を選択した時にリダイレクト設定を行い、WordPressにおけるパスからDrupalに移行した後のパスに301リダイレクトさせることができます。

実行

設定が完了したら、少しずつ実行してみます。一度に大量にインポートして失敗した場合、修復が面倒です。

設定、実行の詳細は https://www.drupal.org/node/1593370 を参考にしてください。

このエントリーをはてなブックマークに追加
Facebook icon
Twitter icon
Google icon