Mới sử dụng Trình tạo bố cục - chúng tôi đã tạo plugin khối tùy chỉnh hiển thị biểu mẫu tùy chỉnh. Khi tôi truy cập một trang có Trình tạo bố cục và thử thêm khối đó... nó không có trong danh sách các khối.
lớp MyBlock mở rộng BlockBase thực hiện ContainerFactoryPluginInterface {
được bảo vệ $formBuilder;
hàm công khai __construct(mảng $configuration, $plugin_id, $plugin_definition, FormBuilderInterface $form_builder) {
cha mẹ::__construct($configuration, $plugin_id, $plugin_definition);
$this->formBuilder = $form_builder;
}
tạo hàm tĩnh công khai (ContainerInterface $container, mảng $configuration, $plugin_id, $plugin_definition) {
trả về tĩnh mới (
cấu hình $,
$plugin_id,
$plugin_definition,
$container->get('form_builder')
);
}
xây dựng chức năng công cộng () {
$build['access_form'] = $this->formBuilder->getForm('Drupal\mymodule\Form\MyForm');
trả lại bản dựng $;
}
}
Có điều gì tôi cần thêm vào chú thích hoặc lớp để biến nó thành một tùy chọn cho Trình tạo bố cục không? Nó hoạt động tốt như một khối Drupal bình thường.
chỉnh sửa: Tôi nhận thấy trong một mô-đun tùy chỉnh ngẫu nhiên, họ phải thay đổi Trình tạo bố cục để có được chức năng này. Đúng không??
https://git.drupalcode.org/project/layout_builder_block/-/blob/1.x/src/EventSubscriber/LayoutBuilderBlockAddControllerSubscriber.php