Tôi đang làm việc với D8 và không thường xuyên thực hiện theo chủ đề, vì vậy tôi đang gặp phải một vấn đề.
Tôi có một tuyến tùy chỉnh trong mô-đun tùy chỉnh gọi phương thức checkinConfirmation() trên bộ điều khiển.
Bên trong bộ điều khiển đó, tôi có cái này:
kiểm tra chức năng công khaiXác nhận () {
$output['items'] = [
'#type' => 'bộ trường',
'#title' => t('Các mục đã đăng ký'),
];
$output['items']['name'] = [
'#prefix' => '<h2>',
'#suffix' => '</h2>',
'#markup' => t('Tên'),
];
$output['#theme'] = 'xác_nhận tuần hoàn';
$output['#output'] = $output;
trả lại đầu ra $;
}
và bên trong chủ đề của tôi, tôi có cái này bên trong hook_theme()
hàm công khai mytheme_theme() {
$theme['circulation_confirmation'] = [
'mẫu' => 'trang/lưu hành--xác nhận',
'biến' => [
'đầu ra' => [],
],
];
}
Trong mẫu của tôi, tôi có một {{ đầu ra }}
biến để in kết quả hiển thị được cung cấp từ $output. Tuy nhiên, vấn đề là tôi không nhận được các mục trong mẫu và tôi không thể hiểu tại sao. Mẫu đang được kéo vào, vì trình bao bọc trong tệp mẫu đang được áp dụng trên trang và vùng chứa chính là chiều rộng của nó.
Thay vào đó, khi sử dụng cái này (trong bộ điều khiển):
trở lại [
'#theme' => 'xác_nhận_lưu_thông',
'#output' => $output,
];
Ít nhất thì tôi cũng lấy được dữ liệu, nhưng có vẻ như nó không sử dụng mẫu mà tôi đã cung cấp vì trình bao bọc hiện đã biến mất và vùng chứa chính có chiều rộng đầy đủ thay vì chiều rộng của nó.
Tôi không thường tạo chủ đề hoặc tạo khuôn mẫu và khi tôi làm, nó thường ở dạng nên tôi chỉ có thể chuyển 'phần tử kết xuất' => 'biểu mẫu' để chuyển các mục biểu mẫu sang chủ đề. Tôi không chắc mình đang làm gì sai.
Hãy giúp tôi?