function theme_get_registry in Drupal 7
Same name and namespace in other branches
- 8 core/includes/theme.inc \theme_get_registry()
- 6 includes/theme.inc \theme_get_registry()
- 9 core/includes/theme.inc \theme_get_registry()
Gets the theme registry.
Parameters
$complete: Optional boolean to indicate whether to return the complete theme registry array or an instance of the ThemeRegistry class. If TRUE, the complete theme registry array will be returned. This is useful if you want to foreach over the whole registry, use array_* functions or inspect it in a debugger. If FALSE, an instance of the ThemeRegistry class will be returned, this provides an ArrayObject which allows it to be accessed with array syntax and isset(), and should be more lightweight than the full registry. Defaults to TRUE.
Return value
The complete theme registry array, or an instance of the ThemeRegistry class.
8 calls to theme_get_registry()
- contextual_preprocess in modules/
contextual/ contextual.module - Implements hook_preprocess().
- hook_preprocess in modules/
system/ theme.api.php - Preprocess theme variables for templates.
- l in includes/
common.inc - Formats an internal or external URL link as an HTML anchor tag.
- theme in includes/
theme.inc - Generates themed output.
- ThemeDebugMarkupTestCase::testDebugOutput in modules/
simpletest/ tests/ theme.test - Tests debug markup added to template output.
1 string reference to 'theme_get_registry'
- drupal_theme_rebuild in includes/
theme.inc - Forces the system to rebuild the theme registry.
File
- includes/
theme.inc, line 255 - The theme system, which controls the output of Drupal.
Code
function theme_get_registry($complete = TRUE) {
// Use the advanced drupal_static() pattern, since this is called very often.
static $drupal_static_fast;
if (!isset($drupal_static_fast)) {
$drupal_static_fast['registry'] =& drupal_static('theme_get_registry');
}
$theme_registry =& $drupal_static_fast['registry'];
// Initialize the theme, if this is called early in the bootstrap, or after
// static variables have been reset.
if (!is_array($theme_registry)) {
drupal_theme_initialize();
$theme_registry = array();
}
$key = (int) $complete;
if (!isset($theme_registry[$key])) {
list($callback, $arguments) = _theme_registry_callback();
if (!$complete) {
$arguments[] = FALSE;
}
$theme_registry[$key] = call_user_func_array($callback, $arguments);
}
return $theme_registry[$key];
}