Puncte:1

Cum să suprascrieți fațetele casetei de selectare tema și stilul casetelor de selectare bifate?

drapel tr

Întâmpin probleme la stilarea casetei de selectare a fațetelor Drupal 9 în starea bifată. Am încercat să înlocuiesc tema prin theme_preprocess_checkboxes fără niciun efect.

aici este codul meu:

 funcția mytheme_preprocess_checkboxes($variabile) {

  $element = $variabile['element'];
  $element['#attributes']['type'] = 'caseta de selectare';
  element_set_attributes($element, array('id', 'name', '#return_value' => 'valoare'));

  // Caseta de selectare debifată are #valoarea întregului 0.
  dacă (!empty($element['#verificat'])) {
      $element['#attributes']['checked'] = 'verificat';
  }
  _form_set_class($element, array('form-checkbox'));

  returnează „<input” . drupal_attributes($element['#attributes']) . ' /><span></span>';
}

Bănuiesc că nu primesc casete de selectare cu fațete. Orice sugestie cum pot stila fațetele și cum le modific șabloanele.

Folosesc subtema bootstrap 3 pe drupal 9

Vitaliy K avatar
drapel tr
Din păcate, cârligul preprocess_checkboxes este decăzut și nu va mai fi disponibil din versiunea Drupal 10... deci caut soluții. probabil că trebuie să rescriu temeplate, dar tot nu îl găsesc nici măcar în folderul cu modele de module de fațete... :(
Vitaliy K avatar
drapel tr
apropiindu-se mai mult de ea: funcția publică statică Checkbox::preRenderCheckbox pentru casetele de selectare fără fațete în stade bifat se adaugă la elementul clasei css. dar încă nu pot urmări fațetele chekbox rendering
Puncte:1
drapel cn

Casetele de selectare sunt create în JS, nu în PHP, așa că nu le veți putea manipula din backend (vezi Drupal.facets.makeCheckbox în facets/js/checkbox-widget.js pentru cod).

Înseamnă că poți folosi tu însuți niște JS simplu; de exemplu, presupunând că trebuie să adăugați un interval gol, probabil că trebuie doar să adăugați ceva de genul acesta la un comportament personalizat:

$('.facets-checkbox').after($('<span />'))

(acesta este doar un exemplu minim, ar trebui să utilizați o singura data sau un mecanism similar pentru a vă asigura că nu este executat de mai multe ori pentru același element).

Vitaliy K avatar
drapel tr
Mulțumesc, Clive va încerca acest pic

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.