Опубликовано автор в категориях Drupal.

Наконец-то добрался до блога и, как и обещал ранее, правда с опозданием, пишу пост по созданию тем Drupal. Собственно, это не совсем пост а свободный перевод статьи  весьма грамотного drupal-разработчика Tim «TimOnWeb» Kamanin, который тоже открыл свой блог после отпуска именно этой статьей. Мне она показалось полезной и интересной, поэтому и решил поделиться ей с вами.

Итак, три наиболее часто задаваемых вопроса по темам для Drupal:

  1. Как выводить комментарии в любом месте темы Drupal?
  2. Как избавиться от текста  ‘Поиск на этом сайте » в блоке окна поиска?
  3. Как вывести вид в любом месте темы Drupal?

Как выводить комментарии в любом месте темы Drupal?

Автоматически Drupal выводит комментарии в нижней части статьи. Но вы можете вывести комментарии в любом месте вашей темы используя приведенный ниже код:

<?php
if (function_exists('comment_render') && $node->comment) {
 echo comment_render($node, $node->cid);
$node->comment = NULL;
}
?>

Лучше всего размещать этот код конечно же в шаблоне нодов node.tpl.php или node-type.tpl.php но, при желании, вы можете разместить этот код в любом файле шаблона темы. Главное чтобы обязательно была определена переменная $node.

Как избавиться от текста  ‘Поиск на этом сайте » в блоке окна поиска?

В темах Drupal 6 умолчанию, выводится раздражающих ярлык выше строки поиска: «Поиск по сайту». Неизвестно зачем эта метка была внедрена по умолчанию в темы Drupal6, но мы можем легко избавиться от него, выполнив следующие действия:

а) удалить ярлык с основной формой поиска темы (который называется переменной $search_box)

В папке выбранной темы в, измените или создайте (если он не существует) файл с именем: search-theme-form.tpl.php и добавьте в него следующий код:

<?php
$search["search_theme_form"] =
str_replace(t('Search this site:'), '', $search["search_theme_form"]);
print $search["search_theme_form"];
print $search["submit"];
print $search["hidden"];
?>

б) удалить ярлык из блока поисковой формы (которая вызывается в боксе блока поиска):
В папке выбранной темы, нужно изменить или создать (если он не существует) файл с именем: search-block-form.tpl.php и добавить в него следующий код:

<?php
$search["search_block_form"] = str_replace(t('Search this site:'),
'', $search["search_block_form"]);
  print $search["search_block_form"];
  print $search["submit"];
  print $search["hidden"];  ?>
<?php if (isset($search['extra_field'])): ?>
<?php print $search['extra_field']; ?>
<?php endif; ?>

Если ничего не изменилось, то перегрузите реест тем. Достаточно просто по новой зайти в управление темами.

Как вывести вид в любом месте темы Drupal?

Модуль Views очень сегодня очень популярен в мире Drupal. Мало серьезных вещей на Друпал может быть сделано без использования этого модуля. Естественно, что один из самых распространенных вопросов, связанных с Views — это как выводить созданный вид на любой желаемой странице Drupal в любом желаемом месте? Все очень просто. Добавьте фрагмент кода приведенный ниже в нужное место нужного файла шаблона вашей темы:

<?php print views_embed_view('viewname', 'default', $arg); ?>

viewname — это машинное имя созданного вами вида;
default — обозначает что мы используем рендер вида по умолчанию;
$arg — может быть пустым, или же вы можете добавить аргументы вида, если таковые используются.

Это были три наиболее распространенных вопросы по темам Drupal и ответы на них по версии Tim «TimOnWeb» Kamanin’а, еще раз спасибо ему за полезную информацию. Удачных вам тем для Drupal.Организуем поездки на конференции: Конференции. Осенние акции от 1С БИТ! Спешите.

Оставить комментарий

  • (не будет показан)