1
在哪里渲染?预处理还是模板?
我们正在不断提高编码性能,并且正在监控每个页面的加载情况,以优化网站的呈现时间。 在上面的声明中,我偶然发现了一个问题,我们应该在哪里渲染可渲染数组? 如果在预处理器中渲染它们,则模板将保持整洁,因为您仅打印变量。 预处理器: 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']); } 模板: <div class="faq_image"> <?php print $faq_image; ?> </div> 但是,我不确定这是预处理和打印变量的正确/最快/最近的方法。 我猜Drupal并不是这个问题……在node.tpl.php呈现默认变量的同时,在其他默认模板(如html.php.php)中,变量只是被打印出来。 是否有人有规则和/或一些技巧和建议以最干净,最快的方式解决此问题?