web-dev-qa-db-fra.com

Comment obtenir des données de texte de champs de paragraphe sans les balises <p>?

J'essaie de passer mes données de champ de paragraphe de Drupal à un composant que j'ai créé dans Twig. Mon composant fait écho des données comme ceci:

<p class='my-custom-class'>{{ my_var }}</p>

Dans mon fichier de modèle, je passe des données au composant comme ceci:

{% include '@components/my-component-name.twig' with {
   my_var: content.field_my_var_name.0
   ...
} %}

Cependant, lorsque cela se charge dans mon navigateur, ce que je reçois est:

<p class='my-custom-class'></p>
<p>The contents of my var.</p>

Comment puis-je charger le contenu de my_var dans mon <p> tag sans injecter un autre tag?

2
party-ring

Votre champ contient-il d'autres <p> tags que vous souhaitez conserver? Ou juste celui-ci au début et à la fin? Si vous n'avez pas besoin de conserver d'autres <p> tags, vous pouvez simplement utiliser Twig's |striptags filtre.

<p class='my-custom-class'>{{ my_var|striptags('<p>') }}</p>

Ou comme @Hudri l'a suggéré dans les commentaires sous votre question, vous pouvez changer le type de champ en autre chose que du texte formaté. Ou essayez peut-être de changer le format de texte en clair.

3
leymannx