Пользовательские страницы таксономии термин в Drupal 7 - PullRequest
5 голосов
/ 22 июня 2011

Я пытаюсь создать пользовательскую страницу таксономического термина в Drupal 7. Я создал страницу - файл taxonomy.tpl.php в папке с шаблонами.Файл только распечатывает сообщение.Теперь я пытаюсь форсировать файл шаблона, добавив

function template_preprocess_page($variables) {
  if (arg(0) == 'taxonomy') {
    $variables['template_file'] = 'page--taxonomy-tpl';
  }
}

в мой template.php, но он не будет работать.Вы можете мне помочь?И если я получу пользовательскую страницу работающей, как мне выбрать узлы с этим термином (на странице - taxonomy.tpl.php)?Заранее спасибо.

Ответы [ 4 ]

9 голосов
/ 22 июня 2011

Попробуйте использовать это в вашем template.php:

function template_preprocess_page(&$variables) {
  if (arg(0) == 'taxonomy') {
    $variables['theme_hook_suggestions'][] = 'page__taxonomy';
  }
}
  • Вам нужно передать $variables по ссылке, поэтому добавьте & перед ним
  • template_file изменено на theme_hook_suggestions в Drupal 7
  • Вам не нужно -tpl в предложении шаблона, если только вы не хотите, чтобы оно было частью имени файла, такого как "page - taxonomy-tpl.tpl.php", которое, я думаю, не является тем, что вам нужно. .

Для получения дополнительной информации, ознакомьтесь с template_preprocess_page () , theme_get_suggestions () и Работа с предложениями шаблонов

3 голосов
/ 24 июня 2011

Не уверен, что это будет соответствовать вашим требованиям, но одно из представлений D7 по умолчанию - термин Таксономия - имитирует обработку ядром Drupal страниц таксономии / термина.Вы можете просто включить его (он автоматически заменит основные URL-адреса таксономии Drupal), а затем делать с ним все что угодно, сохраняя исходную структуру страницы, все блоки и т. Д., Используя шаблоны страниц Views (см. «Информация о теме» в «Advanced»)и все остальные навороты ...

0 голосов
/ 25 апреля 2014

Полный контроль над страницей терминов таксономии можно получить с помощью hook_menu_alter (). Смотри https://drupal.stackexchange.com/questions/48420/theming-and-overriding-taxonomy-term-vocabulary-page/111194#111194

0 голосов
/ 20 марта 2012

Поскольку вы используете Drupal 7 , вы также можете создать имя файла "taxnomy-term.tpl.php" и редактировать в соответствии с вашими потребностями.

См. taxonomy-term.tpl.php

...