DRUPALとは Drupalとは、2001年に誕生した、PHP製のオープンソースのコンテンツ管理システム(CMS)です。世界中で100万以上のサイトで稼働していると言われており、海外だとNASAやオーストラリア政府、また、NASDAQなどの金融機関、ネスレ、ジョンソン・エンド・ジョンソンなどのグローバル企業がDrupalを採用しています。
HOOKとは Drupal におけるフック( hooks )とは、「 Drupal のモジュールが他のモジュールや Drupal のコアとの間でやりとりをするための仕組み 」のことです。
具体的には、指定されたパターンの名前の関数を書けばそれが「フック関数」として認識され所定の場所で呼び出される という仕組みになっています。
How to invoke a new hook in a Drupal module (and add yourself to a round of beer) https://befused.com/drupal/invoke-hook/
By Blair Wadman
So, you want to allow other modules to hook into your own module. You may have implemented hooks that other modules provide, but does invoking your own hook for a module seem like a dark art? It is as simple as calling one function in your module. All will be revealed shortly, but first, lets look at why you would want to invoke your own hook.
What is invoking a hook? When you invoke a hook, you are registering a new hook with Drupal that allows other modules to implement and therefore interact with your module. You are providing hook in points in your module which say to other modules “here is a point where you can inject your own data or extend my module”.
Why invoke hooks? The hook system is at the heart of what makes Drupal powerful. All modules will use hooks to interact with the rest of the Drupal system. By invoking your own hook, you are making your module more powerful and useful because you are allowing other modules to extend it or change its data in some way. If no module invoked hooks, there would be no hooks for you to implement! If it still does not make sense, don’t worry, as the best way to understand it is with an example.
Beer round example Let’s take a really simple example. Imagine you have a module with some code which returns a list of people included in a round of beer. And then you want to invoke your own hook so that other modules can add to the list of names that are part of the beer round.
Let’s set the module up before invoking the hook. The module is called beer_round . In beer_round.module you firstly need to implement hook_menu() to define the path where we can see the list of names for the beer round.
/**
* Implements hook_menu.
*/
function beer_round_menu() {
$items = array();
$items['beer'] = array(
'title' => 'Beer round',
'page callback' => 'beer_round_callback',
'access arguments' => array('access content'),
'type' => MENU_CALLBACK,
);
return $items;
}
This snippet simply means, when the user goes to the path beer, call the callback function called beer_round_callback(). Anyone who has the access content permission has the necessary permissions to view this page.
Next you need to define the callback function.
/**
* List of people included in a round of beer.
*/
function beer_round_callback() {
$round = array('Dave', 'Paolo', 'Andrew', 'Mat', 'Paula', 'Mihhail', 'Pete', 'Dima', 'Bhavna', 'Laura', 'Steve', 'San', 'Nick');
$output = theme('item_list', array('items' => $round));
return $output;
}
This contains an array of names of people who are part of the beer round. You then pass that array into the theme() function, which will convert it into an unordered list. If you now hit the path beer, you will see the list of names.
Now it is time to invoke a new hook. To invoke a new hook, all you need to do is call module_invoke_all() and pass in the name of the hook. We will call the hook beer_round. So you will call module_invoke_all(‘beer_round’) and add the result to the array of people in the round.
/**
* List of people included in a round of beer.
*/
function beer_round_callback() {
$round = array('Dave', 'Paolo', 'Andrew', 'Mat', 'Paula', 'Mihhail', 'Pete', 'Dima', 'Bhavna', 'Laura', 'Steve', 'San', 'Nick');
$round_more = module_invoke_all('beer_round');
$round_all = array_merge($round, $round_more);
$output = theme('item_list', array('items' => $round_all));
return $output;
}
Drupal will check every module to see if hook_beer_round has been implemented. If it has, the data the modules provide will be added to $round_more, which will be an array. If two modules implement hook_beer_round(), the array will contain two elements. So now we have two arrays, the original array of people in the beer round, and the additional people added via the hook. So merge the two together with array_merge() , and you have the full round.
To see this in action, implement hook_beer_round() in another module. I have a module called ‘blair’ where I will add myself to the beer round.
My implementation of hook_beer_round is:
/**
* Implements hook_beer_round();
*/
function blair_beer_round() {
return 'Blair';
}
Now if you reload the beer page, you will see that my name has been added.
That is all there is to invoking a hook! This is a very simple example to get you started. I will go into a more advanced example in a future post.
Note: real names are used in the example, but nobody was harmed in the production of this tutorial.
Overview of invoking a hook
参考
How to invoke a new hook in a Drupal module (and add yourself to a round of beer)
So, you want to allow other modules to hook into your own module. You may have implemented hooks that other modules provide, but does invoking your own hook for...
名前 説明 場所 Version hook_ajax_render_alter Alter the Ajax command data that is sent to the client. core/lib/Drupal/Core/Form/form.api.php d10,d9,d8,d7 hook_archiver_info_alter Alter archiver information declared by other modules. core/lib/Drupal/Core/File/file.api.php d10,d9,d8,d7 hook_batch_alter Alter batch information before a batch is processed. core/lib/Drupal/Core/Form/form.api.php d10,d9,d8,d7 hook_block_view_alter Alter the result of DrupalCoreBlockBlockBase::build(). core/modules/block/block.api.php d10,d9,d8,d7 hook_contextual_links_view_alter Alter a contextual links element before it is rendered. core/modules/contextual/contextual.api.php d10,d9,d8,d7 hook_countries_alter Alter the default country list. core/core.api.php d10,d9,d8,d7 hook_cron Perform periodic actions. core/core.api.php d10,d9,d8,d7 hook_css_alter Alter CSS files before they are output on the page. core/lib/Drupal/Core/Render/theme.api.php d10,d9,d8,d7 hook_element_info_alter Alter the element type information returned from modules. core/lib/Drupal/Core/Render/theme.api.php d10,d9,d8,d7 hook_entity_delete Respond to entity deletion. core/lib/Drupal/Core/Entity/entity.api.php d10,d9,d8,d7 hook_entity_insert Respond to creation of a new entity. core/lib/Drupal/Core/Entity/entity.api.php d10,d9,d8,d7 hook_entity_load Act on entities when loaded. core/lib/Drupal/Core/Entity/entity.api.php d10,d9,d8,d7 hook_entity_prepare_view Act on entities as they are being prepared for view. core/lib/Drupal/Core/Entity/entity.api.php d10,d9,d8,d7 hook_entity_presave Act on an entity before it is created or updated. core/lib/Drupal/Core/Entity/entity.api.php d10,d9,d8,d7 hook_entity_update Respond to updates to an entity. core/lib/Drupal/Core/Entity/entity.api.php d10,d9,d8,d7 hook_entity_view Act on entities being assembled before rendering. core/lib/Drupal/Core/Entity/entity.api.php d10,d9,d8,d7 hook_entity_view_alter Alter the results of the entity build array. core/lib/Drupal/Core/Entity/entity.api.php d10,d9,d8,d7 hook_entity_view_mode_alter Change the view mode of an entity that is being displayed. core/lib/Drupal/Core/Entity/entity.api.php d10,d9,d8,d7 hook_field_formatter_info_alter Perform alterations on Field API formatter types. core/modules/field/field.api.php d10,d9,d8,d7 hook_field_info_alter Perform alterations on Field API field types. core/modules/field/field.api.php d10,d9,d8,d7 hook_field_info_max_weight Returns the maximum weight for the entity components handled by the module. core/modules/field/field.api.php d10,d9,d8,d7 hook_field_purge_field Acts when a field is being purged. core/modules/field/field.api.php d10,d9,d8,d7 hook_field_widget_info_alter Perform alterations on Field API widget types. core/modules/field/field.api.php d10,d9,d8,d7 hook_file_copy Respond to a file that has been copied. core/modules/file/file.api.php d10,d9,d8,d7 hook_file_download Control access to private file downloads and specify HTTP headers. core/lib/Drupal/Core/File/file.api.php d10,d9,d8,d7 hook_file_mimetype_mapping_alter Alter MIME type mappings used to determine MIME type from a file extension. core/lib/Drupal/Core/File/file.api.php d10,d9,d8,d7 hook_file_move Respond to a file that has been moved. core/modules/file/file.api.php d10,d9,d8,d7 hook_file_url_alter Alter the URL to a file. core/lib/Drupal/Core/File/file.api.php d10,d9,d8,d7 hook_file_validate Check that files meet a given criteria. core/modules/file/file.api.php d10,d9,d8,d7 hook_filetransfer_info Register information about FileTransfer classes provided by a module. core/lib/Drupal/Core/File/file.api.php d10,d9,d8,d7 hook_filetransfer_info_alter Alter the FileTransfer class registry. core/lib/Drupal/Core/File/file.api.php d10,d9,d8,d7 hook_filter_format_disable Perform actions when a text format has been disabled. core/modules/filter/filter.api.php d10,d9,d8,d7 hook_filter_info_alter Perform alterations on filter definitions. core/modules/filter/filter.api.php d10,d9,d8,d7 hook_form_alter Perform alterations before a form is rendered. core/lib/Drupal/Core/Form/form.api.php d10,d9,d8,d7 hook_form_BASE_FORM_ID_alter Provide a form-specific alteration for shared ('base') forms. core/lib/Drupal/Core/Form/form.api.php d10,d9,d8,d7 hook_form_FORM_ID_alter Provide a form-specific alteration instead of the global hook_form_alter(). core/lib/Drupal/Core/Form/form.api.php d10,d9,d8,d7 hook_help Provide online user help. core/modules/help/help.api.php d10,d9,d8,d7 hook_hook_info Defines one or more hooks that are exposed by a module. core/lib/Drupal/Core/Extension/module.api.php d10,d9,d8,d7 hook_image_effect_info_alter Alter the information provided in DrupalimageAnnotationImageEffect. core/modules/image/image.api.php d10,d9,d8,d7 hook_image_style_flush Respond to image style flushing. core/modules/image/image.api.php d10,d9,d8,d7 hook_install Perform setup tasks when the module is installed. core/lib/Drupal/Core/Extension/module.api.php d10,d9,d8,d7 hook_install_tasks Return an array of tasks to be performed by an installation profile. core/lib/Drupal/Core/Extension/module.api.php d10,d9,d8,d7 hook_install_tasks_alter Alter the full list of installation tasks. core/lib/Drupal/Core/Extension/module.api.php d10,d9,d8,d7 hook_js_alter Perform necessary alterations to the JavaScript before it is presented on the page. core/lib/Drupal/Core/Render/theme.api.php d10,d9,d8,d7 hook_language_fallback_candidates_alter Allow modules to alter the language fallback candidates. core/modules/language/language.api.php d10,d9,d8,d7 hook_language_negotiation_info_alter Perform alterations on language negotiation methods. core/modules/language/language.api.php d10,d9,d8,d7 hook_language_switch_links_alter Perform alterations on language switcher links. core/lib/Drupal/Core/Language/language.api.php d10,d9,d8,d7 hook_language_types_info Define language types. core/modules/language/language.api.php d10,d9,d8,d7 hook_language_types_info_alter Perform alterations on language types. core/modules/language/language.api.php d10,d9,d8,d7 hook_mail Prepares a message based on parameters. core/core.api.php d10,d9,d8,d7 hook_mail_alter Alter an email message created with MailManagerInterface->mail(). core/core.api.php d10,d9,d8,d7 hook_menu_local_tasks_alter Alter local tasks displayed on the page before they are rendered. core/lib/Drupal/Core/Menu/menu.api.php d10,d9,d8,d7 hook_module_implements_alter Alter the registry of modules implementing a hook. core/lib/Drupal/Core/Extension/module.api.php d10,d9,d8,d7 hook_modules_installed Perform necessary actions after modules are installed. core/lib/Drupal/Core/Extension/module.api.php d10,d9,d8,d7 hook_modules_uninstalled Perform necessary actions after modules are uninstalled. core/lib/Drupal/Core/Extension/module.api.php d10,d9,d8,d7 hook_node_access_records Set permissions for a node to be written to the database. core/modules/node/node.api.php d10,d9,d8,d7 hook_node_access_records_alter Alter permissions for a node before it is written to the database. core/modules/node/node.api.php d10,d9,d8,d7 hook_node_grants Inform the node access system what permissions the user has. core/modules/node/node.api.php d10,d9,d8,d7 hook_node_grants_alter Alter user access rules when trying to view, edit or delete a node. core/modules/node/node.api.php d10,d9,d8,d7 hook_node_search_result Act on a node being displayed as a search result. core/modules/node/node.api.php d10,d9,d8,d7 hook_node_update_index Act on a node being indexed for searching. core/modules/node/node.api.php d10,d9,d8,d7 hook_query_alter Perform alterations to a structured query. core/lib/Drupal/Core/Database/database.api.php d10,d9,d8,d7 hook_query_TAG_alter Perform alterations to a structured query for a given tag. core/lib/Drupal/Core/Database/database.api.php d10,d9,d8,d7 hook_ranking Provide additional methods of scoring for core search results for nodes. core/modules/node/node.api.php d10,d9,d8,d7 hook_requirements Check installation requirements and do status reporting. core/lib/Drupal/Core/Extension/module.api.php d10,d9,d8,d7 hook_schema Define the current version of the database schema. core/lib/Drupal/Core/Database/database.api.php d10,d9,d8,d7 hook_search_preprocess Preprocess text for search. core/modules/search/search.api.php d10,d9,d8,d7 hook_shortcut_default_set Return the name of a default shortcut set for the provided user account. core/modules/shortcut/shortcut.api.php d10,d9,d8,d7 hook_system_info_alter Alter the information parsed from module and theme .info.yml files. core/lib/Drupal/Core/Extension/module.api.php d10,d9,d8,d7 hook_system_themes_page_alter Alters theme operation links. core/modules/system/system.api.php d10,d9,d8,d7 hook_theme Register a module or theme's theme implementations. core/lib/Drupal/Core/Render/theme.api.php d10,d9,d8,d7 hook_theme_registry_alter Alter the theme registry information returned from hook_theme(). core/lib/Drupal/Core/Render/theme.api.php d10,d9,d8,d7 hook_token_info Provide information about available placeholder tokens and token types. core/lib/Drupal/Core/Utility/token.api.php d10,d9,d8,d7 hook_token_info_alter Alter the metadata about available placeholder tokens and token types. core/lib/Drupal/Core/Utility/token.api.php d10,d9,d8,d7 hook_tokens Provide replacement values for placeholder tokens. core/lib/Drupal/Core/Utility/token.api.php d10,d9,d8,d7 hook_tokens_alter Alter replacement values for placeholder tokens. core/lib/Drupal/Core/Utility/token.api.php d10,d9,d8,d7 hook_uninstall Remove any information that the module sets. core/lib/Drupal/Core/Extension/module.api.php d10,d9,d8,d7 hook_update_dependencies Return an array of information about module update dependencies. core/lib/Drupal/Core/Extension/module.api.php d10,d9,d8,d7 hook_update_last_removed Return a number which is no longer available as hook_update_N(). core/lib/Drupal/Core/Extension/module.api.php d10,d9,d8,d7 hook_update_N Perform a single update between minor versions. core/lib/Drupal/Core/Extension/module.api.php d10,d9,d8,d7 hook_update_projects_alter Alter the list of projects before fetching data and comparing versions. core/modules/update/update.api.php d10,d9,d8,d7 hook_update_status_alter Alter the information about available updates for projects. core/modules/update/update.api.php d10,d9,d8,d7 hook_updater_info Provide information on Updaters (classes that can update Drupal). core/lib/Drupal/Core/Extension/module.api.php d10,d9,d8,d7 hook_updater_info_alter Alter the Updater information array. core/lib/Drupal/Core/Extension/module.api.php d10,d9,d8,d7 hook_user_cancel Act on user account cancellations. core/modules/user/user.api.php d10,d9,d8,d7 hook_user_cancel_methods_alter Modify account cancellation methods. core/modules/user/user.api.php d10,d9,d8,d7 hook_user_login The user just logged in. core/modules/user/user.api.php d10,d9,d8,d7 hook_user_logout The user just logged out. core/modules/user/user.api.php d10,d9,d8,d7 hook_verify_update_archive Verify an archive after it has been downloaded and extracted. core/modules/update/update.api.php d10,d9,d8,d7 callback_queue_worker 単一のキューアイテムについて処理を行う。 modules/system/system.api.php d7 hook_action_info アクションについての情報を宣言する。 modules/system/system.api.php d7 hook_action_info_alter 他のモジュールが宣言したアクションについての情報を変更する。 modules/system/system.api.php d7 hook_actions_delete アクションが削除された後にコードを実行する。 modules/system/system.api.php d7 hook_admin_paths 管理用パスを定義する。 modules/system/system.api.php d7 hook_admin_paths_alter 他のモジュールが定義した管理用パスを変更する。 modules/system/system.api.php d7 hook_aggregator_fetch Aggregator モジュールのフェッチャーを作成する。 modules/aggregator/aggregator.api.php d7 hook_aggregator_fetch_info 定義したフェッチャーのタイトルと説明を指定する。 modules/aggregator/aggregator.api.php d7 hook_aggregator_parse Aggregator モジュールのパーサーを作成する。 modules/aggregator/aggregator.api.php d7 hook_aggregator_parse_info 定義したパーサーのタイトルと説明を指定する。 modules/aggregator/aggregator.api.php d7 hook_aggregator_process Aggregator モジュールのプロセッサを作成する。 modules/aggregator/aggregator.api.php d7 hook_aggregator_process_info 定義したプロセッサのタイトルと説明を指定する。 modules/aggregator/aggregator.api.php d7 hook_aggregator_remove 保存されているフィードデータが削除されたときにコードを実行する。 modules/aggregator/aggregator.api.php d7 hook_archiver_info アーカイバーを宣言する。 modules/system/system.api.php d7 hook_block_configure ブロックの設定フォームを定義する。 modules/block/block.api.php d7 hook_block_info モジュールが提供するブロックを定義する。 modules/block/block.api.php d7 hook_block_info_alter 他のモジュールが定義したブロックの定義をデータベースへの登録の前に変更する。 modules/block/block.api.php d7 hook_block_list_alter ブロックリストが描画される前にコードを実行する。 modules/block/block.api.php d7 hook_block_save hook_block_configure() で定義された設定オプションが保存されたときの処理を実行する。 modules/block/block.api.php d7 hook_block_view ブロックの描画済みのビュー、または描画可能なビューを返す。 modules/block/block.api.php d7 hook_block_view_MODULE_DELTA_alter 特定のブロックの内容に変更をかける。 modules/block/block.api.php d7 hook_boot すべてのページリクエストに対してセットアップタスクを実行する。 modules/system/system.api.php d7 hook_comment_delete モデレータがコメントを削除するときにコードを実行する。 modules/comment/comment.api.php d7 hook_comment_insert コメントが挿入されるときにコードを実行する。 modules/comment/comment.api.php d7 hook_comment_load コメントがデータベースから読み込まれるときにコードを実行する。 modules/comment/comment.api.php d7 hook_comment_presave コメントのバリデーションが通り、保存される前にコードを実行する。 modules/comment/comment.api.php d7 hook_comment_publish モデレータがコメントを公開にするときにコードを実行する。 modules/comment/comment.api.php d7 hook_comment_unpublish モデレータがコメントを非公開にするときにコードを実行する。 modules/comment/comment.api.php d7 hook_comment_update コメントが更新されるときにコードを実行する。 modules/comment/comment.api.php d7 hook_comment_view コメントが表示されるときにコードを実行する。このフックはテーマ化される前にコメントにデータを追加するために使うことができる。 modules/comment/comment.api.php d7 hook_comment_view_alter コメントが閲覧されたときにコードを実行する。構造化されたコンテンツを変更することができる。 modules/comment/comment.api.php d7 hook_cron_queue_info 定期的に実行する必要のあるアイテムを持つキューを宣言する。 modules/system/system.api.php d7 hook_cron_queue_info_alter cron 処理が走る前に cron キューの情報を変更する。 modules/system/system.api.php d7 hook_custom_theme 現在のページで使うためのテーマのマシン名を返す。 modules/system/system.api.php d7 hook_dashboard_regions ダッシュボードにリージョンを追加する。 modules/dashboard/dashboard.api.php d7 hook_dashboard_regions_alter 他のモジュールが提供するダッシュボードリージョンを変更する。 modules/dashboard/dashboard.api.php d7 hook_date_format_types 追加の日付タイプを定義する。 modules/system/system.api.php d7 hook_date_format_types_alter 既存のデータタイプを変更する。 modules/system/system.api.php d7 hook_date_formats 追加の日付フォーマットを定義する。 modules/system/system.api.php d7 hook_date_formats_alter 他のモジュールが宣言した日付フォーマットを変更する。 modules/system/system.api.php d7 hook_delete ノードの削除時にコードを実行する。 modules/node/node.api.php d7 hook_disable モジュールが無効化される前に必要なアクションを実行する。 modules/system/system.api.php d7 hook_drupal_goto_alter drupal_goto() でユーザが送られる先のページを変更する。 modules/system/system.api.php d7 hook_element_info Form API 要素タイプを宣言しデフォルトの値を指定する。 modules/system/system.api.php d7 hook_enable モジュールが有効化された後に必要なアクションを実行する。 modules/system/system.api.php d7 hook_entity_info エンティティタイプについてベースシステムとフィールド API に伝える。 modules/system/system.api.php d7 hook_entity_info_alter エンティティ情報を変更する。 modules/system/system.api.php d7 hook_entity_query_alter EntityFieldQuery を変更/実行する。 modules/system/system.api.php d7 hook_exit クリーンアップタスクを実行する。 modules/system/system.api.php d7 hook_field_access ユーザがフィールドにアクセスできるかどうかを決定する。 modules/field/field.api.php d7 hook_field_attach_create_bundle field_attach_create_bundle() のときにコードを実行する。 modules/field/field.api.php d7 hook_field_attach_delete field_attach_delete() のときにコードを実行する。 modules/field/field.api.php d7 hook_field_attach_delete_bundle field_attach_delete_bundle() のときにコードを実行する。 modules/field/field.api.php d7 hook_field_attach_delete_revision field_attach_delete_revision() のときにコードを実行する。 modules/field/field.api.php d7 hook_field_attach_form field_attach_form() のときにコードを実行する。 modules/field/field.api.php d7 hook_field_attach_insert field_attach_insert() のときにコードを実行する。 modules/field/field.api.php d7 hook_field_attach_load field_attach_load() のときにコードを実行する。 modules/field/field.api.php d7 hook_field_attach_prepare_translation_alter field_attach_prepare_translation() に対して変更を加える。 modules/field/field.api.php d7 hook_field_attach_preprocess_alter field_attach_preprocess() 変数に対して変更を加える。 modules/field/field.api.php d7 hook_field_attach_presave field_attach_presave() のときにコードを実行する。 modules/field/field.api.php d7 hook_field_attach_purge field_purge_data() のときにコードを実行する。 modules/field/field.api.php d7 hook_field_attach_rename_bundle field_attach_rename_bundle() のときにコードを実行する。 modules/field/field.api.php d7 hook_field_attach_submit field_attach_submit() のときにコードを実行する。 modules/field/field.api.php d7 hook_field_attach_update field_attach_update() のときにコードを実行する。 modules/field/field.api.php d7 hook_field_attach_validate field_attach_validate() のときにコードを実行する。 modules/field/field.api.php d7 hook_field_attach_view_alter field_attach_view() や field_view_field() に対して変更を加える。 modules/field/field.api.php d7 hook_field_available_languages_alter field_available_languages() 変数を変更する。 modules/field/field.api.php d7 hook_field_create_field フィールドが作成されるときにコードを実行する。 modules/field/field.api.php d7 hook_field_create_instance フィールドインスタンスが作成されるときにコードを実行する。 modules/field/field.api.php d7 hook_field_delete このモジュールのフィールドデータに対してオリジナルの削除処理を定義する。 modules/field/field.api.php d7 hook_field_delete_field フィールドが削除されるときにコードを実行する。 modules/field/field.api.php d7 hook_field_delete_instance フィールドインスタンスが削除されるときにコードを実行する。 modules/field/field.api.php d7 hook_field_delete_revision このモジュールのフィールドタイプに対してオリジナルのリビジョン削除処理を定義する。 modules/field/field.api.php d7 hook_field_display_alter フィールドの表示前にその表示設定を変更する。 modules/field/field.api.php d7 hook_field_display_ENTITY_TYPE_alter 特定のエンティティタイプのフィールドが表示される前にその表示設定を変更する。 modules/field/field.api.php d7 hook_field_extra_fields 「擬似フィールド」コンポーネントをフィールド追加可能なエンティティに見せる。 modules/field/field.api.php d7 hook_field_extra_fields_alter フィールド追加可能なエンティティに対する「擬似フィールド」コンポーネントを変更する。 modules/field/field.api.php d7 hook_field_extra_fields_display_alter エンティティの表示前に擬似フィールドの表示設定を変更する。 modules/field/field.api.php d7 hook_field_formatter_info フィールド API フォーマッタータイプを定義する。 modules/field/field.api.php d7 hook_field_formatter_prepare_view フィールドの値が表示されるときにフォーマッターに情報を読み込ませる。 modules/field/field.api.php d7 hook_field_formatter_view フィールドの値に対してレンダーアレイを構築する。 modules/field/field.api.php d7 hook_field_info フィールド API フィールドタイプを定義する。 modules/field/field.api.php d7 hook_field_insert このモジュールのフィールドデータに対してオリジナルの挿入処理を定義する。 modules/field/field.api.php d7 hook_field_is_empty フィールドタイプの空要素を定義する。 modules/field/field.api.php d7 hook_field_language_alter field_language() の変数に変更を加える。 modules/field/field.api.php d7 hook_field_load このモジュールのフィールドタイプのオリジナルの読み込み処理を定義する。 modules/field/field.api.php d7 hook_field_prepare_translation このモジュールのフィールドタイプのオリジナルの prepare_translation の処理を定義する。 modules/field/field.api.php d7 hook_field_prepare_view フィールドの表示用に値を準備する。 modules/field/field.api.php d7 hook_field_presave このモジュールのフィールドタイプにオリジナルの保存前の処理を定義する。 modules/field/field.api.php d7 hook_field_purge_instance フィールドインスタンスがパージされるときにコードを実行する。 modules/field/field.api.php d7 hook_field_read_field フィールドがデータベースから読み込まれるときにコードを実行する。 modules/field/field.api.php d7 hook_field_read_instance フィールドインスタンスが読み込まれるときにコードを実行する。 modules/field/field.api.php d7 hook_field_schema フィールド構造のためのフィールド API スキーマを定義する。 modules/field/field.api.php d7 hook_field_storage_create_field 新しいフィールドの作成時にコードを実行する。 modules/field/field.api.php d7 hook_field_storage_delete エンティティのすべてのフィールドデータを削除する。 modules/field/field.api.php d7 hook_field_storage_delete_field フィールド削除のときにコードを実行する。 modules/field/field.api.php d7 hook_field_storage_delete_instance フィールドインスタンス削除のときにコードを実行する。 modules/field/field.api.php d7 hook_field_storage_delete_revision エンティティのフィールドデータの単一のリビジョンを削除する。 modules/field/field.api.php d7 hook_field_storage_details フィールドのストレージの内部の詳細を示す。 modules/field/field.api.php d7 hook_field_storage_details_alter フィールド API ストレージの詳細に変更を加える。 modules/field/field.api.php d7 hook_field_storage_info フィールド API ストレージのバックエンドを示す。 modules/field/field.api.php d7 hook_field_storage_info_alter フィールド API ストレージのタイプに変更を加える。 modules/field/field.api.php d7 hook_field_storage_load 一式のエンティティのフィールドデータを読み込む。 modules/field/field.api.php d7 hook_field_storage_pre_insert ストレージのバックエンドがフィールドデータを挿入するときにコードを実行する。 modules/field/field.api.php d7 hook_field_storage_pre_load ストレージのバックエンドがフィールドデータを読み込むときにコードを実行する。 modules/field/field.api.php d7 hook_field_storage_pre_update ストレージのバックエンドがフィールドデータを更新するときにコードを実行する。 modules/field/field.api.php d7 hook_field_storage_purge フィールドデータがパージされるときにフィールドストレージの情報を削除する。 modules/field/field.api.php d7 hook_field_storage_purge_field フィールドコードがパージされるときにフィールドストレージの情報を削除する。 modules/field/field.api.php d7 hook_field_storage_purge_field_instance フィールドインスタンスがパージされるときにフィールドストレージの情報を削除する。 modules/field/field.api.php d7 hook_field_storage_query EntityFieldQuery を実行する。 modules/field/field.api.php d7 hook_field_storage_update_field フィールドのストレージ情報を更新する。 modules/field/field.api.php d7 hook_field_storage_write エンティティのフィールドデータを記述する。 modules/field/field.api.php d7 hook_field_update このモジュールのフィールドデータのオリジナルの更新処理を定義する。 modules/field/field.api.php d7 hook_field_update_field フィールドが更新されるときにコードを実行する。 modules/field/field.api.php d7 hook_field_update_forbid フィールドの更新が発生するのを禁止する。 modules/field/field.api.php d7 hook_field_update_instance フィールドインスタンスが更新されるときにコードを実行する。 modules/field/field.api.php d7 hook_field_validate このモジュールのフィールドデータを検証する。 modules/field/field.api.php d7 hook_field_widget_error フィールドレベルのバリデーションエラーのフラグを上げる。 modules/field/field.api.php d7 hook_field_widget_form 単一のフィールドウィジェットのためのフォームを返す。 modules/field/field.api.php d7 hook_field_widget_form_alter 他のモジュールが提供するフィールドウィジェットフォームを変更する。 modules/field/field.api.php d7 hook_field_widget_info フィールド API ウィジェットタイプを定義する。 modules/field/field.api.php d7 hook_field_widget_properties_alter フィールドインスタンスのウィジェットプロパティの表示前に変更を加える。 modules/field/field.api.php d7 hook_field_widget_properties_ENTITY_TYPE_alter 特定のエンティティタイプのフィールドインスタンスのウィジェットプロパティの表示前に変更を加える。 modules/field/field.api.php d7 hook_field_widget_WIDGET_TYPE_form_alter 他のモジュールが提供する特定のウィジェットのウィジェットフォームを変更する。 modules/field/field.api.php d7 hook_file_delete ファイルが削除されるときにコードを実行する。 modules/system/system.api.php d7 hook_file_insert ファイルが追加されるときにコードを実行する。 modules/system/system.api.php d7 hook_file_load ファイルオブジェクトの追加の情報を読み込む。 modules/system/system.api.php d7 hook_file_presave ファイルが挿入/更新されるときにコードを実行する。 modules/system/system.api.php d7 hook_file_update ファイルが更新されるときにコードを実行する。 modules/system/system.api.php d7 hook_filter_format_insert 新しいテキストフォーマットが作成されたときにコードを実行する。 modules/filter/filter.api.php d7 hook_filter_format_update テキストフォーマットが更新されたときにコードを実行する。 modules/filter/filter.api.php d7 hook_filter_info コンテンツフィルターを定義する。 modules/filter/filter.api.php d7 hook_flush_caches クリアするキャッシュテーブルのリストを追加する。 modules/system/system.api.php d7 hook_form ノード編集フォームを表示する。 modules/node/node.api.php d7 hook_forms form_ids をビルダー関数にマップする。 modules/system/system.api.php d7 hook_hook_info_alter hook_hook_info() に変更を加える。 modules/system/system.api.php d7 hook_html_head_alter drupal_get_html_head() が描画する前に XHTML HEAD タグを変更する。 modules/system/system.api.php d7 hook_image_default_styles Drupal 内で広く再利用するためにモジュールベースのイメージスタイルを提供する。 modules/image/image.api.php d7 hook_image_effect_info モジュールが提供するイメージエフェクトの情報を定義する。 modules/image/image.api.php d7 hook_image_style_delete イメージスタイルの削除のときにコードを実行する。 modules/image/image.api.php d7 hook_image_style_save イメージスタイルの更新のときにコードを実行する。 modules/image/image.api.php d7 hook_image_styles_alter 他のモジュールやユーザが提供したイメージスタイルに変更を加える。 modules/image/image.api.php d7 hook_image_toolkits このモジュールが提供するイメージツールキットを定義する。 modules/system/system.api.php d7 hook_init キャッシュされていないページリクエストに対してセットアップタスクを実行する。 modules/system/system.api.php d7 hook_insert 新しいノードの作成のときにコードを実行する。 modules/node/node.api.php d7 hook_language_init 言語の初期化が実行されたときにモジュールが何らかの処理を行えるようにする。 modules/system/language.api.php d7 hook_language_negotiation_info 言語のネゴシエーションプロバイダを定義する。 modules/system/language.api.php d7 hook_library モジュールに関連づいた JavaScript/CSS ライブラリを登録する。 modules/system/system.api.php d7 hook_library_alter JavaScript/CSS ライブラリのレジストリを変更する。 modules/system/system.api.php d7 hook_load データベースからノードが読み込まれたときにコードを実行する。 modules/node/node.api.php d7 hook_locale 翻訳可能なモジュールのテキストグループを定義する。 modules/locale/locale.api.php d7 hook_menu メニューアイテムとページコールバックを定義する。 modules/system/system.api.php d7 hook_menu_alter hook_menu() の実行後 {menu_router} テーブルに保存されるデータを変更する。 modules/system/system.api.php d7 hook_menu_breadcrumb_alter アクティブトレイルのリンクがパンくずとして描画される前に変更する。 modules/system/system.api.php d7 hook_menu_contextual_links_alter コンテクスチュアルリンクを描画前に変更する。 modules/system/system.api.php d7 hook_menu_delete カスタムメニューが削除されるときにコードを実行する。 modules/menu/menu.api.php d7 hook_menu_get_item_alter メニュールーターアイテムがデータベースやキャッシュから取得された直後に変更する。 modules/system/system.api.php d7 hook_menu_insert カスタムメニューが作成されるときにコードを実行する。 modules/menu/menu.api.php d7 hook_menu_link_alter menu_link_save() によって {menu_links} テーブルに保存されるデータを変更する。 modules/system/system.api.php d7 hook_menu_link_delete メニューリンクが削除されたときにコードを実行する。 modules/system/system.api.php d7 hook_menu_link_insert メニューリンクが作成されたときにコードを実行する。 modules/system/system.api.php d7 hook_menu_link_update メニューリンクが更新されたときにコードを実行する。 modules/system/system.api.php d7 hook_menu_site_status_alter メニューディスパッチの前にサイトステータスをコントロールする。 modules/system/system.api.php d7 hook_menu_update カスタムメニューが更新されるときにコードを実行する。 modules/menu/menu.api.php d7 hook_modules_disabled モジュールが無効化された後に必要なアクションを実行する。 modules/system/system.api.php d7 hook_modules_enabled モジュールが有効化された後に必要な処理を実行する。 modules/system/system.api.php d7 hook_multilingual_settings_changed 言語設定が変更されるときにコードを実行する。 modules/locale/locale.api.php d7 hook_node_access ノードへのアクセスをコントロールする。 modules/node/node.api.php d7 hook_node_delete ノードが削除されるときにコードを実行する。 modules/node/node.api.php d7 hook_node_info モジュールが提供するノードタイプを定義する。 modules/node/node.api.php d7 hook_node_insert 新しいノードの作成の際にコードを実行する。 modules/node/node.api.php d7 hook_node_load 任意のノードがデータベースから読み込まれるときにコードを実行する。 modules/node/node.api.php d7 hook_node_operations マスのノードオペレーションを加える。 modules/node/node.api.php d7 hook_node_prepare 追加/編集フォームに表示される前のノードオブジェクトに処理を加える。 modules/node/node.api.php d7 hook_node_presave 追加/更新されるノードに処理を加える。 modules/node/node.api.php d7 hook_node_revision_delete ノードリビジョンの削除のときにコードを実行する。 modules/node/node.api.php d7 hook_node_submit 検証済のフォームの値がコピーされたノードに処理を加える。 modules/node/node.api.php d7 hook_node_type_delete ノードタイプ(コンテンツタイプ)が削除されたときに処理を実行する。 modules/node/node.api.php d7 hook_node_type_insert ノードタイプ(コンテンツタイプ)が作成されたときに処理を実行する。 modules/node/node.api.php d7 hook_node_type_update ノードタイプ(コンテンツタイプ)が更新されたときに処理を実行する。 modules/node/node.api.php d7 hook_node_update ノードが更新されたときに処理を実行する。 modules/node/node.api.php d7 hook_node_validate ノードが作成/更新される前にノードのバリデーション処理を行う。 modules/node/node.api.php d7 hook_node_view ノードが描画処理に入る前にコードを実行する。 modules/node/node.api.php d7 hook_node_view_alter node_view() の結果を変更する。 modules/node/node.api.php d7 hook_openid モジュールが OpenID リクエストパラメータを変更できる。 modules/openid/openid.api.php d7 hook_openid_discovery_method_info モジュールが OpenID ディスカバリーメソッドを宣言できる。 modules/openid/openid.api.php d7 hook_openid_discovery_method_info_alter モジュールがディカバリーメソッドを変更できる。 modules/openid/openid.api.php d7 hook_openid_normalization_method_info モジュールが OpenID ノーマライゼーションメソッドを宣言できる。 modules/openid/openid.api.php d7 hook_openid_normalization_method_info_alter モジュールがノーマライゼーションメソッドを変更できる。 modules/openid/openid.api.php d7 hook_openid_response OpenID のログイン成功時にモジュールが処理を実行できる。 modules/openid/openid.api.php d7 hook_overlay_child_initialize オーバーレイの子ウィンドウが初期化されるときにモジュールが処理を実行できる。 modules/overlay/overlay.api.php d7 hook_overlay_parent_initialize オーバーレイの親ウィンドウが初期化されるときにモジュールが処理を実行できる。 modules/overlay/overlay.api.php d7 hook_page_alter ページが描画される前に変更を加える。 modules/system/system.api.php d7 hook_page_build ページが描画される前にページに要素を加える。 modules/system/system.api.php d7 hook_page_delivery_callback_alter ページコールバックの結果をブラウザに送信するために使うデリバリーコールバックを変更する。 modules/system/system.api.php d7 hook_path_delete パスの削除時にコードを実行する。 modules/path/path.api.php d7 hook_path_insert パスの挿入時にコードを実行する。 modules/path/path.api.php d7 hook_path_update パスの更新にコードを実行する。 modules/path/path.api.php d7 hook_permission ユーザパーミッションを定義する。 modules/system/system.api.php d7 hook_prepare ノードオブジェクトが追加/編集フォームで表示されるときにコードを実行する。 modules/node/node.api.php d7 hook_rdf_mapping モジュールがフィールドバンドルのための RDF マッピングを定義できる。 modules/rdf/rdf.api.php d7 hook_registry_files_alter レジストリがパースしたファイルのリストにひつよな変更を加える。 modules/system/system.api.php d7 hook_schema_alter 既存のデータベーススキーマに変更を加える。 modules/system/system.api.php d7 hook_search_access オリジナルの検索ルーチンに対するアクセスを定義する。 modules/search/search.api.php d7 hook_search_admin 検索設定フォームに要素を追加する。 modules/search/search.api.php d7 hook_search_execute キーワードのセットに対して検索を実行する。 modules/search/search.api.php d7 hook_search_info オリジナルの検索タイプを定義する。 modules/search/search.api.php d7 hook_search_page 検索結果の描画を上書きする。 modules/search/search.api.php d7 hook_search_reset 検索インデックスが再構築される前にコードを実行する。 modules/search/search.api.php d7 hook_search_status インデクシングのステータスをレポートする。 modules/search/search.api.php d7 hook_simpletest_alter テストのリストを変更する。 modules/simpletest/simpletest.api.php d7 hook_stream_wrappers モジュールに関連づけられた PHP ストリームラッパーの実装を登録する。 modules/system/system.api.php d7 hook_stream_wrappers_alter PHP ストリームラッパーの実装のリストに変更を加える。 modules/system/system.api.php d7 hook_system_theme_info モジュールが提供する追加の theme を返す。 modules/system/system.api.php d7 hook_taxonomy_term_delete タクソノミータームが削除されたときに処理を実行する。 modules/taxonomy/taxonomy.api.php d7 hook_taxonomy_term_insert タクソノミータームが作成されたときに処理を実行する。 modules/taxonomy/taxonomy.api.php d7 hook_taxonomy_term_load タクソノミータームが読み込まれたときに処理を実行する。 modules/taxonomy/taxonomy.api.php d7 hook_taxonomy_term_presave タクソノミータームが保存される前に処理を実行する。 modules/taxonomy/taxonomy.api.php d7 hook_taxonomy_term_update タクソノミータームが更新されたときに処理を実行する。 modules/taxonomy/taxonomy.api.php d7 hook_taxonomy_term_view タクソノミータームが描画用に用意されたときに処理を実行する。 modules/taxonomy/taxonomy.api.php d7 hook_taxonomy_term_view_alter taxonomy_term_view() の結果を変更する。 modules/taxonomy/taxonomy.api.php d7 hook_taxonomy_vocabulary_delete タクソノミーボキャブラリーの削除のときにコードを実行する。 modules/taxonomy/taxonomy.api.php d7 hook_taxonomy_vocabulary_insert タクソノミーボキャブラリーが挿入されるときにコードを実行する。 modules/taxonomy/taxonomy.api.php d7 hook_taxonomy_vocabulary_load タクソノミーボキャブラリーが読み込まれるときにコードを実行する。 modules/taxonomy/taxonomy.api.php d7 hook_taxonomy_vocabulary_presave タクソノミーボキャブラリーが保存される前にコードを実行する。 modules/taxonomy/taxonomy.api.php d7 hook_taxonomy_vocabulary_update タクソノミーボキャブラリーが更新されるときにコードを実行する。 modules/taxonomy/taxonomy.api.php d7 hook_test_finished 個別のテストの実行が完了したときに処理を実行する。 modules/simpletest/simpletest.api.php d7 hook_test_group_finished テストグループの実行が完了したときに処理を実行する。 modules/simpletest/simpletest.api.php d7 hook_test_group_started テストグループの実行が開始したときに処理を時刻する。 modules/simpletest/simpletest.api.php d7 hook_translated_menu_link_alter メニューリンクの翻訳後・描画前にメニューリンクを変更する。 modules/system/system.api.php d7 hook_trigger_info ユーザがアクションを割り当てられるトリガー(イベント)を宣言する。 modules/trigger/trigger.api.php d7 hook_trigger_info_alter hook_trigger_info() が宣言したトリガーを変更する。 modules/trigger/trigger.api.php d7 hook_update ノードが更新されたときに処理を実行する。 modules/node/node.api.php d7 hook_update_index このモジュールの検索インデックスを更新する。 modules/search/search.api.php d7 hook_url_inbound_alter インバウンド URL リクエストを変更する。 modules/system/system.api.php d7 hook_url_outbound_alter アウトバウンド URL を変更する。 modules/system/system.api.php d7 hook_user_categories ユーザ設定やプロフィール情報カテゴリのリストを取得する。 modules/user/user.api.php d7 hook_user_delete ユーザアカウントが削除されたときに処理を実行する。 modules/user/user.api.php d7 hook_user_insert ユーザアカウントが作成されたときに処理を実行する。 modules/user/user.api.php d7 hook_user_load ユーザオブジェクトがデータベースから読み込まれたときに処理を実行する。 modules/user/user.api.php d7 hook_user_operations マスのユーザオペレーションを追加する。 modules/user/user.api.php d7 hook_user_presave ユーザアカウントが作成/更新される前に処理を実行する。 modules/user/user.api.php d7 hook_user_role_delete ユーザの役割が削除されたときに処理を実行する。 modules/user/user.api.php d7 hook_user_role_insert ユーザの役割が作成されたときに処理を実行する。 modules/user/user.api.php d7 hook_user_role_presave ユーザの役割が作成/更新される前に処理を実行する。 modules/user/user.api.php d7 hook_user_role_update ユーザの役割が更新されたときに処理を実行する。 modules/user/user.api.php d7 hook_user_update ユーザアカウントが更新されたときに処理を実行する。 modules/user/user.api.php d7 hook_user_view ユーザのアカウント情報が表示される前に処理を実行する。 modules/user/user.api.php d7 hook_user_view_alter ユーザのアカウント情報が表示される前に構造化されたコンテンツを変更する。 modules/user/user.api.php d7 hook_username_alter ユーザに表示されるユーザ名を変更する。 modules/system/system.api.php d7 hook_validate ノードの作成/更新前にノードバリデーションを実行する。 modules/node/node.api.php d7 hook_view ノードを表示する。 modules/node/node.api.php d7 hook_watchdog イベントメッセージをログに記録する。 modules/system/system.api.php d7 hook_xmlrpc XML-RPC コールバックを定義する。 modules/system/system.api.php d7 hook_xmlrpc_alter XML-RPC メソッドが呼ばれる前にその定義を変更する。 modules/system/system.api.php d7 module_hook モジュールがフックを実装しているかどうかを調べる。 includes/module.inc d7 module_hook_info hook_hook_info() で宣言されているフックのリストを取得する。 includes/module.inc d7 module_implements フックを実装しているモジュールを返す。 includes/module.inc d7 module_implements_write_cache フック実装のキャッシュを書き込む。 includes/module.inc d7 module_invoke 特定のモジュールの特定のフックを実行する。 includes/module.inc d7 module_invoke_all すべての有効化されたモジュールの特定のフックを実行する。 includes/module.inc d7 hook_rdf_namespaces Allow modules to define namespaces for RDF mappings. core/modules/rdf/rdf.api.php d9,d7