Drupal 7 ошибка при попытке вывода галереи в блоке

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

Аватар пользователя Melise Melise 8 февраля 2015 в 21:08

Доброго времени суток! Столкнулась с проблеммой. Необходимо вывести страничку с галереей в отдельный блок чтоб прикреплять ее к другим страницам. В архивах нашла способ через - node_view + node_load, формат ввода в блоке - php.

Порывшись в функциях вывела код - <?php print node_view(node_load($nid = 111), $view_mode = 'full', $langcode = NULL); ?>

И добавила в новый блок. Но как итог выводит только значение - Array.
Уже и так и сяк меняла код но результата нет. Может кто то подсказать в чем ошибка?

Комментарии

Аватар пользователя Melise Melise 8 февраля 2015 в 22:24

"DJLocksmith" wrote:

Это должно помочь

Я правильно поняла что после установки модуля нужно вставить этот код в node.tpl.php ?

<?php
// node.tpl.php
if (isset($node->nodesinblock)) {
// Theming for node in block
}
else {
// Normal theming
}
?>

Аватар пользователя DJLocksmith DJLocksmith 8 февраля 2015 в 22:31

Melise wrote:
"DJLocksmith" wrote:

Это должно помочь

Я правильно поняла что после установки модуля нужно вставить этот код в node.tpl.php ?

<?php
// node.tpl.php
if (isset($node->nodesinblock)) {
// Theming for node in block
}
else {
// Normal theming
}
?>

Нет. Это для темизации....
Я не пользовался этим модулем. Скорее всего нужно создать новый блок и в настройках блока указать ноду, которую хотите показать в блоке.
Попробуйте....
Только что пришло в голову: можно реализовать через панели. Вот модуль для вывода панели как блока.

Аватар пользователя Melise Melise 8 февраля 2015 в 22:39

В том то и дело что я создала блок. Но в нем невозможно прописать что там отобразить. Либо текст либо изображение. Я так поняла исходно в той теме которую я использую использовали Views по под галерею я создавала отдельный тип отображения и я не могу найти как привязать его к блоку через Views

Аватар пользователя Melise Melise 8 февраля 2015 в 22:43

Я вот с ним сейчас и разбираюсь. Установила и подключила. Пока не вижу какие параметры оно добавило. В настройках блока который появился вместе с модулем я не вижу функции выбора

Аватар пользователя Melise Melise 8 февраля 2015 в 22:56

Я прочитала. У меня ни в нодах ни в самом блоке нет связующих функций. Нашла мануал как правильно настроить модуль - http://www.htmlgoodies.com/beyond/webmaster/toolbox/article.php/3903166/...

Но у меня нет перехода на конфигурацию модуля как указано на скринах

Аватар пользователя Melise Melise 8 февраля 2015 в 23:57

Все, добила тот первый модуль который Вы показали. Работает. Меню выводилось не в конфигурации модулей а в структуре. Настроила. Отображает нормально но есть некоторый дискомфорт от того что отображает и название блока и название ноды но думаю это можно подправить.

С этим уже можно работать по крайней мере :).Модуль отображения ноды в блоке можно добавить с избранное.

Спасибо за помощь!

Аватар пользователя DJLocksmith DJLocksmith 9 февраля 2015 в 0:01

Пожалуйста!
В настройке блока уберите заголовок. Можете поставить display suit - отличный модуль для кастомизации отображения ноды.

Аватар пользователя Melise Melise 9 февраля 2015 в 0:22

Спасибо, буду пробовать.

А еще такой вопрос возник - я сейчас разбираю Colorbox и столкнулать с проблемой что превью в галерее не меняют размер что бы я ни меняла в настройках отображения галереи. Это нужно лезть в настройки конкретно Колорбокса чтоб изменять превьюшки?

И еще такое - возможно ли задать стиль конкретно под изображения в галерее? Сделать к примеру им бордер или подложку с фоном так чтоб не ломать общий цсс?

Аватар пользователя DJLocksmith DJLocksmith 9 февраля 2015 в 0:28

За размер изображений отвечают стили изображений. Необходимо создать стиль и указать его в настройках отображения. Если используете colorbox, то в настройках отображения выбираете его для вывода изображения? Заходите в настройки colorbox (также на странице настройки отображения) и указываете стили для превью и т.д.

Аватар пользователя Melise Melise 9 февраля 2015 в 13:03

Возникла проблема - чтоб отображать галерею в ряд я прописала в файле цсс строку - .node .field-item {float:left; padding: 15px; margin-bottom:15px }

Из за этого у меня на странице контактов пропала карта. Если прописать вместо float:left; - display: inline; то карта снова появляется на своем месте но галерея открывается без учета отступов. все слитно. можно это как то обойти?

Аватар пользователя DJLocksmith DJLocksmith 9 февраля 2015 в 17:42

Melise wrote:
Возникла проблема - чтоб отображать галерею в ряд я прописала в файле цсс строку - .node .field-item {float:left; padding: 15px; margin-bottom:15px }

Из за этого у меня на странице контактов пропала карта. Если прописать вместо float:left; - display: inline; то карта снова появляется на своем месте но галерея открывается без учета отступов. все слитно. можно это как то обойти?

Установите этот модуль.
Оберните поле, которое выводит изображения в див, дайте имя классу и этому классу уже в css задавайте правила. .node .field-item - это не правильно. может и зацепит стили других полей ноды.

Аватар пользователя Melise Melise 10 ноября 2015 в 11:50

Я верно выставила поля? Я толком и поля галереи заменить не могу...но то как оно сейчас стоит не помогает

Аватар пользователя Melise Melise 10 февраля 2015 в 0:16

Полазила еще по форуму и нашла ответ - можно все решить без использования модуля.

В стиле цсс простотнужно дополнить то что я пыталась сделать выше - итог

.node .field-name-field-gallery .field-item { float:left; margin: 15 15 15 15};

вместо выделенного gallery пропишите машинное название созданного вами поля для галереи

вставлять этот код нужно

vasha_tema/css/styles.css

У меня заработало. И карта на месте Smile

Аватар пользователя DJLocksmith DJLocksmith 10 февраля 2015 в 0:26

Дело Ваше. Я использую филд груп не только по этой причине....
Также переопределение стилей не есть гуд. В конце концов получите кривой файл стилей. Выделяю в отдельный класс получаю возможность использовать один класс для разных случаев, а это меньше кода и меньше неразберихи. Раньше использовал Ваш метод и ковырялся в километрах повторяющихся строк, а когда через какое-то время заказчик просит что-то поправить.......

Аватар пользователя Melise Melise 10 февраля 2015 в 0:49

Просто я попыталась задать в цсс стили к диву группы но как итог оно ничего не подхватило. Возможно это нюансы темы которую я использую.

В целом я не переопределяла стиль поля. Как я поняла я написала уточнение для созданного под галерею поля с уточнением того где это поле лежит. Я перепроверила весь сайт. Ничего кроме галереи не изменилось. Тоесть и этот метод в дангом случае неплох. Хотя и с предложенным Вами методом постараюсь разобраться

Аватар пользователя DJLocksmith DJLocksmith 10 февраля 2015 в 0:59

Не хочу холиварить.....
Если Вам так удобно, то вопрос закрыт.
Но когда придется заниматься большим проектом Вы столкнетесь с множеством проблем связанных с таким подходом к построению сайта.ИМХО