Puncte:1

Apelarea unui șablon de crenguță în funcție de numărul de articole de câmp

drapel cn

Trebuie să apelez diferite șabloane de crenguță ale unui câmp de imagine, în funcție de numărul de articole din acest câmp. Dacă există doar 1 articol imagine, aș dori să folosesc template1.html.twig. Dacă există > 1 elemente de imagine, aș dori să folosesc template2.html.twig.

Este posibil? Dacă da, cum?

drapel cn
Puteți folosi lungimea pentru a face logica condiționată în șablon? https://twig.symfony.com/doc/2.x/filters/length.html Cu alte cuvinte, un șablon, dar folosiți lungimea pentru a număra numărul de articole și apoi îl procesați diferit pe baza acestuia.
drapel cn
Știu cum se utilizează lungimea - aceasta ar fi soluția mea când știu cum să apelez diferite șabloane. Nu știu codul pentru a apela 2 șabloane diferite când există doar 1 (de la un modul) și știu absolut sugestii de nume de fișier (alterează).
Puncte:3
drapel ne

Sună ca o simplă sugestie de șablon adăugată dintr-un modul personalizat sau o temă de-a lungul următorului fragment.

/**
 * Implementează hook_theme_suggestions_HOOK_alter().
 */
function MYTHEME_theme_suggestions_field_alter(matrice &$sugestii, matrice $variabile) {
  if ($variables['element']['#field_name'] === 'field_MYFIELD') {
    // Da înapoi.
    $valori = '';

    /** @var \Drupal\Core\Field\FieldItemList $articole */
    $items = $variables['element']['#items'];
    dacă ($articole->număr() == 1) {
      $valori = '__single_image';
    }
    if ($items->count() > 1) {
      $valori = '__slideshow';
    }

    $suggestions[] = 'câmp__' . $variables['element']['#field_name'] . $valori;
  }
}

Acest lucru ți-ar permite să ai field--field-MYFIELD--single-image.html.twig sau field--field-MYFIELD--slideshow.html.twig.

Goliți memoria cache!

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.