Drupal: получение и печать имени узла (не типа)

У меня есть блок, созданный в модуле представлений, где я публикую последние комментарии, сделанные пользователем (например, пять последних комментариев для пользователя uid 1033). Я создал свой собственный файл TPL, чтобы я мог настроить, какие поля я хочу отображать, и это работает.

Он печатает первые 140 символов комментария и ссылается на узел с #cid позади него.

Но ниже я хочу показать, в каком типе узла он размещен. Я попытался с помощью этого кода:
print $node->type;
но это - из-за причины - просто печатает тип узла, и он не особенно удобен для чтения человеком, так что мне нужно имя узла (из класса базы данных "node_type"), но я просто не могу понять, как это сделать.

Есть ли простой способ или мне нужно использовать какой-то настраиваемый запрос / вызов API?

3 ответа

Решение

Посмотрите на API-функцию node_get_types().

http://api.drupal.org/api/drupal/modules--node--node.module/function/node_get_types/6

Вы пытались добавить поле Node:Type внутри представления?

Если вы не делаете что-то действительно неправильное, например, выполняете full node_load() каждого в вашем файле.tpl.php, вам нужно настроить свое представление для отображения типа узла. Шаблоны предназначены не для добавления дополнительных данных, а только для форматирования и компоновки их отображения.

Чтобы отобразить тип узла, к которому прикреплен комментарий, необходимо

  1. Добавить отношение к узлу
  2. Настройте стиль строки для использования стиля строк поля
  3. Добавьте Node: Type к отображаемым полям.

скриншот конфигурации вида

Другие вопросы по тегам