Drupal 5.x のインストールプロファイルのカスタマイズ
テストサイトとか、複数の環境に Drupal 5.x をインストールする場合、その都度、日本語翻訳ファイルをインポートしたり、共通して使うモジュールを有効化したり、とかいう設定を繰り返すのも面倒なので、ある程度のことはインストール時に実行しちゃえた方が便利だよね。ってことで、私が個人的に使ってる default.profile をご紹介。
インストール時のいろいろを設定してるのは /profiles/default/default.profile ファイル。
サイトの内容によって基本設定を振り分けたい場合(ブログサイトとポータルサイトとか...日本語サイトと他国語サイトとか...)なんかは、その設定ごとにプロファイルを作って置けば便利そうだけど、とりあえず、そんないろんな使い方はできてないんでデフォルトのものを改変して使ってます。
.profile ファイルで設定を行う関数は以下の 3つ。
- profilename_profile_modules() 必須
インストール時に有効化するモジュールを指定できる。
→ 変更しちゃってます。 - profilename_profile_details() オプション
インストール時にプロファイル選択画面に表示されるプロファイル名と説明を定義する。
→ デフォルトプロファイル 1個だけしか作成してないのでそのまま。 - profilename_profile_final() オプション
その他もろもろの設定を行える。
→ デフォルトで作成されるコンテンツタイプの変更と、日本語翻訳ファイルの自動インポートを追加してます。
ファイルのそれぞれの関数定義部分はこんな↓感じ。
インストール時に有効化するモジュールの指定
function default_profile_modules() { ..... } 部分に記述。
return array(
// コア必須モジュール
'block', 'filter', 'node', 'system', 'user', 'watchdog',
// コア任意モジュール
'blog', 'locale', 'menu', 'path', 'statistics', 'taxonomy', 'upload',
// 追加モジュール
'jbox', 'jquery_update', 'pathauto', 'token', 'update_status',
);
※ 追加モジュールの日本語翻訳は "po/ja.po" に追記しています。
デフォルトで作成されるコンテンツタイプの変更
function default_profile_final() { ..... } 部分に記述。
$types = array(
// page コンテンツタイプの修正
array(
'type' => 'page',
'name' => st('Static Page'),
'module' => 'node',
'description' => st('Static Pages may be used for like a contact page or an about page.'),
'title_label' => st('Title'),
'body_label' => st('Body'),
'custom' => TRUE,
'modified' => TRUE,
'locked' => FALSE,
),
array(
// story コンテンツタイプを info コンテンツタイプへ変更
'type' => 'info',
'name' => st('Information'),
'module' => 'node',
'description' => st('Informations may be used for information and news articles.'),
'title_label' => st('Title'),
'body_label' => st('Body'),
'custom' => TRUE,
'modified' => TRUE,
'locked' => FALSE,
),
);
※ 特に変更する必要もないけど、なんとなく「ページ」とか「ストーリー」とかって微妙な感じがしたんで「静的ページ」と「お知らせ」っぽく修正して使ってます...
日本語翻訳ファイルの自動インポート
これも、function default_profile_final() { ..... } 部分に記述。
$ja_po = (object) array('filepath' => './po/ja.po');
_locale_import_po($ja_po, 'ja', 'overwrite');
variable_set('site_default', 1);
}
※ 日本語翻訳ファイルは、追加モジュール分を追記して "po/ja.po" にアップロード。
参考サイトをみると、日本語翻訳ファイルの有無を確認したり...とかもあるので、そっちのがいいかも。
- [参考]
- HOWTO: Write an installation profile for the Drupal installer | drupal.org
Drupal 6.x のインストールプロファイルのカスタマイズ | DRUPAL*DRUPAL

