Size: a a a

2020 February 11

NM

Nikita Malyshev in Drupal RU
Просто я к тому, что уже есть инструменты как подлезть. А 1 универсальный врятли сделать получится, ведь там совершенно разные процессы идут.
источник

C

Comrade Gagarin in Drupal RU
Иван Желтышев
Найдёшь решение или напишишь скинь пожалуйста. Мне писать по несколько хуков с одинаковой логикой не в кайф. Сенк.
ну я свой альтер запилил, беру всё из titleResolver
источник

NM

Nikita Malyshev in Drupal RU
Да я его и не юзаю, просто как пример. Я просто хз, заголовки не альтерю фактически никогда. Обычно такое надо уже на кастомных контроллерах или типа того. А там то всё очень просто.
источник

NM

Nikita Malyshev in Drupal RU
Comrade Gagarin
во первых metatag меняет только <title>, во вторых он умеет только у ограниченного числа страниц
На счёт "он умеет только у ограниченного числа страниц". Туда свои реализации впиливаются очень легко. Это же сущности. Можно взять https://www.drupal.org/project/metatag_routes либо подсмотреть реализацию. Просто как пробка :)
источник

C

Comrade Gagarin in Drupal RU
метатаг не сменит в крошках и в диалоге скорей всего
источник

NM

Nikita Malyshev in Drupal RU
Это да, не сменит.
источник

NM

Nikita Malyshev in Drupal RU
Comrade Gagarin
метатаг не сменит в крошках и в диалоге скорей всего
А вот #title сменит
источник

NM

Nikita Malyshev in Drupal RU
источник

C

Comrade Gagarin in Drupal RU
вообще #title надо убрать, пусть всё будет через _title и _title_callback
источник

C

Comrade Gagarin in Drupal RU
и h1 метатег не сменит
источник

NM

Nikita Malyshev in Drupal RU
h1 то какраз сменит, а вот <title> да, не сменит, ибо как я понял, metatags берёт инфу из резолвера.
источник

NM

Nikita Malyshev in Drupal RU
Но как я сказал, учитывая это разнообразие и вообще факт того что творится там в самом конце 👆🏻. Сделать 1 универсальный альтер врятли получится.

Лучше разузнать почему есть #title, что мешает его выпилить. Выпилить его и сделать событие для резолвера. 🤔 Просто я вот не очень уверен. А все ли наши страницы подкрепленые контроллерами?
источник

NM

Nikita Malyshev in Drupal RU
Ну как вариант на Kernel::RESPONSE ловить и менять, но эт чот диковато наверное.
источник

NM

Nikita Malyshev in Drupal RU
Причем по ссылке выше лишь один ИЗ рендереров. А есть ещё другие + возможно какой-то контриб впиливает свои. Так что тут немного усложняется задачка.
источник

C

Comrade Gagarin in Drupal RU
1 альтер в titleResolver и по альтеру в рендеры, например DialogRenderer и т.д.
источник

C

Comrade Gagarin in Drupal RU
их не так много
источник

NM

Nikita Malyshev in Drupal RU
Comrade Gagarin
1 альтер в titleResolver и по альтеру в рендеры, например DialogRenderer и т.д.
Не очень понял как ты туда его перебросишь?
источник

C

Comrade Gagarin in Drupal RU
куда?
источник

NM

Nikita Malyshev in Drupal RU
В DialogRenderer например, после альтера
источник

C

Comrade Gagarin in Drupal RU
if (isset($main_content['#title'])) \Drupal::moduleHandler()->alter('title', $main_content['#title'])
источник