The Advanced Help module provides a framework that allows module and theme developers integrate help texts in a Drupal site.
It provides a framework for creating and maintaing HTML help texts.
It may also be used to display a module's or
theme's README
-file on the screen.
Enabling the module
When you enable the module, a new tab with the legend “Advanced help” will show up under “Help”:

Links to the help texts are under this tab.
Creating help
Modules and themes utilizing Advanced Help should
create a subdirectory named help
inside their own main
directory. Place the file
MODULENAME.help.ini (resp. THEMENAME.help.ini) in this subdirectory.
formatted similar to the following example:
[advanced help settings] navigation = FALSE show readme = FALSE [about-example] title = About the help example weight = -11 [lorem] title = Lorem ipsum weight = -10 [etiam] title = Etiam ultricies parent = lorem line break = TRUE
This file defines some global settings as well as three help topics (inside the square brackets), and some settings for them. See: “Advanced help .ini file format” for the full list of settings.
Characters ?{}|&~!()^"
should not be used anywhere in
the title as they have a special meaning, unless the the string is
quoted. An error message like the one below indicates that quotes
should be used:
Warning: syntax error, unexpected '(' in example.help.ini …
Linking to help
All topics are addressed by the module or theme providing the
topic, and by the topic id. To produce a themed link to popup about a
topic, there is a theme
function theme_advanced_help_topic()
accepting three
named parameters passed in an array:
'module'
: The machine name of the module that owns this help topic.'topic'
: The identifier for the topic (to link to topic) or'toc'
(to link to index page).'type'
: The type of link to create:- '
icon'
to display the question mark icon. - '
title'
to display the topic's title. - any other text to display the text. Wrap it in
t()
to make it translatable.
- '
The following example shows how to link to a popup with the
topic 'about-example'
owned by the module
'help_example'
using the question mark icon:
// Create the question mark icon. $output = theme('advanced_help_topic', array( 'module' => 'help_example', 'topic' => 'about-example', 'type' => 'icon', )); // Append some explanatory text. $output .= ' ' . t('Click the help icon!');
This produces the following output:
<a class="advanced-help-link" title="About the help example" onclick="var w=window.open(this.href, 'advanced_help_window', 'width=500,height=500,scrollbars,resizable'); w.focus(); return false;" href="/help/help_example/about-example?popup=1"> <span>Help</span> </a> Click the help icon! </div>
This produces a clickable help icon like the one shown below:

See the source code of demo module Advanced Help Example for link examples.
You may link to other help topics inside your HTML help file using this format:
<a href="&topic:moduleshortname/moduletopic&">anchortext</a> <a href="&topic:help_example/lorem&">Lorem ipsum</a>
The second line show how to link to a help page provided by the
module with shortname help_example
, with the
topic lorem
.
To reference items within the help directory, such as images you wish to embed within the help text, use:
<img src="&path&example.png"/> <img src="&trans_path&example.png"/>
The trans_path
keyword refers to a translated version
of the image in the translation directory and may be used if it
differs from the original.
To reference any normal path in the site, use:
<a href="&base_url&admin/settings/site-configuration">anchor text</a>
NOTE: In previous versions Advanced
help did not require the &'s to be wrapped around
topic
, path
, and base_url
.
This is currently still supported, but will be removed in a future
version. By adding the &'s these tokens are now not limited
to href=""
and src=""
parameters.
Hiding help files
When this module is installed, users with the
view advanced help index
permission can access the advanced help index by navigating to
.
Additional permissions
view advanced help topic
and
view advanced help popup
allows the user to click
trough to the actual help pages and popups.
By taking away these permissions from a role, a site can “hide” the direct access to these topics and popup. Note that this does not restrict access, as the contents of an unprotected HTML-file on a Drupal website can be viewed by anyone who know (or is able to guess) its URL.
To protect these files, place the following four lines in a file
named .htaccess
in project's help
directory:
<Files *\.html> Order Allow,Deny Deny from all </Files>
It as the responsibility of the site manager to make sure this type of protection is in place if the site has help files that merits protection from direct access.
See also this tracker in the project's issue queue: #1980936 Typing complete path to .html help files in module bypasses user permissions.
Search
To enable advanced help search, navigate to
. Scroll down to Active search modules and tick the box to the left of “Advanced help”. The search form will appear on the top of the advanced help index pages.If the core Search module is enabled, the contents of the advanced help framework will be indexed on cron. If you enable new modules or themes and wish to immediately index their help text, navigate to
and click the link “run cron manually”.