Saya memiliki serangkaian variabel yang ingin saya buat di templat ranting untuk templat konten tertentu.
Dalam MYTHEME.theme
aku punya:
function MYTHEME_preprocess_node(&$variables) {
if (isset($variables['node'])) {
$mycustomblock = \Drupal::service('plugin.manager.block')
->createInstance('myblock', []);
$variables['mycustomblock'] = $mycustomblock->build();
$headertext = \Drupal::service('plugin.manager.block')
->createInstance('headertext',
[
'text-align-submit' => 'right',
'uppercase-submit' => TRUE,
'header_size' => 'h4',
'header-size-submit' => 'h4',
'grid-size-submit' => 6,
'header-title' => 'This is a test',
]
);
$variables['headertext'] = $headertext->build();
}
}
Ini memungkinkan saya untuk menggunakan {{ headertext }}
dan {{ mycustomblock }}
dalam templat tipe konten seperti node--contenttype1.html.twig
dan node--contenttype2.html.twig
. Tapi saya lebih suka tidak membangun 'headertext'
dan 'mycustomblock'
variabel untuk setiap jenis node tunggal ketika saya hanya perlu masing-masing untuk satu jenis konten. Akan lebih baik untuk memiliki saklar atau jika pernyataan yang memeriksa jenis konten yang mana itu sebelum menghasilkan variabel dengan blok.
Apakah ada cara agar saya dapat memeriksa jenis konten dari simpul?
Saya sudah mencoba
$type = $variables['node']->type;
Tetapi itu tidak berhasil.