Здравствуйте. Относительно недавно стал изучать веб-программирование в целом и в частности cms/cmf Drupal и поэтому появляется много примитивных вопросов и проблем, которые не удается решить самому... Иногда гугл помогает, а иногда и нет)
В общем суть в следующем: потребовалось организовать вывод терминов таксономии из словаря в одну строку. Поставил модуль cck и content_taxonomy, добавил соответствующее поле к типу материала, создал ноду, указал в ней несколько терминов из словаря, сохранил - все прекрасно, но только каждый термин словаря отображается с новой строки. Как сделать так чтобы все эти термины выводились в одну строку или через разделитель (например "|")?
На форуме рылся, встречал довольно много тем по темизации вывода, но почти все из них предлагают сделать шаблон в папке с темой для вывода и описать все там. Но мои скромные познания в php не дают возможности это реализовать, возможно ли поправить стандартный вывод? это вроде несколько проще...
Заранее спасибо
Комментарии
Вчера задавался подобный вопрос
В настройках полей есть
выводить не выводить
в линейку или нет
и тд
Это интересно... В настройках отображения поля есть только As text и As link. Эм... Возможно я не там смотрю конечно, но в таком случае можно поподробнее?
Попробуйте в CSS файле темы прописать .Your-field {float:left}. И так для каждого поля, которые должны выводиться в строчку.
Как же решить проблему?
Да, я уже создал свой tpl.php и вывел в нем так: <?php print render($content['field_tags']);?>
Но как избавится от переноса на новую строку? И как указать разделитель (запятая, точка и т.п.)?
В настройках полей никакого выбора нет - только в виде ссылки, потому что нужно в виде ссылки (а не чистого текста), без вариантов.
Модуль Field Delimiter (и к нему Field formatter settings) тоже не решает проблемы - разделитель меняется, а вывод в каждой строке остаётся.
РЕШЕНО! Текст решения в другой теме: http://www.drupal.ru/node/74569 Пост: Опубликовано vaplas в вс, 15/01/2012 - 12:11. Способ 2:
Но это скорее костыль, чем решение.
Ищу более вменяемый способ.
Уже почти год прошел, но все равно отвечу - может кому пригодится.
Вывод нескольких терминов поля типа term_reference можно сделать с помощью модуля Taxonomy Formatter (если мне память не изменяет).
Разобрался, как вывести программно несколько значений поля через запятую в блоке (в моем случае множественное текстовое поле для внесения номеров телефонов (field_phone)):
<?php
$node = menu_get_object();
$phone = array();
foreach ($node->field_phone['und'] as $phone) {
$phone_list[] = $phone['value'];
}
print implode(', ', $phone_list);
?>
Подсмотрел тут