Вы здесь

Изменить отображение ноды

-3

Как при создании ноды изменить ее отображение? Нужно, чтобы была выведена таблица

Версия Drupal: 
7.x
Вопрос задан 20.04.2015 - 19:04

Конкретизируйте вопрос. При каком создании? Что за таблица? Где выведена?

Комментарий оставлен 20.04.2015 - 19:11

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

Комментарий оставлен 20.04.2015 - 19:19

"при создании ноды, на странице с нодой"
Форма создания ноды (node form) и страница вывода ноды - вроде как 2 различные вещи. Виктория, задавайте вопросы более подробно и конкретизируя.

Комментарий оставлен 20.04.2015 - 19:27

вам нужно поле для ввода табличных данных?

Комментарий оставлен 20.04.2015 - 19:32

нужно, чтобы хоть какая-то структура таблицы была на странице с нодой. но желательно, таблица с ячейками для заполнения. вот например, на этом скрине для друпала 6 https://yadi.sk/i/YYAUAy6Vg7onL эта таблица появилась после создания ноды определенного типа, где в hook_views определен ее вид

Комментарий оставлен 20.04.2015 - 19:42

"я создавала новый тип материала по этому уроку: http://books-cms.clan.su/publ/drupal/cms_drupal_7_rukovodstvo_po_razrabo..."
А я открыл тот сайт и понял, что грудь начинает расти, если ее трясешь. Виктория, не посещайте больше таких юкозовских псевдо-обучающих сайтов.

Комментарий оставлен 20.04.2015 - 19:51

но точно такой материал есть в книге "Томлинсон Тодд CMS Drupal 7. Руководство по разработке системы управления веб-сайтом" и первоначально я прочла об этом из нее

Комментарий оставлен 20.04.2015 - 19:57

"но точно такой материал есть в книге "Томлинсон Тодд CMS Drupal 7. Руководство по разработке системы управления веб-сайтом" и первоначально я прочла об этом из нее"
я в курсе, что доры берут контент с отсканированных книг

Комментарий оставлен 20.04.2015 - 20:03

а как это реализовать программно? вот так для 6 версии это было реализована в hook_view:

  $rows = array();
  foreach ($students as $s => $student) {
    $row = array($student->name);
   // здесь описаны разные методы...
     $row[] = sprintf('<input name="%s" value="%s" size="2" maxlength="2" />', $key, $ocenka);
      }
      else {
        $row[] = $ocenka;
      }
    }
    // Выводим сумму в конце.
    $row[] = $ocenka_sum;
    // Записываем строку в массив.
    $rows[] = $row;
  }

  // Выводим заголовок таблицы.
  $header = array('');
  // Пробегаем по всем модулям предмета.
  foreach ($moduli as $m => $modul) {
    $header[] = $modul;
  }
  $header[] = 'Сумма';
  $content = theme('table', $header, $rows);
  // Выводим содержимое предмета.
  $node->content['predmet'] = array('#value' => $content, '#weight' => 0);
Комментарий оставлен 20.04.2015 - 20:22

спасибо) такую таблицу я имела в виду) но остается непонятным, как вывести на странице с нодой?

Комментарий оставлен 20.04.2015 - 20:34

Ответы

1

Как при создании ноды изменить ее отображение?

Чтобы изменить отображение ноды, нужно создать для ноды шаблон.
Вот полезная ссылка https://www.drupal.org/node/1089656

Ответ дан 20.04.2015 - 19:15
Аватар пользователя drupby
drupby
456
0

таблица внутри текста? в ckeditor есть кнопка таблица.
поля в виде ячеек таблицы? можете стиль отображения данной ноды задать в css, предварительно сделав хук, добавляющий ноде класс, который вам требуется http://sergeybelyaev.name/blog/dobavlyaem-stilevoy-klass-k-node-v-zavisi...

Ответ дан 20.04.2015 - 19:09

в друпал 6 таблице можно было вывести в hook_view например, так :
$content = theme('table', $header, $rows);.
мне нужно сделать аналогичное для 7 версии. таблица должна быть на странице с нодой над текстом, то это можно задать свойством "вес"

Комментарий оставлен 20.04.2015 - 19:22
0

тебе нужно вывести view с отображением таблицы в ноде?

Ответ дан 20.04.2015 - 19:46