Как мне добавить тему агрегатора в Drupal 5.x? - PullRequest
0 голосов
/ 28 августа 2009

Да, я все еще на Drupal 5. Не смейся.

Я создал категорию с помощью модуля Aggregator, а URL-адрес для категории - www.example.com/aggregator/categories/2. Как мне это тема? Это узел, который может быть тематизирован с помощью шаблона, или есть какой-то другой процесс, который я должен использовать?

edit: Чтобы уточнить, я хочу добавить текст прямо под заголовком, а не просто тему отдельных элементов агрегатора. Извините, я сначала это пропустил.

1 Ответ

1 голос
/ 29 августа 2009

взгляните на источник (всегда полезно):

  • глядя на hook_menu(), "URL-маршрутизатор" Drupal, мы видим , что aggregator/categories/2 обрабатывается
  • aggregator_page_category(). эта функция извлекает некоторые данные и затем вызывает _aggregator_page_list(), что в свою очередь вызывает
  • aggregator_page_list(). эта функция перебирает все элементы фида (while ($item = db_fetch_object($result))) в выбранной категории и
  • темы их с theme('aggregator_page_item', $item) *

вуаля, вот точка темы (переопределение темы), которая может быть тематизирована с помощью шаблона (или пользовательской функции темы).

РЕДАКТИРОВАТЬ: тема / изменение заголовка кажется сложным со стандартным Drupal 5. Снова посмотрите на источник: _aggregator_page_list() просто объединяет все (тематические) элементы ленты, оборачивает их в <div id="aggregator">, добавляет пейджер и канал значок - здесь нечего зацепить _aggregator_page_list() имеет необязательный третий аргумент $header, который будет делать именно то, что вы хотите - к сожалению, этот аргумент не используется для aggregator/categories/2. поэтому, чтобы добавить текст в заголовок, вам придется взломать aggregator.module.

или обновление до Drupal 6, в котором добавлена ​​переопределение темы для оболочки:

foreach ($items as $item) {
  $output .= theme('aggregator_item', $item);
}
$output = theme('aggregator_wrapper', $output);

РЕДАКТИРОВАТЬ КОНЕЦ

о том, как создать тему для Drupal 5, см. http://drupal.org/theme-guide/5, template.php: Переопределение других функций темы , Правильная тематика модуля агрегатора , theme() api doc и т. д. и т. д.

удачи!

* и добавляет некоторую обработку категории и упаковывает все элементы в один или другой контейнер

...