Логика построения страниц. Нода, вьюха, таксономия. (не бейте меня:)

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

Аватар пользователя rgzrgz1 rgzrgz1 6 марта 2018 в 15:53

Всем привет. Начинаю осваивать друпал 7 и немного запутался.

Если я хочу править шаблон и порядок вывода регионов и прочих прелестей в Ноде, то я создаю page-node--имя ноды/node тип ноды.tpl.php

Если я создаю таксономию, то правлю taxonomy-term.tpl.php

а если я создаю вьюху (страницу), то как ее править через шаблон?

И еще вопрос: есть модуль pathauto, который делает адреса страниц. Но что будет, если я создам таксономию site/about, затем создам basic page и тоже задам путь site/about. И наконец создам вьюху с адресом site/about. Что в итоге будет на странцие site/about? И будут ли дубли контента?

п.с. Движок на первый взгяд сложный, запутаный, но радует то, что можно настроить каждый пиксель сайта как душе угодно в зависимости от разных условий. Интересно.

Комментарии

Аватар пользователя Semantics Semantics 6 марта 2018 в 15:59

Основная ошибка в логике у вас в том, что вы не понимаете иерархию шаблонов.

page.tpl.php - шаблон страницы, любой, в общем случае.
У страницы есть контент, это то, что к одноименному региону относится.
Вот в контент может попадать node, будет шаблон node.tpl.php для единичной ноды, может попадать вьюха, там несколько уровней шаблонов.
Цели правки шаблонов у вас какие? БОльшая часть вывода правится без админки без особых знаний.

Стандартная логика наследования шаблонов описана здесь https://www.drupal.org/docs/7/theming/template-theme-hook-suggestions
---
Два одинаковых алиаса вы не создадите.
Система ругнётся.

Аватар пользователя pselfin pselfin 6 марта 2018 в 16:05

rgzrgz1 wrote:

Начинаю осваивать друпал 7

Если начинаете изучать друпал в вакууме (а не на конкретном проекте, который на д7), то уже бОльше смысла браться за ветку drupal8
http://drupalbook.ru/ - здесь есть довольно подробные выдеоуроки, в том числе по темизации.

Ну и на всякий про именование шаблонов и прочее:
https://www.drupal.org/docs/7/theming - д7
https://www.drupal.org/docs/8/theming -д8
https://www.drupal.org/node/2354645 - про названия файлов и иерархию (д8)

Аватар пользователя fairrandir fairrandir 6 марта 2018 в 16:16

Шаблоны вьюхи можно посмотреть на странице её редактирования, в крайней правой колонке, пункт что-то вроде "тема: информация"

Аватар пользователя rgzrgz1 rgzrgz1 6 марта 2018 в 16:18

Semantics wrote:

Цели правки шаблонов у вас какие? БОльшая часть вывода правится без админки без особых знаний.

Например я хочу, чтобы в шаблоне "Форум" было не два сайдбара а один. Правлю page-forum. (хотя я дерево, и можно это в админке просто не выводить лишние блоки в тип материала форум)

Но все равно может иногда пригодиться править конкретную страницу через код, бужто это page, taxonomy или views. Например отдельную страницу 404 со своими дизайном, скриптами, цсс, которые будут подклчаться только на 404. Это я сделал, т.к. там все просто.
Так как править шаблончик page я понял. Это к примеру page--node--33.tpl.php. как править такономию тоже ясно page--taxonomy--term--85.tpl.php.
Но как править views? page--viewsName.tpl.php?

Аватар пользователя pselfin pselfin 6 марта 2018 в 17:33

page--taxonomy--term--85.tpl.php - когда вот такое появляется в шаблонах, это звоночек что что-то не продумано в проекте...
Или наоборот - слишком уж хорошо продумано))

но да, движок делать такое позволяет. Можно добраться до любого элемента

Аватар пользователя rgzrgz1 rgzrgz1 6 марта 2018 в 16:21

<a href="mailto:P.Selfin@drupal.org">P.Selfin@drupal.org</a> wrote:

Если начинаете изучать друпал в вакууме (а не на конкретном проекте, который на д7), то уже бОльше смысла браться за ветку drupal8
http://drupalbook.ru/ - здесь есть довольно подробные выдеоуроки, в том числе по темизации.

Есть часть проекта на д7. Начинал год назад и забросил. Про восьмерку тогда инфы еще маловато было. Д8 тяжелее д7? в плане больше запросов к бд, больше встроеных модулей всяких, больше функий, которые не всегда нужны? Или он лучше д7?

Аватар пользователя pselfin pselfin 6 марта 2018 в 17:30

Д7 рано или поздно умрет. Сейчас уже можно сказать, что функционал заморозился.
Новые модули вряд ли уже будут активно появляться, а старые обновляться...
То есть если хочется оставаться во вчерашнем дне - то ок.
Если двигаться вперед - то д8.

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

Аватар пользователя bumble bumble 6 марта 2018 в 16:43

rgzrgz1 wrote:

Но как править views? page--viewsName.tpl.php?

Почти.
Опять же, Вам выше уже писали - это Вы не шаблон представления править будете, а шаблон страницы на котором представление (или не представление).

page--[ANY].tpl.php - это шаблон страницы, где [ANY] - путь страницы.

Аватар пользователя bumble bumble 6 марта 2018 в 16:49
1

Drupal 7 theme overview
Страница у Вас так и остается (желтенькая), а представление - это то что на картинке нодами представлено (синенькое).

Аватар пользователя pselfin pselfin 6 марта 2018 в 17:34

ЗЫ еще бы порекомендовал прежде чем лезть глубоко в шаблоны посмотреть такие вещи как diplay suite, panels, paragraphs, и в д8.5 лайауты должны появится. Ну так, чтобы не делать лишнюю работу вероятно)

Аватар пользователя rgzrgz1 rgzrgz1 6 марта 2018 в 18:26

<a href="mailto:P.Selfin@drupal.org">P.Selfin@drupal.org</a> wrote:

Д7 рано или поздно умрет. Сейчас уже можно сказать, что функционал заморозился.

Новые модули вряд ли уже будут активно появляться, а старые обновляться...

То есть если хочется оставаться во вчерашнем дне - то ок.

Если двигаться вперед - то д8.
зы разумеется д7 используется сейчас на оооочень многих боевых проектах, и еще поживет. Но запускать новые проекты на заведомо устаревающей технологии... Ну я б подумал крепко.


а можно безболезненно переехать на 8 или все придется переделывать?

Аватар пользователя VasyOK VasyOK 7 марта 2018 в 5:31

rgzrgz1 wrote:

Д8 тяжелее д7?

да
<a href="mailto:P.Selfin@drupal.org">P.Selfin@drupal.org</a> wrote:

diplay suite, panels, paragraphs, и в д8.5 лайауты должны появится.

Спорно. diplay suite и panels считаю лишними не я один.