Estou aprendendo a criar um módulo para o Drupal 8. Li vários tutoriais básicos, mas não vi um que falasse sobre adicionar um link à página / admin / config .
Mais especificamente, gostaria de adicionar o link na área SERVIÇOS DA WEB .
Estou aprendendo a criar um módulo para o Drupal 8. Li vários tutoriais básicos, mas não vi um que falasse sobre adicionar um link à página / admin / config .
Mais especificamente, gostaria de adicionar o link na área SERVIÇOS DA WEB .
Respostas:
Você pode fazer isso da mesma maneira que qualquer outro item de menu, basta escolher a posição correta na estrutura do menu:
Primeiro adicione o caminho do administrador no seu mymodule.routing.yml:
/admin/config/...
Segundo, coloque o item de menu em mymodule.links.menu.yml e coloque-o sob o pai correto:
mymodule.action_method_name:
title: 'My Title'
description: 'My Description'
parent: system.admin_config
route_name: 'mymodule.action_method_name'
Para os submenus em admin / config, você escolhe o pai correspondente, por exemplo "Regional E Idioma" é:
parent: system.admin_config_regional
Para "Serviços da Web":
parent: system.admin_config_services
mymodule.action_method_name: title: 'My Title'
Saúde!
*.links.menu.yml
módulo do sistema: cgit.drupalcode.org/drupal/tree/core/modules/system/…
É muito simples criar um link em Serviços em /admin/config
.
Neste exemplo, vou supor que o conteúdo da página de administração, chamado de configurações, será preenchido por um controlador dentro src/Controller/MymoduleController.php
Na raiz do seu módulo, você tem dois arquivos mymodule.routing.yml
e mymodule.links.menu.yml
.
No mymodule.links.menu.yml
arquivo, você pode escrever isto:
mymodule.settings:
title: 'My module settings page'
parent: system.admin_config_services
description: 'Admin settings page link'
route_name: mymodule.settings
E com mymodule.routing.yml
isso:
mymodule.settings:
path: '/admin/config/services/mymodule'
defaults:
_controller: '\Drupal\quotesapi\Controller\MymoduleController::settings'
_title: 'My module settings'
requirements:
_permission: 'administer site configuration'
Depois, você pode definir o conteúdo da página com as configurações da função do controlador (). Mas isso está fora do escopo da sua pergunta.
Espero que ajude!
Encontrei este módulo para resolver minhas necessidades de uma maneira muito fácil de usar:
https://www.drupal.org/project/config_pages
Você pode encontrar instruções completas sobre como configurá-lo no URL acima.
Uso do código:
<?php print config_pages_get('footer', 'field_footer_copyright'); ?>
Onde rodapé é o argumento @Type e refere-se ao tipo de página de configuração que você está chamando.