Вывести материалы одного типа

Drupal Русскоязычное сообщество

Добрый день. Не могу решить вот такую задачу:

Есть 2 типа материалов: Магазин и Товар. У этих типов материалов есть общий словарь таксономии Список магазинов. Создаю тип материала Магазин и присваиваю ему значение из словаря Список магазинов — Пума, создаю тип материала Товар и присваиваю ему значение из словаря Список магазинов — Пума

Как настроить вывод товаров для каждого магазина, чтобы выводились только его товары?
Понимаю что это через views, но вот фильтрацию не могу настроить.
Заранее благодарен за ответы.

  • Drupal7
  • Есть вопрос
  • Решение проблем
  • Блог
  • Войдите или зарегистрируйтесь, чтобы отправлять комментарии

Комментарии

А вы просто балуетесь или это реальный проект для магазина? Если второе, то для этого есть специализированные модули, например commerce

  • Войдите или зарегистрируйтесь, чтобы отправлять комментарии

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

  • Войдите или зарегистрируйтесь, чтобы отправлять комментарии

Ид термина просим у магазина

  • Войдите или зарегистрируйтесь, чтобы отправлять комментарии

можно по подробней?

  • Войдите или зарегистрируйтесь, чтобы отправлять комментарии

Даже если человек и балуется, на чем то же нужно учиться. Лучше что-то делать, а не спрашивать: «подойдет ли Друпал для сайта типа Амазон».

По делу.
1. Представление 1.
Контекстные фильтры Содержимое: Имеет идентификатор термина таксономии. Когда значение фильтра НЕ доступно — Передать значение по умолчанию — ID термина из URL.
Критерии фильтрации. Тип материала = товар.
Поля: Название, Фото, Цена.

2. Представление 2.
Контекстные фильтры Содержимое: Nid. Передать значение по умолчанию: ID материла.
Взаимосвязи. Содержимое: Список магазинов — поле которое ссылается на словарь.

Поля.
Термин таксономии: ID термина. Исключить из вывода. Разделитель тысяч — нет.
Глобальный: Просмотр. (От модуля views_field_view) Просмотр/Показать: Представление 1 (см выше). Контекстные фильтры [%tid].

3. На типе контента Магазин viewfield поле «Вывод товаров». Always use default value. Допустимые значения Представление 2. Значение по умолчанию Представление 2 нужный дисплей. Аргументы [node:nid].

Можно пункт 3 заменить просто блоком Представления 2 на ноде.

  • Войдите или зарегистрируйтесь, чтобы отправлять комментарии

Сделал по Вашей инструкции, но вывода добиться не получилось.
Настройки Представления 1

Контекстный фильтр представления1

Настройки представления 2

Контекстный фильтр представление 2

Связь в представлении 2 (Поле ссылающиеся на словарь для материала Товар)

Поле глобальное представление в представлении 2

Источник

Drupal Русскоязычное сообщество

как без вьюз можно вывести на странице все материалы одного типа ? мне нужна личка, а pm_lite с вьювзами не работает, вьюз возвращает ошибки секуэль при активированном пм_лайт

Комментарии

удали хук с rewrite_sql из pm_lite.module.

а можно поподробней ?
я с программированием на вы

ищешь строку function pm_lite_rewrite_sql — или как она там
и сносишь эту функцию нафиг. всё работает.

/*
function pm_lite_db_rewrite_sql($query, $primary_table, $primary_field, $args) <
// TODO: Review this to make sure this is actually all that’s required.
// Issue 265158 opened by chx indicates this will nullify Views queries.
if ($primary_field == ‘nid’) <
return array(‘where’ => «n.type != ‘pm'»);
>
>
*/

а что такое pm_lite

Спасибо, все работает!
а чем изъятие этих строк чревато для работоспособности ? зачем их во
обще разработчики включали в модуль ?

а что такое pm_lite

это модуль личных сообщений на шестерке

спасибо, полезно, как раз думал, что делать с личными сообщениями

а чем изъятие этих строк чревато для работоспособности ? зачем их во
обще разработчики включали в модуль ?

личные сообщения вдруг станут нодами

дык они и со строками ноды
или я что-то пропустил ?

Источник

Drupal Русскоязычное сообщество

Подскажите пожалуйста как организовать такую работу сайта — сайт с объявлениями о продаже недвижимости.
Каждое объявление — это «тип материала». У него есть поле типа Список в котором юзер выбирает категорю (1комнатная, двух,трех. ).

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

вопросы:
1) во вьюсе почему-то можно выводить только название и картинку со ссылкой на материал. Другие поля (описание, категория и т.п.) не предлагают выводить со ссылкой на материал.
2) на странице материала, т.е. когда просматриваю объявление, хочу вывести блок «похожие объявления» — он должен показывать несколько объявлений из этой же категории.
Создать вьюсу, выводящую несколкьо объявлений заданной категории не сложно. Я не пойму как передавать этому блоку — какая категория то сейчас открыта?
(тем более что каталог сделан не таксономией, а категории — это просто поле Список у материала. переделать на таксономию можно, но мне все равно не понятно как при переходе из списка объявлений в просмотр конкретного объявления параметр «категория» и на основании которого выводить блок «похожие объявления» )

Надеюсь понятно написал
Подскажите пожалуйста как это организовать.

(Решение указано ниже, в комментариях )

  • Drupal7
  • Есть вопрос
  • Решение проблем
  • Блог
  • Войдите или зарегистрируйтесь, чтобы отправлять комментарии

Комментарии

1 — перезапись поля
2 — контекстные фильтры

1) во вьюсе почему-то можно выводить только название и картинку со ссылкой на материал. Другие поля (описание, категория и т.п.) не предлагают выводить со ссылкой на материал.

2) на странице материала, т.е. когда просматриваю объявление, хочу вывести блок «похожие объявления» — он должен показывать несколько объявлений из этой же категории.
Создать вьюсу, выводящую несколкьо объявлений заданной категории не сложно. Я не пойму как передавать этому блоку — какая категория то сейчас открыта?
(тем более что каталог сделан не таксономией, а категории — это просто поле Список у материала. переделать на таксономию можно, но мне все равно не понятно как при переходе из списка объявлений в просмотр конкретного объявления параметр «категория» и на основании которого выводить блок «похожие объявления» )

  • Войдите или зарегистрируйтесь, чтобы отправлять комментарии

по п.1 — Точно! Я забыл что надо создать поле «Содержимое-путь» и скрыть его из вывода, тогда «перезаписать результат» подстановочный шаблон появляется.

по п.2 хочу уточнить — значит дело обстоит так:
1) есть тип материала «недвижимость». В нем разные поля и сейчас поле Категории типа Список. Могут переделать это на таксономию.
2) есть вывод всех материалов этого типа на страницу в виде таблицы. при клике по названию, описанию или картинки — открывается нода.
Надо именно ноду открывать, так как у меня там еще скрипты цепляются кое-какие.
3) вот при выводе ноды надо в регионе «содержимое» вывести блок «похожие объявления» в котором будет список объявлений из той-же категории, что и выведенная нода.

Так вот, если сама нода выводится не вьюсом, то как передавать параметр «категория» от этой ноды в блок, чтобы в нем вывести список объяв из этой же категории?

  • Войдите или зарегистрируйтесь, чтобы отправлять комментарии

2) есть вывод всех материалов этого типа на страницу в виде таблицы. при клике по названию, описанию или картинки — открывается нода.
Надо именно ноду открывать, так как у меня там еще скрипты цепляются кое-какие.

3) вот при выводе ноды надо в регионе «содержимое» вывести блок «похожие объявления» в котором будет список объявлений из той-же категории, что и выведенная нода.

  • Войдите или зарегистрируйтесь, чтобы отправлять комментарии

почему намудрил?
— просто вывожу вьюсой на страницу все материалы типа Недвижимость. Тип отображения «таблица» и «поля». Вот и все.
При клике по названию, картинке и описаню открывается сама нода.

Если я подключу ноду с похожими материалами — то это ж будут просто ноды типа Недвижимость. А надо категории.
То есть если я зашел в объявление с категорией «однокомнатная квартира», то надо вывести блок и другими однокомнатными.
вот эту категорию могу звести таксономией. А дальше как — не пойму.

Ранее делал для товаров на уберкарте или комерце — но там все как-то просто было — «похожие товары».

Источник

Drupal Русскоязычное сообщество

Есть один вид материала на пример «Описание«, в нем создается несколько десятков нод с описанием чего-либо. Потом создается дополнительный вид материала «Событие«.

Нужно в ноды материала «Событие» вставлять ноды принадлежащее «Описанию».

С помощью node reference можно вставить в «Событие» только заголовок ноды «Описание» с ссылкой на соответствующую ноду. Это совсем не то что надо.

Как вставить все содержание ноды «Описание» в ноду «Событие» (заголовок и текст).

Пробовал модуль viewfield, создает вид и вставляет текст в ноду «Событие». НО, у меня не получилось сделать что-бы можно было-бы выбрать подходящую ноду из «Описание» для ноды «Событие».

1.Вставить (желательно с помощью CCK) заголовок и полный текст ноды одного типа материалов в ноду другого типа материалов, а не только заголовок-ссылку на материал.

2.Сделать всплывающее окошко с текстом из ноды на которую ссылается заголовок сделанный с помощью node reference.

Может есть и другие варианты.

  • Drupal6
  • views
  • cck
  • viewfield
  • Блог
  • Войдите или зарегистрируйтесь, чтобы отправлять комментарии

Комментарии

1. С помощью node reference вставить в «Событие» ссылку на «Описание» (как вы и сделали)
2. С помощью Panels (или аналогов/возможно самому шаблон переделать)вывести два региона: «Событие» и с помощью Views — «Описание» из node reference. В Views сможете выводить что захотите (заголовок, полную ноду и т.д. и т.п.)
если есть вопросы как это реализовать — пишите в личку.

Мне кажется, Вам подойдет этот модуль

С 1-ым пунктом понятно.

А с 2-рым пунктом, думал сделать с помощью модуля viewfield. Модуль viewfield возвращает вид в ноду. Так как этот модуль работает под ССК, то понятно что есть возможность настроить вывод этого поля как нужно.

Вывести вид с помощью viewfield проблем нет. Проблема в том что возвращается вид (текст) одного и того-же из материалов «Описания». А есть болше 10-ка материалов типа «Описание». В поле node reference нет проблем выбрать из списка нужный материал типа «Описание». Но Как застапить «вид» выводить текст в зависимости от того что выбрано в поле node reference?

  • Войдите или зарегистрируйтесь, чтобы отправлять комментарии

Но Как застапить «вид» выводить текст в зависимости от того что выбрано в поле node reference?

Передать в Вид в качестве аргумента nid, в Relationships указать поле node reference, а в качестве полей выводить нужные и указывать, что они из node reference должны браться

  • Войдите или зарегистрируйтесь, чтобы отправлять комментарии

Но Как застапить «вид» выводить текст в зависимости от того что выбрано в поле node reference?

Передать в Вид в качестве аргумента nid, в Relationships указать поле node reference, а в качестве полей выводить нужные и указывать, что они из node reference должны браться

Можно по подробней расписать ход решения

  • Войдите или зарегистрируйтесь, чтобы отправлять комментарии

Но Как застапить «вид» выводить текст в зависимости от того что выбрано в поле node reference?

Передать в Вид в качестве аргумента nid, в Relationships указать поле node reference, а в качестве полей выводить нужные и указывать, что они из node reference должны браться

Можно по подробней расписать ход решения

У меня работает и без взаимных отношений. Из поля viewfield передаю во вьюсу referenced nid (стоит токен) и вьюса (с параметром nid) спокойно все отрабатывает

  • Войдите или зарегистрируйтесь, чтобы отправлять комментарии

Но Как застапить «вид» выводить текст в зависимости от того что выбрано в поле node reference?

Передать в Вид в качестве аргумента nid, в Relationships указать поле node reference, а в качестве полей выводить нужные и указывать, что они из node reference должны браться

Можно по подробней расписать ход решения

У меня работает и без взаимных отношений. Из поля viewfield передаю во вьюсу referenced nid (стоит токен) и вьюса (с параметром nid) спокойно все отрабатывает 🙂

Запарился, не получается, как это работает. Если можно по шагам расписать.

  • Войдите или зарегистрируйтесь, чтобы отправлять комментарии

Модуль InsertNode буду пробовать, спасибо. Если есть опыт его использования — напишите.

  • Войдите или зарегистрируйтесь, чтобы отправлять комментарии

Модуль InsertNode буду пробовать, спасибо. Если есть опыт его использования — напишите.

  • Войдите или зарегистрируйтесь, чтобы отправлять комментарии

Вопрос более практичный: как вставить определенные поля node_1 в node_2?

При этом node_2 имеет поле nodereference на node_1.

  • Войдите или зарегистрируйтесь, чтобы отправлять комментарии

При этом node_2 имеет поле nodereference на node_1.

Может вот это подойдет Node2Node

  • Войдите или зарегистрируйтесь, чтобы отправлять комментарии

У меня так: тип контента «директор» — привязка к словарю «директор». Тип контента «школа», в котором поле нодереф смотрит на словрь директоров, добавил поле вьювсфилд, в настройках которого для вьюсы, выводящей морду директора, указал параметр [field_posadovets_reference-nid] (установлен токен!). В самой вьювсе, которая выводит морду директора, задал параметр nid. И все! Никаких релатионщип не определял!

Логика такая: поле вьювсфилд отправляет директорской вьювсе ИД ноды самого директора (с нодереференс), а потом забирает сам вывод с теми полями, которые ты построил.

MIR> спасибо за помощь. А «директор» один или несколько. У меня таких «директоров»-нод около 2-х десятков (термены в словаре привязаны к соответствующему типу материалов), а «школ» (другой тип материалов) окололо сотни нод. вьювсфилд возвращает одного и тогоже «директора» во все «школы». А надо в определенную «школу» выводить нужного «директора».

  • Войдите или зарегистрируйтесь, чтобы отправлять комментарии

MIR> спасибо за помощь. А «директор» один или несколько. У меня таких «директоров»-нод около 2-х десятков (термены в словаре привязаны к соответствующему типу материалов), а «школ» (другой тип материалов) окололо сотни нод. вьювсфилд возвращает одного и тогоже «директора» во все «школы». А надо в определенную «школу» выводить нужного «директора».

Директоров по количеству школ. У меня все честно работает. Проверь: в школе поле-ссылка на директора. Ты когда создаешь школу, у тебя список директоров — выбираешь нужного. Потом, еще в школе поле вьювсфилд, которое берет НИД ноды выбранного директора и передает основной вьювсе.

  • Войдите или зарегистрируйтесь, чтобы отправлять комментарии

На развитие drupal.ru

Ваша финансовая помощь дает нам возможность оплачивать хостинг и поддерживать стабильную работу сайта. Благодарим за поддержку!

Источник

Читайте также:  Как вывести крышу автомобиля шпаклевкой
Оцените статью