Drupal HOOK徹底解説

Drupal HOOK徹底解説
Drupal HOOK徹底解説

Drupal におけるフック( hooks )とは、「 Drupal のモジュールが他のモジュールや Drupal のコアとの間でやりとりをするための仕組み」のことです。

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.

Blair added to the beer round after implementing hook_beer_round

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.

Blair added to the beer round after implementing hook_beer_round

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

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...

Drupal HOOK徹底解説  Drupal10 Drupal9 Drupal8 Drupal7

Filter: Drupal7

名前説明場所Version
hook_ajax_render_alterAlter the Ajax command data that is sent to the client.core/lib/Drupal/Core/Form/form.api.phpd10,d9,d8,d7
hook_archiver_info_alterAlter archiver information declared by other modules.core/lib/Drupal/Core/File/file.api.phpd10,d9,d8,d7
hook_batch_alterAlter batch information before a batch is processed.core/lib/Drupal/Core/Form/form.api.phpd10,d9,d8,d7
hook_block_view_alterAlter the result of DrupalCoreBlockBlockBase::build().core/modules/block/block.api.phpd10,d9,d8,d7
hook_contextual_links_view_alterAlter a contextual links element before it is rendered.core/modules/contextual/contextual.api.phpd10,d9,d8,d7
hook_countries_alterAlter the default country list.core/core.api.phpd10,d9,d8,d7
hook_cronPerform periodic actions.core/core.api.phpd10,d9,d8,d7
hook_css_alterAlter CSS files before they are output on the page.core/lib/Drupal/Core/Render/theme.api.phpd10,d9,d8,d7
hook_element_info_alterAlter the element type information returned from modules.core/lib/Drupal/Core/Render/theme.api.phpd10,d9,d8,d7
hook_entity_deleteRespond to entity deletion.core/lib/Drupal/Core/Entity/entity.api.phpd10,d9,d8,d7
hook_entity_insertRespond to creation of a new entity.core/lib/Drupal/Core/Entity/entity.api.phpd10,d9,d8,d7
hook_entity_loadAct on entities when loaded.core/lib/Drupal/Core/Entity/entity.api.phpd10,d9,d8,d7
hook_entity_prepare_viewAct on entities as they are being prepared for view.core/lib/Drupal/Core/Entity/entity.api.phpd10,d9,d8,d7
hook_entity_presaveAct on an entity before it is created or updated.core/lib/Drupal/Core/Entity/entity.api.phpd10,d9,d8,d7
hook_entity_updateRespond to updates to an entity.core/lib/Drupal/Core/Entity/entity.api.phpd10,d9,d8,d7
hook_entity_viewAct on entities being assembled before rendering.core/lib/Drupal/Core/Entity/entity.api.phpd10,d9,d8,d7
hook_entity_view_alterAlter the results of the entity build array.core/lib/Drupal/Core/Entity/entity.api.phpd10,d9,d8,d7
hook_entity_view_mode_alterChange the view mode of an entity that is being displayed.core/lib/Drupal/Core/Entity/entity.api.phpd10,d9,d8,d7
hook_field_formatter_info_alterPerform alterations on Field API formatter types.core/modules/field/field.api.phpd10,d9,d8,d7
hook_field_info_alterPerform alterations on Field API field types.core/modules/field/field.api.phpd10,d9,d8,d7
hook_field_info_max_weightReturns the maximum weight for the entity components handled by the module.core/modules/field/field.api.phpd10,d9,d8,d7
hook_field_purge_fieldActs when a field is being purged.core/modules/field/field.api.phpd10,d9,d8,d7
hook_field_widget_info_alterPerform alterations on Field API widget types.core/modules/field/field.api.phpd10,d9,d8,d7
hook_file_copyRespond to a file that has been copied.core/modules/file/file.api.phpd10,d9,d8,d7
hook_file_downloadControl access to private file downloads and specify HTTP headers.core/lib/Drupal/Core/File/file.api.phpd10,d9,d8,d7
hook_file_mimetype_mapping_alterAlter MIME type mappings used to determine MIME type from a file extension.core/lib/Drupal/Core/File/file.api.phpd10,d9,d8,d7
hook_file_moveRespond to a file that has been moved.core/modules/file/file.api.phpd10,d9,d8,d7
hook_file_url_alterAlter the URL to a file.core/lib/Drupal/Core/File/file.api.phpd10,d9,d8,d7
hook_file_validateCheck that files meet a given criteria.core/modules/file/file.api.phpd10,d9,d8,d7
hook_filetransfer_infoRegister information about FileTransfer classes provided by a module.core/lib/Drupal/Core/File/file.api.phpd10,d9,d8,d7
hook_filetransfer_info_alterAlter the FileTransfer class registry.core/lib/Drupal/Core/File/file.api.phpd10,d9,d8,d7
hook_filter_format_disablePerform actions when a text format has been disabled.core/modules/filter/filter.api.phpd10,d9,d8,d7
hook_filter_info_alterPerform alterations on filter definitions.core/modules/filter/filter.api.phpd10,d9,d8,d7
hook_form_alterPerform alterations before a form is rendered.core/lib/Drupal/Core/Form/form.api.phpd10,d9,d8,d7
hook_form_BASE_FORM_ID_alterProvide a form-specific alteration for shared ('base') forms.core/lib/Drupal/Core/Form/form.api.phpd10,d9,d8,d7
hook_form_FORM_ID_alterProvide a form-specific alteration instead of the global hook_form_alter().core/lib/Drupal/Core/Form/form.api.phpd10,d9,d8,d7
hook_helpProvide online user help.core/modules/help/help.api.phpd10,d9,d8,d7
hook_hook_infoDefines one or more hooks that are exposed by a module.core/lib/Drupal/Core/Extension/module.api.phpd10,d9,d8,d7
hook_image_effect_info_alterAlter the information provided in DrupalimageAnnotationImageEffect.core/modules/image/image.api.phpd10,d9,d8,d7
hook_image_style_flushRespond to image style flushing.core/modules/image/image.api.phpd10,d9,d8,d7
hook_installPerform setup tasks when the module is installed.core/lib/Drupal/Core/Extension/module.api.phpd10,d9,d8,d7
hook_install_tasksReturn an array of tasks to be performed by an installation profile.core/lib/Drupal/Core/Extension/module.api.phpd10,d9,d8,d7
hook_install_tasks_alterAlter the full list of installation tasks.core/lib/Drupal/Core/Extension/module.api.phpd10,d9,d8,d7
hook_js_alterPerform necessary alterations to the JavaScript before it is presented on the page.core/lib/Drupal/Core/Render/theme.api.phpd10,d9,d8,d7
hook_language_fallback_candidates_alterAllow modules to alter the language fallback candidates.core/modules/language/language.api.phpd10,d9,d8,d7
hook_language_negotiation_info_alterPerform alterations on language negotiation methods.core/modules/language/language.api.phpd10,d9,d8,d7
hook_language_switch_links_alterPerform alterations on language switcher links.core/lib/Drupal/Core/Language/language.api.phpd10,d9,d8,d7
hook_language_types_infoDefine language types.core/modules/language/language.api.phpd10,d9,d8,d7
hook_language_types_info_alterPerform alterations on language types.core/modules/language/language.api.phpd10,d9,d8,d7
hook_mailPrepares a message based on parameters.core/core.api.phpd10,d9,d8,d7
hook_mail_alterAlter an email message created with MailManagerInterface->mail().core/core.api.phpd10,d9,d8,d7
hook_menu_local_tasks_alterAlter local tasks displayed on the page before they are rendered.core/lib/Drupal/Core/Menu/menu.api.phpd10,d9,d8,d7
hook_module_implements_alterAlter the registry of modules implementing a hook.core/lib/Drupal/Core/Extension/module.api.phpd10,d9,d8,d7
hook_modules_installedPerform necessary actions after modules are installed.core/lib/Drupal/Core/Extension/module.api.phpd10,d9,d8,d7
hook_modules_uninstalledPerform necessary actions after modules are uninstalled.core/lib/Drupal/Core/Extension/module.api.phpd10,d9,d8,d7
hook_node_access_recordsSet permissions for a node to be written to the database.core/modules/node/node.api.phpd10,d9,d8,d7
hook_node_access_records_alterAlter permissions for a node before it is written to the database.core/modules/node/node.api.phpd10,d9,d8,d7
hook_node_grantsInform the node access system what permissions the user has.core/modules/node/node.api.phpd10,d9,d8,d7
hook_node_grants_alterAlter user access rules when trying to view, edit or delete a node.core/modules/node/node.api.phpd10,d9,d8,d7
hook_node_search_resultAct on a node being displayed as a search result.core/modules/node/node.api.phpd10,d9,d8,d7
hook_node_update_indexAct on a node being indexed for searching.core/modules/node/node.api.phpd10,d9,d8,d7
hook_query_alterPerform alterations to a structured query.core/lib/Drupal/Core/Database/database.api.phpd10,d9,d8,d7
hook_query_TAG_alterPerform alterations to a structured query for a given tag.core/lib/Drupal/Core/Database/database.api.phpd10,d9,d8,d7
hook_rankingProvide additional methods of scoring for core search results for nodes.core/modules/node/node.api.phpd10,d9,d8,d7
hook_requirementsCheck installation requirements and do status reporting.core/lib/Drupal/Core/Extension/module.api.phpd10,d9,d8,d7
hook_schemaDefine the current version of the database schema.core/lib/Drupal/Core/Database/database.api.phpd10,d9,d8,d7
hook_search_preprocessPreprocess text for search.core/modules/search/search.api.phpd10,d9,d8,d7
hook_shortcut_default_setReturn the name of a default shortcut set for the provided user account.core/modules/shortcut/shortcut.api.phpd10,d9,d8,d7
hook_system_info_alterAlter the information parsed from module and theme .info.yml files.core/lib/Drupal/Core/Extension/module.api.phpd10,d9,d8,d7
hook_system_themes_page_alterAlters theme operation links.core/modules/system/system.api.phpd10,d9,d8,d7
hook_themeRegister a module or theme's theme implementations.core/lib/Drupal/Core/Render/theme.api.phpd10,d9,d8,d7
hook_theme_registry_alterAlter the theme registry information returned from hook_theme().core/lib/Drupal/Core/Render/theme.api.phpd10,d9,d8,d7
hook_token_infoProvide information about available placeholder tokens and token types.core/lib/Drupal/Core/Utility/token.api.phpd10,d9,d8,d7
hook_token_info_alterAlter the metadata about available placeholder tokens and token types.core/lib/Drupal/Core/Utility/token.api.phpd10,d9,d8,d7
hook_tokensProvide replacement values for placeholder tokens.core/lib/Drupal/Core/Utility/token.api.phpd10,d9,d8,d7
hook_tokens_alterAlter replacement values for placeholder tokens.core/lib/Drupal/Core/Utility/token.api.phpd10,d9,d8,d7
hook_uninstallRemove any information that the module sets.core/lib/Drupal/Core/Extension/module.api.phpd10,d9,d8,d7
hook_update_dependenciesReturn an array of information about module update dependencies.core/lib/Drupal/Core/Extension/module.api.phpd10,d9,d8,d7
hook_update_last_removedReturn a number which is no longer available as hook_update_N().core/lib/Drupal/Core/Extension/module.api.phpd10,d9,d8,d7
hook_update_NPerform a single update between minor versions.core/lib/Drupal/Core/Extension/module.api.phpd10,d9,d8,d7
hook_update_projects_alterAlter the list of projects before fetching data and comparing versions.core/modules/update/update.api.phpd10,d9,d8,d7
hook_update_status_alterAlter the information about available updates for projects.core/modules/update/update.api.phpd10,d9,d8,d7
hook_updater_infoProvide information on Updaters (classes that can update Drupal).core/lib/Drupal/Core/Extension/module.api.phpd10,d9,d8,d7
hook_updater_info_alterAlter the Updater information array.core/lib/Drupal/Core/Extension/module.api.phpd10,d9,d8,d7
hook_user_cancelAct on user account cancellations.core/modules/user/user.api.phpd10,d9,d8,d7
hook_user_cancel_methods_alterModify account cancellation methods.core/modules/user/user.api.phpd10,d9,d8,d7
hook_user_loginThe user just logged in.core/modules/user/user.api.phpd10,d9,d8,d7
hook_user_logoutThe user just logged out.core/modules/user/user.api.phpd10,d9,d8,d7
hook_verify_update_archiveVerify an archive after it has been downloaded and extracted.core/modules/update/update.api.phpd10,d9,d8,d7
callback_queue_worker単一のキューアイテムについて処理を行う。modules/system/system.api.phpd7
hook_action_infoアクションについての情報を宣言する。modules/system/system.api.phpd7
hook_action_info_alter他のモジュールが宣言したアクションについての情報を変更する。modules/system/system.api.phpd7
hook_actions_deleteアクションが削除された後にコードを実行する。modules/system/system.api.phpd7
hook_admin_paths管理用パスを定義する。modules/system/system.api.phpd7
hook_admin_paths_alter他のモジュールが定義した管理用パスを変更する。modules/system/system.api.phpd7
hook_aggregator_fetchAggregator モジュールのフェッチャーを作成する。modules/aggregator/aggregator.api.phpd7
hook_aggregator_fetch_info定義したフェッチャーのタイトルと説明を指定する。modules/aggregator/aggregator.api.phpd7
hook_aggregator_parseAggregator モジュールのパーサーを作成する。modules/aggregator/aggregator.api.phpd7
hook_aggregator_parse_info定義したパーサーのタイトルと説明を指定する。modules/aggregator/aggregator.api.phpd7
hook_aggregator_processAggregator モジュールのプロセッサを作成する。modules/aggregator/aggregator.api.phpd7
hook_aggregator_process_info定義したプロセッサのタイトルと説明を指定する。modules/aggregator/aggregator.api.phpd7
hook_aggregator_remove保存されているフィードデータが削除されたときにコードを実行する。modules/aggregator/aggregator.api.phpd7
hook_archiver_infoアーカイバーを宣言する。modules/system/system.api.phpd7
hook_block_configureブロックの設定フォームを定義する。modules/block/block.api.phpd7
hook_block_infoモジュールが提供するブロックを定義する。modules/block/block.api.phpd7
hook_block_info_alter他のモジュールが定義したブロックの定義をデータベースへの登録の前に変更する。modules/block/block.api.phpd7
hook_block_list_alterブロックリストが描画される前にコードを実行する。modules/block/block.api.phpd7
hook_block_savehook_block_configure() で定義された設定オプションが保存されたときの処理を実行する。modules/block/block.api.phpd7
hook_block_viewブロックの描画済みのビュー、または描画可能なビューを返す。modules/block/block.api.phpd7
hook_block_view_MODULE_DELTA_alter特定のブロックの内容に変更をかける。modules/block/block.api.phpd7
hook_bootすべてのページリクエストに対してセットアップタスクを実行する。modules/system/system.api.phpd7
hook_comment_deleteモデレータがコメントを削除するときにコードを実行する。modules/comment/comment.api.phpd7
hook_comment_insertコメントが挿入されるときにコードを実行する。modules/comment/comment.api.phpd7
hook_comment_loadコメントがデータベースから読み込まれるときにコードを実行する。modules/comment/comment.api.phpd7
hook_comment_presaveコメントのバリデーションが通り、保存される前にコードを実行する。modules/comment/comment.api.phpd7
hook_comment_publishモデレータがコメントを公開にするときにコードを実行する。modules/comment/comment.api.phpd7
hook_comment_unpublishモデレータがコメントを非公開にするときにコードを実行する。modules/comment/comment.api.phpd7
hook_comment_updateコメントが更新されるときにコードを実行する。modules/comment/comment.api.phpd7
hook_comment_viewコメントが表示されるときにコードを実行する。このフックはテーマ化される前にコメントにデータを追加するために使うことができる。modules/comment/comment.api.phpd7
hook_comment_view_alterコメントが閲覧されたときにコードを実行する。構造化されたコンテンツを変更することができる。modules/comment/comment.api.phpd7
hook_cron_queue_info定期的に実行する必要のあるアイテムを持つキューを宣言する。modules/system/system.api.phpd7
hook_cron_queue_info_altercron 処理が走る前に cron キューの情報を変更する。modules/system/system.api.phpd7
hook_custom_theme現在のページで使うためのテーマのマシン名を返す。modules/system/system.api.phpd7
hook_dashboard_regionsダッシュボードにリージョンを追加する。modules/dashboard/dashboard.api.phpd7
hook_dashboard_regions_alter他のモジュールが提供するダッシュボードリージョンを変更する。modules/dashboard/dashboard.api.phpd7
hook_date_format_types追加の日付タイプを定義する。modules/system/system.api.phpd7
hook_date_format_types_alter既存のデータタイプを変更する。modules/system/system.api.phpd7
hook_date_formats追加の日付フォーマットを定義する。modules/system/system.api.phpd7
hook_date_formats_alter他のモジュールが宣言した日付フォーマットを変更する。modules/system/system.api.phpd7
hook_deleteノードの削除時にコードを実行する。modules/node/node.api.phpd7
hook_disableモジュールが無効化される前に必要なアクションを実行する。modules/system/system.api.phpd7
hook_drupal_goto_alterdrupal_goto() でユーザが送られる先のページを変更する。modules/system/system.api.phpd7
hook_element_infoForm API 要素タイプを宣言しデフォルトの値を指定する。modules/system/system.api.phpd7
hook_enableモジュールが有効化された後に必要なアクションを実行する。modules/system/system.api.phpd7
hook_entity_infoエンティティタイプについてベースシステムとフィールド API に伝える。modules/system/system.api.phpd7
hook_entity_info_alterエンティティ情報を変更する。modules/system/system.api.phpd7
hook_entity_query_alterEntityFieldQuery を変更/実行する。modules/system/system.api.phpd7
hook_exitクリーンアップタスクを実行する。modules/system/system.api.phpd7
hook_field_accessユーザがフィールドにアクセスできるかどうかを決定する。modules/field/field.api.phpd7
hook_field_attach_create_bundlefield_attach_create_bundle() のときにコードを実行する。modules/field/field.api.phpd7
hook_field_attach_deletefield_attach_delete() のときにコードを実行する。modules/field/field.api.phpd7
hook_field_attach_delete_bundlefield_attach_delete_bundle() のときにコードを実行する。modules/field/field.api.phpd7
hook_field_attach_delete_revisionfield_attach_delete_revision() のときにコードを実行する。modules/field/field.api.phpd7
hook_field_attach_formfield_attach_form() のときにコードを実行する。modules/field/field.api.phpd7
hook_field_attach_insertfield_attach_insert() のときにコードを実行する。modules/field/field.api.phpd7
hook_field_attach_loadfield_attach_load() のときにコードを実行する。modules/field/field.api.phpd7
hook_field_attach_prepare_translation_alterfield_attach_prepare_translation() に対して変更を加える。modules/field/field.api.phpd7
hook_field_attach_preprocess_alterfield_attach_preprocess() 変数に対して変更を加える。modules/field/field.api.phpd7
hook_field_attach_presavefield_attach_presave() のときにコードを実行する。modules/field/field.api.phpd7
hook_field_attach_purgefield_purge_data() のときにコードを実行する。modules/field/field.api.phpd7
hook_field_attach_rename_bundlefield_attach_rename_bundle() のときにコードを実行する。modules/field/field.api.phpd7
hook_field_attach_submitfield_attach_submit() のときにコードを実行する。modules/field/field.api.phpd7
hook_field_attach_updatefield_attach_update() のときにコードを実行する。modules/field/field.api.phpd7
hook_field_attach_validatefield_attach_validate() のときにコードを実行する。modules/field/field.api.phpd7
hook_field_attach_view_alterfield_attach_view() や field_view_field() に対して変更を加える。modules/field/field.api.phpd7
hook_field_available_languages_alterfield_available_languages() 変数を変更する。modules/field/field.api.phpd7
hook_field_create_fieldフィールドが作成されるときにコードを実行する。modules/field/field.api.phpd7
hook_field_create_instanceフィールドインスタンスが作成されるときにコードを実行する。modules/field/field.api.phpd7
hook_field_deleteこのモジュールのフィールドデータに対してオリジナルの削除処理を定義する。modules/field/field.api.phpd7
hook_field_delete_fieldフィールドが削除されるときにコードを実行する。modules/field/field.api.phpd7
hook_field_delete_instanceフィールドインスタンスが削除されるときにコードを実行する。modules/field/field.api.phpd7
hook_field_delete_revisionこのモジュールのフィールドタイプに対してオリジナルのリビジョン削除処理を定義する。modules/field/field.api.phpd7
hook_field_display_alterフィールドの表示前にその表示設定を変更する。modules/field/field.api.phpd7
hook_field_display_ENTITY_TYPE_alter特定のエンティティタイプのフィールドが表示される前にその表示設定を変更する。modules/field/field.api.phpd7
hook_field_extra_fields「擬似フィールド」コンポーネントをフィールド追加可能なエンティティに見せる。modules/field/field.api.phpd7
hook_field_extra_fields_alterフィールド追加可能なエンティティに対する「擬似フィールド」コンポーネントを変更する。modules/field/field.api.phpd7
hook_field_extra_fields_display_alterエンティティの表示前に擬似フィールドの表示設定を変更する。modules/field/field.api.phpd7
hook_field_formatter_infoフィールド API フォーマッタータイプを定義する。modules/field/field.api.phpd7
hook_field_formatter_prepare_viewフィールドの値が表示されるときにフォーマッターに情報を読み込ませる。modules/field/field.api.phpd7
hook_field_formatter_viewフィールドの値に対してレンダーアレイを構築する。modules/field/field.api.phpd7
hook_field_infoフィールド API フィールドタイプを定義する。modules/field/field.api.phpd7
hook_field_insertこのモジュールのフィールドデータに対してオリジナルの挿入処理を定義する。modules/field/field.api.phpd7
hook_field_is_emptyフィールドタイプの空要素を定義する。modules/field/field.api.phpd7
hook_field_language_alterfield_language() の変数に変更を加える。modules/field/field.api.phpd7
hook_field_loadこのモジュールのフィールドタイプのオリジナルの読み込み処理を定義する。modules/field/field.api.phpd7
hook_field_prepare_translationこのモジュールのフィールドタイプのオリジナルの prepare_translation の処理を定義する。modules/field/field.api.phpd7
hook_field_prepare_viewフィールドの表示用に値を準備する。modules/field/field.api.phpd7
hook_field_presaveこのモジュールのフィールドタイプにオリジナルの保存前の処理を定義する。modules/field/field.api.phpd7
hook_field_purge_instanceフィールドインスタンスがパージされるときにコードを実行する。modules/field/field.api.phpd7
hook_field_read_fieldフィールドがデータベースから読み込まれるときにコードを実行する。modules/field/field.api.phpd7
hook_field_read_instanceフィールドインスタンスが読み込まれるときにコードを実行する。modules/field/field.api.phpd7
hook_field_schemaフィールド構造のためのフィールド API スキーマを定義する。modules/field/field.api.phpd7
hook_field_storage_create_field新しいフィールドの作成時にコードを実行する。modules/field/field.api.phpd7
hook_field_storage_deleteエンティティのすべてのフィールドデータを削除する。modules/field/field.api.phpd7
hook_field_storage_delete_fieldフィールド削除のときにコードを実行する。modules/field/field.api.phpd7
hook_field_storage_delete_instanceフィールドインスタンス削除のときにコードを実行する。modules/field/field.api.phpd7
hook_field_storage_delete_revisionエンティティのフィールドデータの単一のリビジョンを削除する。modules/field/field.api.phpd7
hook_field_storage_detailsフィールドのストレージの内部の詳細を示す。modules/field/field.api.phpd7
hook_field_storage_details_alterフィールド API ストレージの詳細に変更を加える。modules/field/field.api.phpd7
hook_field_storage_infoフィールド API ストレージのバックエンドを示す。modules/field/field.api.phpd7
hook_field_storage_info_alterフィールド API ストレージのタイプに変更を加える。modules/field/field.api.phpd7
hook_field_storage_load一式のエンティティのフィールドデータを読み込む。modules/field/field.api.phpd7
hook_field_storage_pre_insertストレージのバックエンドがフィールドデータを挿入するときにコードを実行する。modules/field/field.api.phpd7
hook_field_storage_pre_loadストレージのバックエンドがフィールドデータを読み込むときにコードを実行する。modules/field/field.api.phpd7
hook_field_storage_pre_updateストレージのバックエンドがフィールドデータを更新するときにコードを実行する。modules/field/field.api.phpd7
hook_field_storage_purgeフィールドデータがパージされるときにフィールドストレージの情報を削除する。modules/field/field.api.phpd7
hook_field_storage_purge_fieldフィールドコードがパージされるときにフィールドストレージの情報を削除する。modules/field/field.api.phpd7
hook_field_storage_purge_field_instanceフィールドインスタンスがパージされるときにフィールドストレージの情報を削除する。modules/field/field.api.phpd7
hook_field_storage_queryEntityFieldQuery を実行する。modules/field/field.api.phpd7
hook_field_storage_update_fieldフィールドのストレージ情報を更新する。modules/field/field.api.phpd7
hook_field_storage_writeエンティティのフィールドデータを記述する。modules/field/field.api.phpd7
hook_field_updateこのモジュールのフィールドデータのオリジナルの更新処理を定義する。modules/field/field.api.phpd7
hook_field_update_fieldフィールドが更新されるときにコードを実行する。modules/field/field.api.phpd7
hook_field_update_forbidフィールドの更新が発生するのを禁止する。modules/field/field.api.phpd7
hook_field_update_instanceフィールドインスタンスが更新されるときにコードを実行する。modules/field/field.api.phpd7
hook_field_validateこのモジュールのフィールドデータを検証する。modules/field/field.api.phpd7
hook_field_widget_errorフィールドレベルのバリデーションエラーのフラグを上げる。modules/field/field.api.phpd7
hook_field_widget_form単一のフィールドウィジェットのためのフォームを返す。modules/field/field.api.phpd7
hook_field_widget_form_alter他のモジュールが提供するフィールドウィジェットフォームを変更する。modules/field/field.api.phpd7
hook_field_widget_infoフィールド API ウィジェットタイプを定義する。modules/field/field.api.phpd7
hook_field_widget_properties_alterフィールドインスタンスのウィジェットプロパティの表示前に変更を加える。modules/field/field.api.phpd7
hook_field_widget_properties_ENTITY_TYPE_alter特定のエンティティタイプのフィールドインスタンスのウィジェットプロパティの表示前に変更を加える。modules/field/field.api.phpd7
hook_field_widget_WIDGET_TYPE_form_alter他のモジュールが提供する特定のウィジェットのウィジェットフォームを変更する。modules/field/field.api.phpd7
hook_file_deleteファイルが削除されるときにコードを実行する。modules/system/system.api.phpd7
hook_file_insertファイルが追加されるときにコードを実行する。modules/system/system.api.phpd7
hook_file_loadファイルオブジェクトの追加の情報を読み込む。modules/system/system.api.phpd7
hook_file_presaveファイルが挿入/更新されるときにコードを実行する。modules/system/system.api.phpd7
hook_file_updateファイルが更新されるときにコードを実行する。modules/system/system.api.phpd7
hook_filter_format_insert新しいテキストフォーマットが作成されたときにコードを実行する。modules/filter/filter.api.phpd7
hook_filter_format_updateテキストフォーマットが更新されたときにコードを実行する。modules/filter/filter.api.phpd7
hook_filter_infoコンテンツフィルターを定義する。modules/filter/filter.api.phpd7
hook_flush_cachesクリアするキャッシュテーブルのリストを追加する。modules/system/system.api.phpd7
hook_formノード編集フォームを表示する。modules/node/node.api.phpd7
hook_formsform_ids をビルダー関数にマップする。modules/system/system.api.phpd7
hook_hook_info_alterhook_hook_info() に変更を加える。modules/system/system.api.phpd7
hook_html_head_alterdrupal_get_html_head() が描画する前に XHTML HEAD タグを変更する。modules/system/system.api.phpd7
hook_image_default_stylesDrupal 内で広く再利用するためにモジュールベースのイメージスタイルを提供する。modules/image/image.api.phpd7
hook_image_effect_infoモジュールが提供するイメージエフェクトの情報を定義する。modules/image/image.api.phpd7
hook_image_style_deleteイメージスタイルの削除のときにコードを実行する。modules/image/image.api.phpd7
hook_image_style_saveイメージスタイルの更新のときにコードを実行する。modules/image/image.api.phpd7
hook_image_styles_alter他のモジュールやユーザが提供したイメージスタイルに変更を加える。modules/image/image.api.phpd7
hook_image_toolkitsこのモジュールが提供するイメージツールキットを定義する。modules/system/system.api.phpd7
hook_initキャッシュされていないページリクエストに対してセットアップタスクを実行する。modules/system/system.api.phpd7
hook_insert新しいノードの作成のときにコードを実行する。modules/node/node.api.phpd7
hook_language_init言語の初期化が実行されたときにモジュールが何らかの処理を行えるようにする。modules/system/language.api.phpd7
hook_language_negotiation_info言語のネゴシエーションプロバイダを定義する。modules/system/language.api.phpd7
hook_libraryモジュールに関連づいた JavaScript/CSS ライブラリを登録する。modules/system/system.api.phpd7
hook_library_alterJavaScript/CSS ライブラリのレジストリを変更する。modules/system/system.api.phpd7
hook_loadデータベースからノードが読み込まれたときにコードを実行する。modules/node/node.api.phpd7
hook_locale翻訳可能なモジュールのテキストグループを定義する。modules/locale/locale.api.phpd7
hook_menuメニューアイテムとページコールバックを定義する。modules/system/system.api.phpd7
hook_menu_alterhook_menu() の実行後 {menu_router} テーブルに保存されるデータを変更する。modules/system/system.api.phpd7
hook_menu_breadcrumb_alterアクティブトレイルのリンクがパンくずとして描画される前に変更する。modules/system/system.api.phpd7
hook_menu_contextual_links_alterコンテクスチュアルリンクを描画前に変更する。modules/system/system.api.phpd7
hook_menu_deleteカスタムメニューが削除されるときにコードを実行する。modules/menu/menu.api.phpd7
hook_menu_get_item_alterメニュールーターアイテムがデータベースやキャッシュから取得された直後に変更する。modules/system/system.api.phpd7
hook_menu_insertカスタムメニューが作成されるときにコードを実行する。modules/menu/menu.api.phpd7
hook_menu_link_altermenu_link_save() によって {menu_links} テーブルに保存されるデータを変更する。modules/system/system.api.phpd7
hook_menu_link_deleteメニューリンクが削除されたときにコードを実行する。modules/system/system.api.phpd7
hook_menu_link_insertメニューリンクが作成されたときにコードを実行する。modules/system/system.api.phpd7
hook_menu_link_updateメニューリンクが更新されたときにコードを実行する。modules/system/system.api.phpd7
hook_menu_site_status_alterメニューディスパッチの前にサイトステータスをコントロールする。modules/system/system.api.phpd7
hook_menu_updateカスタムメニューが更新されるときにコードを実行する。modules/menu/menu.api.phpd7
hook_modules_disabledモジュールが無効化された後に必要なアクションを実行する。modules/system/system.api.phpd7
hook_modules_enabledモジュールが有効化された後に必要な処理を実行する。modules/system/system.api.phpd7
hook_multilingual_settings_changed言語設定が変更されるときにコードを実行する。modules/locale/locale.api.phpd7
hook_node_accessノードへのアクセスをコントロールする。modules/node/node.api.phpd7
hook_node_deleteノードが削除されるときにコードを実行する。modules/node/node.api.phpd7
hook_node_infoモジュールが提供するノードタイプを定義する。modules/node/node.api.phpd7
hook_node_insert新しいノードの作成の際にコードを実行する。modules/node/node.api.phpd7
hook_node_load任意のノードがデータベースから読み込まれるときにコードを実行する。modules/node/node.api.phpd7
hook_node_operationsマスのノードオペレーションを加える。modules/node/node.api.phpd7
hook_node_prepare追加/編集フォームに表示される前のノードオブジェクトに処理を加える。modules/node/node.api.phpd7
hook_node_presave追加/更新されるノードに処理を加える。modules/node/node.api.phpd7
hook_node_revision_deleteノードリビジョンの削除のときにコードを実行する。modules/node/node.api.phpd7
hook_node_submit検証済のフォームの値がコピーされたノードに処理を加える。modules/node/node.api.phpd7
hook_node_type_deleteノードタイプ(コンテンツタイプ)が削除されたときに処理を実行する。modules/node/node.api.phpd7
hook_node_type_insertノードタイプ(コンテンツタイプ)が作成されたときに処理を実行する。modules/node/node.api.phpd7
hook_node_type_updateノードタイプ(コンテンツタイプ)が更新されたときに処理を実行する。modules/node/node.api.phpd7
hook_node_updateノードが更新されたときに処理を実行する。modules/node/node.api.phpd7
hook_node_validateノードが作成/更新される前にノードのバリデーション処理を行う。modules/node/node.api.phpd7
hook_node_viewノードが描画処理に入る前にコードを実行する。modules/node/node.api.phpd7
hook_node_view_alternode_view() の結果を変更する。modules/node/node.api.phpd7
hook_openidモジュールが OpenID リクエストパラメータを変更できる。modules/openid/openid.api.phpd7
hook_openid_discovery_method_infoモジュールが OpenID ディスカバリーメソッドを宣言できる。modules/openid/openid.api.phpd7
hook_openid_discovery_method_info_alterモジュールがディカバリーメソッドを変更できる。modules/openid/openid.api.phpd7
hook_openid_normalization_method_infoモジュールが OpenID ノーマライゼーションメソッドを宣言できる。modules/openid/openid.api.phpd7
hook_openid_normalization_method_info_alterモジュールがノーマライゼーションメソッドを変更できる。modules/openid/openid.api.phpd7
hook_openid_responseOpenID のログイン成功時にモジュールが処理を実行できる。modules/openid/openid.api.phpd7
hook_overlay_child_initializeオーバーレイの子ウィンドウが初期化されるときにモジュールが処理を実行できる。modules/overlay/overlay.api.phpd7
hook_overlay_parent_initializeオーバーレイの親ウィンドウが初期化されるときにモジュールが処理を実行できる。modules/overlay/overlay.api.phpd7
hook_page_alterページが描画される前に変更を加える。modules/system/system.api.phpd7
hook_page_buildページが描画される前にページに要素を加える。modules/system/system.api.phpd7
hook_page_delivery_callback_alterページコールバックの結果をブラウザに送信するために使うデリバリーコールバックを変更する。modules/system/system.api.phpd7
hook_path_deleteパスの削除時にコードを実行する。modules/path/path.api.phpd7
hook_path_insertパスの挿入時にコードを実行する。modules/path/path.api.phpd7
hook_path_updateパスの更新にコードを実行する。modules/path/path.api.phpd7
hook_permissionユーザパーミッションを定義する。modules/system/system.api.phpd7
hook_prepareノードオブジェクトが追加/編集フォームで表示されるときにコードを実行する。modules/node/node.api.phpd7
hook_rdf_mappingモジュールがフィールドバンドルのための RDF マッピングを定義できる。modules/rdf/rdf.api.phpd7
hook_registry_files_alterレジストリがパースしたファイルのリストにひつよな変更を加える。modules/system/system.api.phpd7
hook_schema_alter既存のデータベーススキーマに変更を加える。modules/system/system.api.phpd7
hook_search_accessオリジナルの検索ルーチンに対するアクセスを定義する。modules/search/search.api.phpd7
hook_search_admin検索設定フォームに要素を追加する。modules/search/search.api.phpd7
hook_search_executeキーワードのセットに対して検索を実行する。modules/search/search.api.phpd7
hook_search_infoオリジナルの検索タイプを定義する。modules/search/search.api.phpd7
hook_search_page検索結果の描画を上書きする。modules/search/search.api.phpd7
hook_search_reset検索インデックスが再構築される前にコードを実行する。modules/search/search.api.phpd7
hook_search_statusインデクシングのステータスをレポートする。modules/search/search.api.phpd7
hook_simpletest_alterテストのリストを変更する。modules/simpletest/simpletest.api.phpd7
hook_stream_wrappersモジュールに関連づけられた PHP ストリームラッパーの実装を登録する。modules/system/system.api.phpd7
hook_stream_wrappers_alterPHP ストリームラッパーの実装のリストに変更を加える。modules/system/system.api.phpd7
hook_system_theme_infoモジュールが提供する追加の theme を返す。modules/system/system.api.phpd7
hook_taxonomy_term_deleteタクソノミータームが削除されたときに処理を実行する。modules/taxonomy/taxonomy.api.phpd7
hook_taxonomy_term_insertタクソノミータームが作成されたときに処理を実行する。modules/taxonomy/taxonomy.api.phpd7
hook_taxonomy_term_loadタクソノミータームが読み込まれたときに処理を実行する。modules/taxonomy/taxonomy.api.phpd7
hook_taxonomy_term_presaveタクソノミータームが保存される前に処理を実行する。modules/taxonomy/taxonomy.api.phpd7
hook_taxonomy_term_updateタクソノミータームが更新されたときに処理を実行する。modules/taxonomy/taxonomy.api.phpd7
hook_taxonomy_term_viewタクソノミータームが描画用に用意されたときに処理を実行する。modules/taxonomy/taxonomy.api.phpd7
hook_taxonomy_term_view_altertaxonomy_term_view() の結果を変更する。modules/taxonomy/taxonomy.api.phpd7
hook_taxonomy_vocabulary_deleteタクソノミーボキャブラリーの削除のときにコードを実行する。modules/taxonomy/taxonomy.api.phpd7
hook_taxonomy_vocabulary_insertタクソノミーボキャブラリーが挿入されるときにコードを実行する。modules/taxonomy/taxonomy.api.phpd7
hook_taxonomy_vocabulary_loadタクソノミーボキャブラリーが読み込まれるときにコードを実行する。modules/taxonomy/taxonomy.api.phpd7
hook_taxonomy_vocabulary_presaveタクソノミーボキャブラリーが保存される前にコードを実行する。modules/taxonomy/taxonomy.api.phpd7
hook_taxonomy_vocabulary_updateタクソノミーボキャブラリーが更新されるときにコードを実行する。modules/taxonomy/taxonomy.api.phpd7
hook_test_finished個別のテストの実行が完了したときに処理を実行する。modules/simpletest/simpletest.api.phpd7
hook_test_group_finishedテストグループの実行が完了したときに処理を実行する。modules/simpletest/simpletest.api.phpd7
hook_test_group_startedテストグループの実行が開始したときに処理を時刻する。modules/simpletest/simpletest.api.phpd7
hook_translated_menu_link_alterメニューリンクの翻訳後・描画前にメニューリンクを変更する。modules/system/system.api.phpd7
hook_trigger_infoユーザがアクションを割り当てられるトリガー(イベント)を宣言する。modules/trigger/trigger.api.phpd7
hook_trigger_info_alterhook_trigger_info() が宣言したトリガーを変更する。modules/trigger/trigger.api.phpd7
hook_updateノードが更新されたときに処理を実行する。modules/node/node.api.phpd7
hook_update_indexこのモジュールの検索インデックスを更新する。modules/search/search.api.phpd7
hook_url_inbound_alterインバウンド URL リクエストを変更する。modules/system/system.api.phpd7
hook_url_outbound_alterアウトバウンド URL を変更する。modules/system/system.api.phpd7
hook_user_categoriesユーザ設定やプロフィール情報カテゴリのリストを取得する。modules/user/user.api.phpd7
hook_user_deleteユーザアカウントが削除されたときに処理を実行する。modules/user/user.api.phpd7
hook_user_insertユーザアカウントが作成されたときに処理を実行する。modules/user/user.api.phpd7
hook_user_loadユーザオブジェクトがデータベースから読み込まれたときに処理を実行する。modules/user/user.api.phpd7
hook_user_operationsマスのユーザオペレーションを追加する。modules/user/user.api.phpd7
hook_user_presaveユーザアカウントが作成/更新される前に処理を実行する。modules/user/user.api.phpd7
hook_user_role_deleteユーザの役割が削除されたときに処理を実行する。modules/user/user.api.phpd7
hook_user_role_insertユーザの役割が作成されたときに処理を実行する。modules/user/user.api.phpd7
hook_user_role_presaveユーザの役割が作成/更新される前に処理を実行する。modules/user/user.api.phpd7
hook_user_role_updateユーザの役割が更新されたときに処理を実行する。modules/user/user.api.phpd7
hook_user_updateユーザアカウントが更新されたときに処理を実行する。modules/user/user.api.phpd7
hook_user_viewユーザのアカウント情報が表示される前に処理を実行する。modules/user/user.api.phpd7
hook_user_view_alterユーザのアカウント情報が表示される前に構造化されたコンテンツを変更する。modules/user/user.api.phpd7
hook_username_alterユーザに表示されるユーザ名を変更する。modules/system/system.api.phpd7
hook_validateノードの作成/更新前にノードバリデーションを実行する。modules/node/node.api.phpd7
hook_viewノードを表示する。modules/node/node.api.phpd7
hook_watchdogイベントメッセージをログに記録する。modules/system/system.api.phpd7
hook_xmlrpcXML-RPC コールバックを定義する。modules/system/system.api.phpd7
hook_xmlrpc_alterXML-RPC メソッドが呼ばれる前にその定義を変更する。modules/system/system.api.phpd7
module_hookモジュールがフックを実装しているかどうかを調べる。includes/module.incd7
module_hook_infohook_hook_info() で宣言されているフックのリストを取得する。includes/module.incd7
module_implementsフックを実装しているモジュールを返す。includes/module.incd7
module_implements_write_cacheフック実装のキャッシュを書き込む。includes/module.incd7
module_invoke特定のモジュールの特定のフックを実行する。includes/module.incd7
module_invoke_allすべての有効化されたモジュールの特定のフックを実行する。includes/module.incd7
hook_rdf_namespacesAllow modules to define namespaces for RDF mappings.core/modules/rdf/rdf.api.phpd9,d7

タイトルとURLをコピーしました