Tôi đang tìm hiểu cách tạo mô-đun cho Drupal 8. Tôi đã đọc nhiều hướng dẫn cơ bản, nhưng tôi chưa thấy một bài nào nói về việc thêm một liên kết đến trang / admin / config .
Cụ thể hơn, tôi muốn thêm liên kết trong khu vực DỊCH VỤ WEB .
Tôi đang tìm hiểu cách tạo mô-đun cho Drupal 8. Tôi đã đọc nhiều hướng dẫn cơ bản, nhưng tôi chưa thấy một bài nào nói về việc thêm một liên kết đến trang / admin / config .
Cụ thể hơn, tôi muốn thêm liên kết trong khu vực DỊCH VỤ WEB .
Câu trả lời:
Bạn có thể làm điều này giống như bất kỳ mục menu nào khác, bạn chỉ phải chọn đúng vị trí trong cấu trúc menu:
Trước tiên, thêm đường dẫn quản trị viên trong mymodule.routing.yml:
/admin/config/...
Thứ hai đặt mục menu vào mymodule.links.menu.yml và đặt nó bên dưới cha mẹ bên phải:
mymodule.action_method_name:
title: 'My Title'
description: 'My Description'
parent: system.admin_config
route_name: 'mymodule.action_method_name'
Đối với các menu con trong admin / config, bạn chọn cha mẹ tương ứng, ví dụ "Vùng và ngôn ngữ" là:
parent: system.admin_config_regional
Đối với "Dịch vụ web":
parent: system.admin_config_services
mymodule.action_method_name: title: 'My Title'
Chúc mừng!
*.links.menu.yml
mô-đun hệ thống: cgit.drupalcode.org/drupal/tree/core/modules/system/ Kẻ
Rất đơn giản để tạo một liên kết trong Dịch vụ tại /admin/config
.
Trong ví dụ này, tôi sẽ tiết lộ rằng nội dung trên trang quản trị, được gọi là cài đặt, sẽ được lấp đầy bởi một bộ điều khiển bên trong src/Controller/MymoduleController.php
Trên thư mục gốc của mô-đun, bạn có hai tệp mymodule.routing.yml
và mymodule.links.menu.yml
.
Tại mymodule.links.menu.yml
tập tin bạn có thể viết này:
mymodule.settings:
title: 'My module settings page'
parent: system.admin_config_services
description: 'Admin settings page link'
route_name: mymodule.settings
Và tại mymodule.routing.yml
đây:
mymodule.settings:
path: '/admin/config/services/mymodule'
defaults:
_controller: '\Drupal\quotesapi\Controller\MymoduleController::settings'
_title: 'My module settings'
requirements:
_permission: 'administer site configuration'
Sau đó, bạn có thể đặt nội dung của trang bằng cài đặt chức năng của bộ điều khiển () Nhưng điều đó nằm ngoài phạm vi câu hỏi của bạn.
Hy vọng nó giúp!
Tôi tìm thấy mô-đun này để giải quyết nhu cầu của mình theo cách rất dễ sử dụng:
https://www.drupal.org/project/config_pages
Bạn có thể tìm thấy hướng dẫn đầy đủ về cách định cấu hình nó trong URL trên.
Sử dụng mã:
<?php print config_pages_get('footer', 'field_footer_copyright'); ?>
Trong đó chân trang là đối số @Type và đề cập đến loại trang cấu hình bạn đang gọi.