hookモジュールを作成

「Wysiwyg」モジュール+Fckeditorを使用していて、どうしてもFckeditorの設定をカスタマイズしたかったので、「Custom Entermode setting for fckeditor」を参考にモジュールを作成しました。

手順は次のとおりです。

モジュール名は「custom」にしました。
※ネーミングはもっとユニークなものにすればよかったです。

1.「custom」フォルダを作成

2.「custom.info」を作成
内容は以下のとおりです。

; $Id: custom.info,v 1.00.00 2011/04/14 Custom $
name = Custom
description = "Personal additional module"
core = 6.x
package = Other
version = "6.x-0.00.00"


3.「custom.module」を作成
内容は以下のとおりです。

<?php
// $Id: custom.module,v 1.00.00 2011/04/14 Custom $
function custom_wysiwyg_editor_settings_alter(&$settings, $context) {
  if($context['profile']->editor == 'fckeditor') {
    $settings['EnterMode'] = 'br';
    $settings['ShiftEnterMode'] = 'p';
  }
}

※上記のURLの説明では「EnterMode」と「ShiftEnterMode」の大文字小文字が違っていたので修正しました。
※drupalでは特別な場合を除いてはPHPの終了タグは記述しないらしいです。他のモジュールもそうなっていたので同じにしました。

4.サーバにアップロード
アップロード先は、拡張モジュールと同じ「sites/all/modules」直下です。

5.モジュールの追加
拡張モジュールのインストールと同じ方法です。
「http://yourdomain/admin/build/modules」にアクセスします。
drupal20110415

チェックをつけて保存すれば完了です。
一覧に表示されない場合は、「custom.info」か「custom.module」ファイルのどちらかに誤りがあります。
ファイルの中身だけでなくファイル名も注意してください。
※パッケージ名を「Other」にして、他の「その他」のモジュールと同じ枠内に入れたかったのですが、別になってしまいました。
英語では「Others」だったのか?一応、ja.poファイルをエキスポートして確認してみたのですがどこか違っているようです。
※その他に一覧があるモジュールはパッケージ名がないもののようです。

あとは、実際にエディタを使えば変更が反映されているはずです。
これの方法を使えばGeshiProプラグインも使用できるかもしれませんが、思案中です。
というのも、私の使い方ではpreタグで貼り付けたいソースコードを囲み、ソースコードは必要であれば実体参照コードに変換しているだけです。
それほど手間ではないのでこのままでも良いかなぁと思っています。