function themekey_example_themekey_properties in ThemeKey 7
Same name and namespace in other branches
- 7.3 themekey_example/themekey_example.module \themekey_example_themekey_properties()
- 7.2 themekey_example/themekey_example.module \themekey_example_themekey_properties()
Implements hook_themekey_properties().
A mapping function declared here only runs if really required during a page request.
So complicated, time and memory consuming properties should be added to ThemeKey by implementing hook_themekey_properties().
File
- themekey_example/
themekey_example.module, line 22 - ThemeKey Example demonstrates the usage of ThemeKeys API to add more properties to ThemeKey.
Code
function themekey_example_themekey_properties() {
// Attributes of properties
$attributes = array();
$attributes['example:number_one'] = array(
'description' => t('Example: always returns "1"'),
'validator' => 'themekey_example_validator_number_one',
'file' => 'themekey_example_validators.inc',
'page cache' => THEMEKEY_PAGECACHE_SUPPORTED,
);
$attributes['example:global_one'] = array(
'description' => t('Example: always returns "1"'),
'validator' => 'themekey_example_validator_number_one',
'file' => 'themekey_example_validators.inc',
'page cache' => THEMEKEY_PAGECACHE_SUPPORTED,
);
$attributes['example:path_number'] = array(
'description' => t('Example: always returns "1"'),
'validator' => 'themekey_validator_ctype_digit',
'page cache' => THEMEKEY_PAGECACHE_SUPPORTED,
);
// Mapping functions
$maps = array();
$maps[] = array(
'src' => 'system:dummy',
'dst' => 'example:number_one',
'callback' => 'themekey_example_dummy2number_one',
'file' => 'themekey_example_mappers.inc',
);
return array(
'attributes' => $attributes,
'maps' => $maps,
);
}