drupal 8 – ¿Cómo utilizo una función de preproceso para una plantilla de nodo?

Pregunta:

Estoy tratando de preprocesar mi matriz de variables en drupal 8, pero no funciona bien. También estoy comprobado con el tema Bartik, pero obteniendo el mismo error aquí. Cuando intento imprimir la matriz de variables, da un resultado de página en blanco. ¿Cómo puedo preprocesar mi matriz de variables para una plantilla de nodo?

`function bartik_preprocess_node(&$variables) {
  // Remove the "Add new comment" link on teasers or when the comment form is
  // displayed on the page.
  if ($variables['teaser'] || !empty($variables['content']['comments']['comment_form'])) {
    unset($variables['content']['links']['comment']['#links']['comment-add']);
  }
  print_r($variables);
}`

Esta es la función que intenté verificar el problema en el tema bartik.

Respuesta:

En lugar de usar print_r() habilite el módulo devel y su nuevo submódulo llamado kint. Y use kint() lugar de print_r() . También puede usar print_r() pero es complicado.

¿Cómo puedo preprocesar mi matriz de variables para una plantilla de nodo?

function YOURTHEME_preprocess_node(&$variables){
  kint($variables);
}

Si esto no funciona, podría ser un problema de caché. Le recomendaré que configure su sitio web en modo dev usando DrupalConsole. drupal site:mode dev

Por qué ?

El motor Twig proporciona opciones para configurar la depuración, la recarga automática (recompilación) de plantillas y el almacenamiento en caché de plantillas compiladas en el sistema de archivos. De forma predeterminada, el motor de tematización Twig compila plantillas en código PHP y almacena el código compilado en la memoria. El código compilado no es adecuado para el desarrollo, ya que los cambios en las plantillas de Twig no se actualizan inmediatamente en su sitio Drupal. La caché de Twig se puede borrar a través de la interfaz de caché clara de Drupal, pero para el desarrollo continuo es más fácil cambiar la configuración de Drupal para que Twig no almacene nada en la caché.

Ejecutar el drupal site:mode dev deshabilitará todo el caché de drupal site:mode dev . Para obtener más información sobre la depuración, visite – Depuración de plantillas Twig compiladas

Leave a Comment

Your email address will not be published. Required fields are marked *

Scroll to Top

web tasarım