_phptemplate_default
themes/engines/phptemplate/phptemplate.engine, строка 379
- Версии
- 5
_phptemplate_default($hook, $variables, $suggestions = array(), $extension = '.tpl.php')
Default callback for PHPTemplate.
Load a template file, and pass the variable array to it.
If the suggested file is not found, PHPTemplate will attempt to use
a $hook
.tpl.php file in the template directory, and failing that a
$hook
.tpl.php in the PHPTemplate directory.
Параметры
$hook
Название используемой функции темизации.
$variables
Последовательный массив переменных, которые передаются в функцию темизации.
$suggestions
An array of suggested template files to use. This may include a path when
the suggested template is contained within a sub-directory of the theme.
They are set from _phptemplate_variables() or the theming hook invoking
_phptemplate_callback().
Код
<?php
function _phptemplate_default($hook, $variables, $suggestions = array(), $extension = '.tpl.php') {
global $theme_engine;
// Loop through any suggestions in FIFO order.
$suggestions = array_reverse($suggestions);
foreach ($suggestions as $suggestion) {
if (!empty($suggestion) && file_exists(path_to_theme() .'/'. $suggestion . $extension)) {
$file = path_to_theme() .'/'. $suggestion . $extension;
break;
}
}
if (!isset($file)) {
if (file_exists(path_to_theme() ."/$hook$extension")) {
$file = path_to_theme() ."/$hook$extension";
}
else {
if (in_array($hook, array('node', 'block', 'box', 'comment'))) {
$file = path_to_engine() .'/'. $hook . $extension;
}
else {
$variables['hook'] = $hook;
watchdog('error', t('%engine.engine was instructed to override the %name theme function, but no valid template file was found.', array('%engine' => $theme_engine, '%name' => $hook)));
$file = path_to_engine() .'/default'. $extension;
}
}
}
if (isset($file)) {
return call_user_func('_'. $theme_engine .'_render', $file, $variables);
}
}
?>
Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии