[РЕШЕНО] Программный вывод поля ноды в файле .module

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

Аватар пользователя animan animan 19 июля 2015 в 17:20

Меня интересует такой вопрос, как правильно написать вывод текстового поля материала в своем модуле. Искал решение данной проблемы и всё что находил, не помогало. Видел решение вывода в файлах шаблона, но оно не подходит мне. В файле модуля есть такая функция:

<?php
function my_module_node_view($node$view_mode$langcode) {
/* Мой код */
}
?>

Подскажите как правильно сделать вывод?

Лучший ответ

Комментарии

Аватар пользователя animan animan 20 июля 2015 в 21:01

<a href="mailto:sas@drupal.org">sas@drupal.org</a> wrote:

$node->content['my_field'] = array(
      '#markup' => $text
);


Да нет, мне не нужно заменять текст поля. Нужен именно вывод текста которое уже есть в поле. Пробовал даную конструкцию и как я понял, она заменяет текст поля на свой.

Аватар пользователя sas@drupal.org sas@drupal.org 20 июля 2015 в 21:08

Если текст уже есть то он выводится по настройкам display для материала, если не хваатет существующих formatter ов, то можно закодить свой кастомный, если не хочется кодить то используйте https://www.drupal.org/project/panels или https://www.drupal.org/project/ds

Аватар пользователя animan animan 20 июля 2015 в 21:17

<a href="mailto:sas@drupal.org">sas@drupal.org</a> wrote:
Если текст уже есть то он выводится по настройкам display для материала, если не хваатет существующих formatter ов, то можно закодить свой кастомный, если не хочется кодить то используйте https://www.drupal.org/project/panels или https://www.drupal.org/project/ds[/quote]
Да, но мне собственно нужно получить значение поля. Наверное я немного неправильно выразился. Я делаю кастомный title для материалов, и нужно получить несколько полей, а потом через drupal_set_title я их выведу.

Должна быть примерно такая конструкция:

$authors = /*получаю текст поля*/;
drupal_set_title($authors);
Аватар пользователя animan animan 20 июля 2015 в 23:10

Спасибо, девелом я пользуюсь. Вот я не понимаю почему так. Такой код:

<?php
drupal_set_title($full_cont);
$full_cont = $node->title;
?>

Выдает ошибку Undefined variable: full_cont в функции books_import_node_view(). А вот так:

<?php
drupal_set_title($node->title);
?>

Все работает. Получается когда я пытаюсь засунуть данные с $node->title в переменную ошибка.