Page-Layout-Region-Block

Аватар пользователя Majestio Majestio 15 октября 2017 в 15:47

Приветствую!

С друпалом знаком давно, еще с 6-й версии (лет пять назад), но к практическому применению пришел только сейчас, появилась реальная задача. Заинсталлил я 8-ю версию, создал "тестовую площадку". Прошу помочь в азах. Уроков много. В большинстве уроки красивые, длинные, со скриншотами ... но бездарные! Какой смысл показывать куда тыкать без объяснения деталей? А именно, почему так, а не иначе. Многие получаются, но без осознания азов - просто буксую.

Вопросы следующие:

1) Я правильно понимаю, что любой Блок (Block) можно вставить в любую Страницу (Page)? Даже в ту, которая является "типом материала из коробки"? Если "да" - как поступить, если мне нужно вывести в блоке только один выбранный экземпляр материала на определенной странице (куда и как передать параметры, что именно нужно вывести)?

Пример:

a) Есть список элементов материала "Варианты проживания", оформленные вьюшкой
б) Кликаю на какой-то из вариантов - хочу получить детали

Мне нужно как-то сформировать страницу с параметром? И потом этот параметр пробросить во вторую вьюшку? Или как это правильно делается по фэн-шую? А если еще AJAX захотеть?

2) Можно ли поступить следующим образом при построении сайта:

a) Создать главное меню и набор страниц
б) Начать наполнять страницы блоками уже гораздо потом
в) Вопрос прежний, а как поступать, если страницы - результаты поисков или фильтраций

3) Мне нужно, чтобы каждая страница моего сайта имела свое собственное размещение, зависящее от:

a) Собственно, самой страницы (ее назначения)
б) Параметров устройства, куда страница выводится

Есть ли какие-то готовые решения "из-коробки". Видел расширение "Display Suite" - оно не поможет? А "Bootstrap Layouts"?

Оч прошу хелпа, горю)

Комментарии

Аватар пользователя VasyOK VasyOK 15 октября 2017 в 16:13

"любой Блок (Block) можно вставить в любую Страницу (Page)?" - Наверное. У вас не получается?
"Можно ли поступить следующим образом" - можно.
"а как поступать, если страницы - результаты поисков или фильтраций" - либо использовать таксономию и делать отдельные страницы с группой терминов (телефон+ Эппл+Китай)
/
либо есть модуль https://www.drupal.org/project/block_query
/
либо вам надо контекстные фильтры в views хорошо покурить
/
либо на работу в самый массовый генератор трафика устроится - там точно такое делают

Аватар пользователя Majestio Majestio 15 октября 2017 в 17:05

VasyOK, можно я буду называть тебя (вас) Учителем некоторое время?

" либо использовать таксономию и делать отдельные страницы с группой терминов (телефон+ Эппл+Китай)" - вообще нихрена не понятно! Я уже писал о "горе-гуру", что засыпают терминами и скриншотами. А можно по человечьи?

"Использовать таксономию" - таксономия, я знаю, словарь какбэ. "Использовать" - знаю, это типа куда-то вмазать и впендюрить. Умоляю, осознай свой совет сам. "Таксономия" - я знаю, "Материал"- я знаю. "Использовать" - я знаю. Но как и в каком виде, это и есть самое главное "как, куда и что это даст".

"либо есть модуль https://www.drupal.org/project/block_query" - нет его для D8

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

Аватар пользователя VasyOK VasyOK 15 октября 2017 в 17:28

использовать таксономию - несколько словарей сделать, в типе материала сделать привязки к этим словарям могете?
нет модуля - плохо
контекстные фильтры views - в системной вьюхе taxonomy term посмотрите как работают

Аватар пользователя Majestio Majestio 15 октября 2017 в 17:51

Все пучком - все словари есть. Во вновь созданном материале они работают "на ура" - большая часть заполняется посредством комбобоксов, одно поле - групповыми чекбокчами. В возданной вьюхе - выводятся только названия со ссылками. Обычный хтмл ненумерованный список названий-ссылок. А вот дальше тупик и непонятка .... !!!

По клику я должен получить "карточку" того самого "кликнутого". Как, чем, куда - не понимаю. Хотелось бы "страницей в параметром". Но не понимаю как определить "параметризованные" страницы (((

Аватар пользователя VasyOK VasyOK 15 октября 2017 в 18:24

Majestio wrote:

В возданной вьюхе - выводятся только названия со ссылками. Обычный хтмл ненумерованный список названий-ссылок.

А что должно?

Аватар пользователя Majestio Majestio 15 октября 2017 в 18:34

bumble, советы по RTFM я лет как 15 назад отлюбил, иди с миром.
VasyOK, с клика на ссылку я должен попасть на страницу с деталями материала ...

1) Как мне выловить на этой странице "аргумент" того материала, что я должен показывать?
2) Как это может (или могут) вьюхи, которые будут на этой странице?

Это наверное единственный по настоящему сложный мой тупик. "Как передать аргументы на страницу" и "вьюхи страницы смогут этот аргумент выцепить"?

Естественно, ясли я на правильном пути.

Аватар пользователя VasyOK VasyOK 15 октября 2017 в 19:04

Majestio wrote:

1) Как мне выловить на этой странице "аргумент" того материала, что я должен показывать?

2) Как это может (или могут) вьюхи, которые будут на этой странице?

Если материал - это нода, контекстный фильтр должен быть Content: ID,
Когда значение фильтра НЕ доступно - Передать значение по умолчанию - ID материала из URL

Вьюхи - это блоки. И выводится блоки могут на страницах данного материала.

Аватар пользователя Majestio Majestio 17 октября 2017 в 21:22

Созрел таки вопрос. Сделал я вьюху с параметром - работает. См. скриншот.

Скриншот

... но мне удалось ее нормально отобразить только в сайдбаре (цифра 1), а мне надо этой вьюхой заменить содержимое основного региона (красная рамка, и цифра 2).

Как это делается?
Любому совету буду рад.

Аватар пользователя Majestio Majestio 20 октября 2017 в 17:44

А почему блок нельзя поместить в регион контента?

Можно. Но что делать с тем, имеющимся содержимом, как его удалить?

Аватар пользователя Majestio Majestio 20 октября 2017 в 18:28

Может я не там смотрю. Прошу подсказать где.

Ситуация следующая:

1) Вывожу вьюху, основанную на заголовках моего материала:

2) По клику на элементе выхожу на просмотр элемента материала. Для него сделал отдельную вьюху с параметром и контекстным фильтром. Получается вот так:

То, что в красной рамке нужно как-то НЕ выводить.

3) Хотя в настройках "Содержимого" я все лишнее отключил:

Что я не так делаю? Или какова правильная последовательность действий?

Аватар пользователя VasyOK VasyOK 20 октября 2017 в 20:27

Я не про блоки.

Структура - типы материалов - ваш тип - Управление отображением
Для page
/admin/structure/types/manage/page/display