Drupal hook_theme error
Я пытаюсь применить пользовательскую тему к одной странице. Страница, которую я настроил с помощью hook_menu. Я реализовал hook_theme, но когда я обновляю сайт, я получаю следующую ошибку:
Неустранимая ошибка: неподдерживаемые типы операндов в /srv/bindings/baf029321aa248e5907866cc7de3a6d6/code/includes/form.inc в строке 1044
Вот мой код:
function mymodule_menu(){
$items['mymodule'] = array(
'title' => 'My-module',
'page callback' => 'drupal_get_form',
'page arguments' => array('mymodule_admin_page'),
'access arguments' => array('access content'),
);
return $items;
}
function mymodule_admin_page(){
drupal_set_message('My-module admin page responding');
return theme('mymodule_template');
}
function mymodule_theme($existing, $type, $theme, $path){
drupal_set_message('My-module theme hook responding');
return array(
'mymodule_template' => array(
#'render element' => 'elements',
'template' => 'mytemplate',
'path' => drupal_get_path('module', 'mymodule') . '/templates',
)
);
}
Насколько я могу судить, ошибка возникает, когда я добавляю косую черту в 'path' => drupal_get_path('module', 'mymodule') . '/templates',
, Если я удаляю косую черту, ошибка исчезает, но затем система пытается и не может найти mytemplate.tpl.php, потому что она смотрит на mymodule/templatemytemplate.tpl.php
,
1 ответ
Попробуйте это... это меню всегда вызывать функцию формы, а не вызывать функцию темы
$items['mymodule'] = array(
'title' => 'My-module',
'page callback' => 'drupal_get_form',//this is use a get the form
'page arguments' => array('contactform_form'),// this is use a name of form
'access arguments' => array('access content'),
);
function contactform_form($form, &$form_state)
{
//write a form attributes
}