Puncte:1

Cum reordonez corpul unui nod și câmpurile de link în subtema mea Bartik?

drapel in

Am o subtemă simplă a temei standard Bartik în Drupal 9.3.0. În mod implicit, când a nodul este redat, ei link-uri, de exemplu. „citește mai mult”, „autentifică-te”, vino înaintea corp.

De exemplu,

<div class="node__content clearfix">
  <div class="node__links">
    <ul class="links inline">
      <li class="node-readmore"><a href="/node/11" rel="tag" >Read more</a></li>
      <li class="comment-forbidden"><a href="/login?destination=/comment/reply/node/11/comment_node_story%23comment-form">Log in</a> to post comments</li>
    </ul>
  </div>
  <div class="clearfix text-formatted field field--name-body ...">
    <p>Body teaser ...</p>
  </div>
</div>

Vreau să schimb cele două componente, de exemplu. corp și link-uri, astfel încât corp este redat mai întâi și link-uri al doilea. Cu toate acestea, nu pot determina ce șablon să înlocuiesc pentru a face acest lucru.

node.html.twig contine:

<div{{ content_attributes.addClass('node__content', 'clearfix') }}>
  {{ content }}
</div>

ceea ce sugerează că {{ continut }} constă din link-uri și corp. Cu toate acestea, nu îmi pot da seama unde are loc redarea acestuia.

Poate cineva să mă îndrume în direcția corectă?

leymannx avatar
drapel ne
De ce nu folosiți setările de afișare ale tipului de nod pentru asta? Există o întreagă interfață de utilizare și numeroase formatoare pentru a face ceea ce doriți fără a fi nevoie să codificați nimic. Puteți utiliza, de asemenea, modulul Field Group dacă simțiți nevoia să adăugați pachete suplimentare în jurul oricărui grup de câmpuri.
drapel in
@leymannx Nu sunt sigur de ce am optat pentru o soluție de subtemă - posibil pentru că oricum făceam subteme pentru o altă problemă. Oricum, am actualizat setările personalizate de afișare și am tras `link-uri` sub `body`, am salvat aceste setări, am revenit subtemei pentru a folosi `{{ conținut }}`, am șters toate memoria cache, am reîmprospătat pagina și... `linkuri` afișate _deasupra_ `corpului`. Nu sunt sigur ce greșesc, dar nu obțin rezultatul așteptat. Ai dreptate totuși, acesta este modul de a proceda, adică. folosiți interfața de utilizare mai degrabă decât codul (dacă aș putea să-l fac să funcționeze).
drapel in
De asemenea, am încercat să folosesc tema Bartik, mai degrabă decât subtema mea și am obținut același rezultat, de exemplu. `linkuri` apoi `corp`.
leymannx avatar
drapel ne
Nu este nimic în neregulă cu tematica secundară. Mult mai ușor de aplicat CSS/JS personalizat cu propria ta subtemă. Doar că, cu ceea ce faci acum în șabloane, învingi UI, setările de afișare, care sunt acolo pentru a face ceea ce vrei cu câteva clicuri.
leymannx avatar
drapel ne
Făcând acest lucru în `node.html.twig` se aplică pentru toate tipurile de noduri. Copierea `node.html.twig` în `node--my-type.html.twig`, goliți memoria cache și ajustați acest lucru, se aplică numai pentru tipul de nod "My-type".
Puncte:2
drapel ua
{{ continut }}

conține totul, puteți fi mai granular și înlocuiți-l cu, de exemplu:

{{ content.title }} 
{{ content.body }}
{{ content.field_name }}
{{ content.links }}
Puncte:1
drapel ne

Pur și simplu accesați Structură > Tipuri de conținut > Tipul meu de conținut > Gestionați afișarea.

https://example.com/admin/structure/types/manage/page/display.

Captură de ecran a interfeței de utilizare a câmpului Drupal

Acolo reordonați câmpurile afișate în tema implicită de front-end cu câteva clicuri, export config, gata. Pentru desfășurare git push fișierele de configurare exportate, pe prod git pull din nou și acum import config, gata.

De asemenea, puteți utiliza Grupul de câmpuri modul dacă simțiți nevoia să adăugați pachete suplimentare în jurul oricărui grup de câmpuri prin interfața de utilizare.

Prin șablonarea tuturor lucrurilor, învingeți interfața Field UI, în timp ce setările de afișare sunt întotdeauna primul loc în care orice viitor întreținător al acelui site va căuta de ce ceva pare ciudat sau pur și simplu dorește să schimbe un formatator și apoi s-ar putea întreba de ce nu are niciun efect. "La naiba, trebuie să mă uit prin șabloane acum și să codific lucrurile care ar fi putut fi schimbate cu un singur clic."

Numai șablon atunci când aveți într-adevăr nevoia să ajustați marcajul la nevoi mai avansate, cum ar fi atunci când lucrați cu componente web sau un plugin JS de lux pentru prezentari de diapozitive care nu are încă modul Drupal, dar necesită o anumită imbricare de markup.

drapel in
Multumesc pentru raspunsul detaliat. Am găsit configurația „gestionați afișajul” pe care ați evidențiat-o. Ceea ce am ratat prima dată au fost diferitele file pentru „Default”, „RSS” și „Teaser”. D'oh! Odată ce am reordonat câmpurile în _toate_ filele, afișajul s-a potrivit cu ceea ce aveam nevoie.
leymannx avatar
drapel ne
@dave â Aceste file „Implicit” etc. reprezintă **moduri de vizualizare**. Când vizitați un singur termen, de exemplu https://example.com/taxonomy/term/3, termenul va fi redat în modul de vizualizare „Implicit” (sau uneori numit „Complet”). În alte locuri (de exemplu, atunci când creați o pagină Vizualizări care listează termeni de taxonomie), aceștia pot fi redați în modul de vizualizare „Teaser” afișând doar un subset de câmpuri. Același lucru este valabil și pentru tipurile de noduri. Pe pagina respectivă https://example.com/taxonomy/term/3, în mod implicit, toate nodurile etichetate cu acest termen sunt afișate în modul de vizualizare „Teaser” afișând doar titlul și corpul tăiat al nodurilor.
Puncte:0
drapel pw

În șablonul de nod, spuneți „node--article.html.twig”, puteți reordona link-urile și corpul după cum urmează.

<div{{ content_attributes.addClass('conținut') }}>
{{ content.body }} 
{{ content.links }} 

introduceți descrierea imaginii aici

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.