Kami terus meningkatkan kinerja pengkodean kami dan kami memantau setiap pemuatan halaman untuk mengoptimalkan pemuatan dan waktu rendering di situs web kami.
Di atas pernyataan dalam pikiran, saya menemukan pertanyaan di mana kita harus membuat array yang dapat diulang?
Jika Anda membuatnya di preprocessor Anda, templat tetap cukup rapi karena Anda hanya mencetak variabel.
Preprosesor:
function template_preprocess_node__faq(&$variables) {
$node = node_load($variables['nid']);
$node_style = node_view($node, $variables['view_mode']);
$faq_sets = array(
'#theme' => 'my_module_faq_set',
'#sets' => $variables['field_faq_set'],
);
$variables['faq_image'] = render($node_style['field_faq_image']);
}
Templat:
<div class="faq_image">
<?php print $faq_image; ?>
</div>
Namun, saya tidak yakin ini adalah cara yang tepat / tercepat / tertata rapi untuk preprocess dan mencetak variabel.
Drupal tidak terdiri dalam hal ini, saya kira ... Dalam node.tpl.php
variabel default diberikan sementara dalam template default lainnya (seperti html.php.php
), variabel hanya dicetak.
Apakah ada yang punya aturan dan / atau beberapa tips dan saran tentang cara mengatasi masalah ini dengan cara yang paling bersih dan tercepat?
node.tpl.php
dan mencetak html.tpl.php
? Bagaimana Anda mengatasi node_view()
masalah ini?
node_view()
untuk membuat bidang; bidang tidak dirender seperti itu di templat simpul.