hook_help

オンラインユーザーヘルプを提供します。

hook_help() を実装することで、モジュールは、ユーザーにモジュールを利用する際のヘルプドキュメントを作成することが出来ます。開発者向けのヘルプは、通常はコード内のファンクションヘッダのコメント部分に記載するか、特別にAPIの用例ファイルを作成しその中に記載するようにします。

詳しい用例はpage_example.moduleをご覧ください。

パラメータ

$path: ヘルプを表示するための hook_menu() で定義されるメニュールーターのパスです。たとえば 'admin/people' や 'user/register' のようなものです。ワイルドカードを含む場合は、パスに'%'を含めて記述します。'%オートローダー'のような場合も同様です。例えば、個々のノードページは'node/%' か、'node/%/view' と同等のパスを持ちます。admin/help ページにリストされるモジュール全体としてのヘルプを提供するには、そのパスを'#'に続く文字列と一致するようにします。: 'admin/help#modulename' のようにすると、モジュールのメインのヘルプテキストのパスは'admin/help/modulename' となり、admin/help ページからリンクされます。

$arg: パスを分割した配列で、arg() 関数に対応しています。ワイルドカードを含むパスにおいて、モジュールが特定のページにヘルプを表示したい場合などに使用できます。例えば、'user/1' のページにヘルプを表示させたい場合、'user/%' といったワイルドカードを含むパスに、$arg[1] == '1' を指定することで、それが可能となります。このフックは現在のページを構築する際にコールされるとは限らないため、arg() 関数をここで直接コールすることはせず、引数を使用してください。場合によっては、$arg が空の文字列を含む場合があることに注意してください。$arg[0] から $arg[11] までが常にセットされます。

返り値

翻訳済みのヘルプテキストを返します。

関連トピック

Hooks
モジュールにDrupalコアとの相互作用を可能にします。

Code

modules/help/help.api.php, line 48

<?php
function hook_help($path, $arg) {
  switch ($path) {
    // Main module help for the block module
    case 'admin/help#block':
      return '<p>' . t('Blocks are boxes of content rendered into an area, or region, of a web page. The default theme Bartik, for example, implements the regions "Sidebar first", "Sidebar second", "Featured", "Content", "Header", "Footer", etc., and a block may appear in any one of these areas. The <a href="@blocks">blocks administration page</a> provides a drag-and-drop interface for assigning a block to a region, and for controlling the order of blocks within regions.', array('@blocks' => url('admin/structure/block'))) . '</p>';

      // Help for another path in the block module
    case 'admin/structure/block':
      return '<p>' . t('This page provides a drag-and-drop interface for assigning a block to a region, and for controlling the order of blocks within regions. Since not all themes implement the same regions, or display regions in the same way, blocks are positioned on a per-theme basis. Remember that your changes will not be saved until you click the <em>Save blocks</em> button at the bottom of the page.') . '</p>';
  }
}
?>
タグ: 
コア: 
Drupal7