Как сделать несколько каталогов с общими словарями таксономии?

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

Аватар пользователя Victorzzz Victorzzz 24 марта 2018 в 17:54

Как создать на одном сайте несколько каталогов использующих общий словарь?
Есть 4 типа материала:
- Тип 1
- Тип 2
- Тип 3
- Тип 4

Также есть 3 словаря(таксономия)
- Словарь 1
- Словарь 2
- Словарь 3

У каждого типа материала множество своих полей, но при этом эти 3 словаря (Словарь 1, Словарь 2 и Словарь 3) являются общими для каждого их этих 4-х типов материала.
Каждый из словарей содержит по несколько сотен терминов. При этом словари имеют также свой набор полей.

Если бы тип материала и каталог был один, то разумеется все очевидно. Вьюха taxonomy/term/%, один раз настроить pathauto для терминов словарей (тип-1/term-name), Metatag для словарей , title и т.д. Но как быть когда типов материалов 4, и требуется соблюсти условие для путей таксономии:
- тип-1/term-name
- тип-2/term-name
- тип-3/term-name
- тип-4/term-name

Пример как должно быть:
Типы материалов:
- Новость
- Событие

Словарь:
- Города

url должны быть вида:
- novostj/gorod
- sobytie/gorod

И также каталоги по терминам:
- Новости
- События

Соответсвенно каждый из каталогов при выборе какого-то конкретного города должен показывать только либо события выбранного города (если каталог события), либо новости своего города (если каталог новости). А также у городов должны быть настроены соответсвующие Meta либо под события в городах, либо под новости в городах.

На первый взгляд напрашивается создание 4 наборов словарей таксномии под каждый тип материала, типа:
- Словарь 1 для типа материала 1
- Словарь 1 для типа материала 2
- Словарь 1 для типа материала 3
- Словарь 1 для типа материала 4

- Словарь 2 для типа материала 1
- Словарь 2 для типа материала 2
- Словарь 2 для типа материала 3
- Словарь 2 для типа материала 4

- Словарь 3 для типа материала 1
- Словарь 3 для типа материала 2
- Словарь 3 для типа материала 3
- Словарь 3 для типа материала 4

И тогда конечно все настраивается очевидным образом. Но мне кажется, что плодить такое кол-во дублей каталогов затея так себе. Ведь что если бы нужно было сделать 10 таких каталогов с одним общим словарем? Делать 10 дублей, а потом их синхронизировать, если в них что-то добавится?

Что посоветуете? Как правильно организовать такое?

Комментарии

Аватар пользователя adano adano 24 марта 2018 в 21:09

Victorzzz wrote:

Что посоветуете? Как правильно организовать такое

Нечего тут советовать. Как умеете - так и делайте.
Построение структуры - это основополагающая дальнейшего вектора развития проекта.Тут и опыт, и SEO, и юзерфрендли и т.д. и т.п.

Можно сделать, условно говоря, 6 вьюх + код и иметь более 100к генерируемых уникальных страниц.
А можно "плодить такое кол-во дублей каталогов", ибо "проще накликать в админке".
Решать вам.

Аватар пользователя bumble bumble 25 марта 2018 в 17:39

Victorzzz wrote:

Если бы тип материала и каталог был один, то разумеется все очевидно. Вьюха taxonomy/term/%, один раз настроить pathauto для терминов словарей (тип-1/term-name), Metatag для словарей , title и т.д. Но как быть когда типов материалов 4, и требуется соблюсти условие для путей таксономии:
- тип-1/term-name
- тип-2/term-name
- тип-3/term-name
- тип-4/term-name

тип-1 и term-name - это чем должно быть?

В теории, вьюхе можно указать порядковый номер аргумента в контекстном фильтре.
Но это должен быть ID'шник, либо машинное имя (или еще какой параметр для определения модельки).

Т.е. это может выглядеть, например как article/15, где article - машинное имя типа материала, а 15 - TID термина.

Прикрутить сюда алиасы, без программного вмешательства вряд ли получится.

Аватар пользователя Victorzzz Victorzzz 25 марта 2018 в 18:15

bumble wrote:
Прикрутить сюда алиасы, без программного вмешательства вряд ли получится.

Вероятнее всего да. А еще нужен полный набор по SEO: возможность установки каждому термину своего Title и Meta тэгов в зависимости от типа материала. (например для одного и того же термина "Минск" это заголовки: Новости в Минске и События в Минске)

В любом случае настроить каталог еще более менее понятно как. Т.е. либо как Вы предложили myview/%/%, либо по вьюхе на тип материала (с контекстным фильтром). Ссылку для термина переопределить во вьюхе, это тоже понятно.
Но как быть с алиасами, тайтлами и метами термина, чтобы сеошники их могли редактировать для обоих типов материала из админки, пока не ясно.

Аватар пользователя bumble bumble 25 марта 2018 в 18:31

Victorzzz wrote:

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

Надо курить Meta: Views.

В подобных (нестандартных) кейсах не всегда получается настроить решение для админки из админки.
В то же время, программными методами это настраивается достаточно просто.