Итак, я создал собственный модуль для Drupal 6.x, и он работает так, как я вижу желаемые результаты на странице page.tpl.php, но когда я редактирую страницу из графического интерфейса пользователя (это позволяет использовать теги php),объект недоступен.
Я могу установить значения в СЕССИИ, к которым я могу получить доступ через графический интерфейс, а также из модуля, но это правильный способ сделать это?
Вотя получаю сообщение об ошибке:
Fatal error: Call to a member function getEmail() on a non-object in /var/www/domain/includes/common.inc(1695) : eval()'d code on line 221
Call Stack
# Time Memory Function Location
1 0.0003 64108 {main}( ) ../index.php:0
2 0.0965 11659504 menu_execute_active_handler( ) ../index.php:18
3 0.1040 12626908 call_user_func_array ( ) ../menu.inc:348
4 0.1040 12627316 node_page_view( ) ../menu.inc:0
5 0.1040 12627532 node_show( ) ../node.module:1797
6 0.1040 12627848 node_view( ) ../node.module:1101
7 0.1040 12628192 node_build_content( ) ../node.module:1006
8 0.1041 12648832 node_prepare( ) ../node.module:1085
9 0.1041 12649112 check_markup( ) ../node.module:1041
10 0.1047 12671980 module_invoke( ) ../filter.module:457
11 0.1047 12693240 call_user_func_array ( ) ../module.inc:462
12 0.1047 12693900 php_filter( ) ../module.inc:0
13 0.1048 12694164 drupal_eval( ) ../php.module:82
14 0.1059 12883728 eval( ''?>
getEmail () - это функция в классе, которая находится в моем пользовательском модуле.Я могу назвать его из page.tpl.php просто отлично, так почему я не могу вызвать его со страницы, которую я редактировал в GUI администратора?
РЕДАКТИРОВАТЬ:
Добавление кодаиз модуля:
//wrapperFunction() is calling the class and setting the values
// this is just a getter/setter class w/ 1 function that formats a phone number, nothing special
$custom = new CustomObj();
$custom->setEmail('blah@blah,com');
return $custom;
page.tpl.php
// calls the wrapper function and returns the object
$custom_obj = wrapperFunction();
echo $custom_obj->getEmail(); // this prints the email just fine
Редактирование страницы через GUI администратора (разрешает использование тегов PHP) Добавление этого кода на страницу
<?php echo $custom_obj->getEmail(); ?> // throws the error
Извините, это мой первый модуль Drupal, так что любая идея была бы отличной, так как я также новичок в использовании Drupal, вздох ...