Рейтинг:0

Как удалить или переименовать вкладки из блока локальных задач?

флаг de

локальные задачи

Я использую Drupal 9.2.6 с модулем Group и хочу удалить некоторые вкладки из блока локальных задач и переименовать некоторые из них.

Я создал модуль и разместил выше код с помощью hook_menu_local_actions_alter и hook_menu_local_tasks_alter:

функция mymodulename_menu_local_actions_alter(&$local_actions) {
   $local_actions['view.group_members.page_1']['title'] = t('Пользователи');
}


функция pacifica_menu_local_tasks_alter(&$data, $route_name) {
   unset($data['tabs'][0]['entity.group_content.collection']);
}

Имена маршрутов, полученные от webprofiler.

Похоже, код не работает — вкладка «Участники» не переименована в «Пользователи», а вкладка «Все объекты» не скрыта. И да, я почистил кэши.

Может ли кто-нибудь, пожалуйста, указать мне правильное направление в решении этой проблемы?

leymannx avatar
флаг ne
Отвечает ли это на ваш вопрос? [Как изменить заголовки меню локальных задач?](https://drupal.stackexchange.com/questions/253280/how-to-alter-local-tasks-menu-titles)
leymannx avatar
флаг ne
https://gorannikolovski.com/blog/dynamic-local-task-titles-drupal-8-9
Alex Sh avatar
флаг de
Кажется, моя проблема в том, что я не могу найти правильные переменные для конкретной локальной задачи. Как я могу распечатать все переменные, используемые в блоке локальных задач?
leymannx avatar
флаг ne
`composer install drupal/devel_kint_extras && drush -y en devel_kint_extras`, затем зайдите в свой хук и введите `ksm($variables);` , затем `drush cr` и посетите сайт, и он напечатает вам красиво отформатированный var_dump в блок сообщений, который по умолчанию размещается в какой-то области вверху сайта.
Alex Sh avatar
флаг de
о, чувак, спасибо тебе большое! Я использовал kint($data); и получил массив вкладок со всеми переменными! затем снимите ($ данные ['вкладки'] [0] ['group.content']); работал на меня!
Alex Sh avatar
флаг de
Может быть, вы могли бы также помочь мне с этим: $data['tabs'][0]['views_view:view.group_nodes.page_1']['#link']['url'] = '/node/add/podcasts'; это не работает, как можно указать собственный URL-адрес для существующей вкладки?

Ответить или комментировать

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