Estamos mejorando constantemente nuestro rendimiento de codificación y estamos monitoreando cada carga de página para optimizar los tiempos de carga y representación en nuestros sitios web.
Por encima de la declaración en mente, me topé con la pregunta de dónde deberíamos renderizar las matrices renderizables.
Si los procesa en su preprocesador, la plantilla se mantiene bastante ordenada ya que solo está imprimiendo variables.
Preprocesador:
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']);
}
Modelo:
<div class="faq_image">
<?php print $faq_image; ?>
</div>
Sin embargo, no estoy seguro de que esta sea la forma adecuada / más rápida / más ordenada de preprocesar e imprimir variables.
Drupal tampoco consiste en este asunto, supongo ... En las node.tpl.php
variables predeterminadas se representan, mientras que en otras plantillas predeterminadas (como html.php.php
), las variables se imprimen.
¿Alguien tiene una regla y / o algunos consejos y sugerencias sobre cómo abordar este problema de la manera más limpia y rápida?
node.tpl.php
e imprimiendo html.tpl.php
? ¿Cómo abordarías el node_view()
problema?
node_view()
para representar un campo; los campos no se representan de esa manera en una plantilla de nodo.