アイキャッチ画像: デスクの上でパソコンを使用している

Drupal 7 のコアが提供するフォームの $form_Id (以下「フォーム ID 」)のうち主要なものをリストにまとめてみました。

フォーム ID は hook_form_alter()hook_form_FORM_ID_alter() で既存のフォームをカスタマイズするときに必ず必要となりますが、既存のフォームの ID をチェックするのにはちょっと一手間が必要となります。 一般によく行われるチェック方法は次の 3 つでしょうか。

  • Devel モジュールを入れて、 hook_form_alter() を書いて dpm()dd() でフォーム ID を確認する。
  • Devel form debug などの便利なモジュールを入れて使用する。
  • Chrome の Inspector などでフォームの HTML を見て form 要素の id 属性からフォーム ID を想像する(こちらは -_ に変換するなどの脳内変換が必要)。

いずれの形を採っても一手間必要になってきますので、「よく使うフォームについてはあらかじめフォーム ID をまとめておくと都度調べる手間が省けて便利なのではないか!」と(今更)思い、まとめてみた次第です。 「 hook_form_alter() を書いてとりあえず dpm($form_id) 」をこれまで幾度となく行ってきた方などは特に、今後のその一手間が省けるのでブックマークなどしてお使いいただければと思います。

以下、アルファベット順にグループに分けながらまとめています。

Block (ブロック)

フォーム ID 説明 パス
block_admin_display_form ブロックの一覧ページ /admin/structure/block
block_admin_display_form ブロックの編集ページ /admin/structure/block/manage/*/*/configure
block_custom_block_delete ブロックの削除ページ /admin/structure/block/manage/*/*/delete
block_add_block_form ブロックの追加ページ /admin/structure/block/add

Comment (コメント)

フォーム ID 説明 パス
comment_node_article_form 記事へのコメント投稿フォーム /node/* /comment/*
comment_node_page_form 基本ページへのコメント投稿フォーム /node/* /comment/*

Field (フィールド)

フォーム ID 説明 パス
field_ui_field_overview_form フィールドの一覧ページ /admin/structure/types/manage/*/fields
field_ui_field_edit_form フィールドの編集ページ /admin/structure/types/manage/*/fields/*
field_ui_field_settings_form フィールドの設定編集ページ /admin/structure/types/manage/*/fields/*/field-settings
field_ui_widget_type_form フィールドのウィジェットページ /admin/structure/types/manage/*/fields/*/widget-type
field_ui_field_delete_form フィールドの削除ページ /admin/structure/types/manage/*/fields/*/delete

Menu (メニュー)

フォーム ID 説明 パス
menu_overview_form メニューのアイテム一覧ページ /admin/structure/menu/manage/*
menu_edit_menu メニューアイテムの編集/追加ページ /admin/structure/menu/manage/*/edit /admin/structure/menu/add
menu_item_delete_form メニューアイテムの削除ページ /admin/structure/menu/item/*/delete
menu_configure メニューの設定ページ /admin/structure/menu/settings

Node (ノード)

フォーム ID 説明 パス
page_node_form ノードの編集/追加ページ(基本ページ) /node/*/edit /node/add/page
article_node_form ノードの編集/追加ページ(記事) /node/*/edit /node/add/article
node_delete_confirm ノードの削除ページ /node/*/delete
node_type_form ノードタイプの編集/追加ページ /admin/structure/types/manage/* /admin/structure/types/add
node_type_delete_confirm ノードタイプの削除ページ /admin/structure/types/manage/*/delete

Role / Permission (ロール/パーミッション)

フォーム ID 説明 パス
user_admin_permissions 権限の一覧ページ /admin/people/permissions
user_admin_roles 役割の一覧ページ /admin/people/permissions/roles
user_admin_role 役割の編集ページ /admin/people/permissions/roles/edit/*
user_admin_role_delete_confirm 役割の削除ページ /admin/people/permissions/roles/delete/*

Search (検索)

フォーム ID 説明 パス
search_form 検索ページの検索フォーム /search
search_block_form 検索ブロック -

System (システム)

フォーム ID 説明 パス
system_modules モジュールの一覧ページ /admin/modules
system_modules_uninstall モジュールのアンインストールページ /admin/modules/uninstall

Theme (テーマ)

フォーム ID 説明 パス
system_themes_admin_form テーマの一覧ページ /admin/appearance
system_theme_settings テーマの設定編集ページ /admin/appearance/settings/*

Update (アップデート)

フォーム ID 説明 パス
update_manager_install_form モジュールのインストールページ /admin/modules/install
update_manager_update_form モジュールの更新ページ/テーマの更新ページ /admin/modules/update /admin/appearance/update

User (ユーザ)

フォーム ID 説明 パス
user_login ユーザログインフォーム /user/login
user_register_form ユーザ登録フォーム /user/register /admin/people/create
user_pass パスワードリセットメール申請フォーム /user/password
user_pass_reset パスワードリセットメール後のワンタイムログインページ /user/reset/*
user_profile_form ユーザプロフィール編集ページ /user/*/edit
user_cancel_confirm_form ユーザキャンセルページ /user/*/cancel

Taxonomy (タクソノミー)

フォーム ID 説明 パス
taxonomy_form_vocabulary ボキャブラリーの編集/追加/削除フォーム /admin/structure/taxonomy/*/edit /admin/structure/taxonomy/add

以上です。

特にユーザ周りやノード周りについてはカスタマイズのリクエストの頻度も高いかと思いますので、リストに残しておいて損はないのかなと思います。

私が思う主要なフォームについてはひととおり網羅できたと思っていますが、必要に応じて更新などもしていきたいと思います。 コアのその他のフォームについての追加リクエストなどもお受けしますので、お気軽にリクエストをお寄せください。