[РЕШЕНО] PHPTemplate

Главные вкладки

Аватар пользователя xom940k xom940k 24 июля 2011 в 21:34

Всем снова привет. Продолжаю задавать тупые вопросы.
PHPTemplate - шаблонный движок, спецом разработанный для Drupal. Если порыскать в гугле, то можно найти на довольно стандартное его использование, понятное людям, которые раньше работали с подобным (например со Smarty):

<?php
$tpl 
= new PHPTemplate('someTemplate.tpl');
$tpl->set('someVar'123);
print 
$tpl->fetch();
?>

Код вернет сами понимаете что и без всякого лишнего.
Естественно это не работает в Drupal(ВНЕЗАПНО!) при написании модулей. Вместо этого, материал нарысканный мной в гугле предлагает использовать следующие конструкции, у которых конечно же мощность использования на этом не заканчивается, тем не менее:

<?php
/**
  * Перегрузка hook_theme
  * param array с ключами хуков темы.
**/

function module_name_theme($existing$type$theme$path) {
  return array(
    
'theme_key' => array(
      
'template' => 'some_file',
      
'arguments' => array('yml' => array()),
      
'path' => drupal_get_path('module''module_name') . '/templates',
    ),
  );
}

/**
  * Реализация hook_menu()
**/

function module_name_menu() {

  

$items = array();

  

$items['some-path'] = array(
  
'title' => t('blablabla'),
  
'page callback' => '_module_name_callback',
  
'access callback' => 'just_true_returner',
  
'type' => MENU_NORMAL_ITEM,
  );
  return 
$items;
}

function 

_module_name_callback() {
  return 
theme('theme_key', array(12'hren'));
}
?>

Это не совсем то, что мы ожидали, в сравнении с первым листингом. Дело в том, что выведется контент по шаблону, но в обертке: шапка, футер и тп, все что в page.tpl.php
Можно заменить на:

<?php
function _module_name_callback() {
  print 
theme('theme_key', array(12'hren'));
}
?>

Визуально УРА. Но при просмотре в инспекторе (например в FireBug) обнаружили, что все равно

<html>
<head></head>
<body>
......
</body>
</html>

Пустые, но все равно есть. А хотелось бы просто "......". Как жить?

Комментарии

Аватар пользователя v1adimir@drupal.org v1adimir@drupal.org 24 июля 2011 в 21:49

Я, честно, совсем не понял сути поста. Попытка использовать шаблонизатор друпала без самого друпала и после этого пожаловаться, что ничего не работает? Или что?

Аватар пользователя xom940k xom940k 24 июля 2011 в 22:13

"xxandeadxx" wrote:
пользоваться блокнотом

что всегда чтоли? )))
"xxandeadxx" wrote:
и узнать разницу между dom и html файлом

понял
"<a href="mailto:v1adimir@drupal.org">v1adimir@drupal.org</a>" wrote:
Попытка использовать шаблонизатор друпала без самого друпала

это вы где такое увидели?
"<a href="mailto:v1adimir@drupal.org">v1adimir@drupal.org</a>" wrote:
Или что

или кто?

Вообще грубовато отвечаете ) Но идею понял, благодаря andead.