2

I have a paragraph template in my custom theme as paragraph--home-page-carousel.html and when I write like this

<span class="car-spec">{{ content.field_home_slide_snippet[0]|raw }}</span>

I get in HTML source code this

 <div>
    <span class="car-spec">
    FIELD CONTENT
    </span>
</div>

what should I do to remove the div wrapper?

3 Answers 3

8

You shouldn't do {{ content.field_home_slide_snippet[0]|raw }}. You should do {{ content.field_home_slide_snippet }} and edit the twig template for field--field-home-slide-snippet.html.twig to have no HTML wrappers. Copy field.html.twig to your theme and edit as needed.

3
  • 2
    Thank you, Kevin but I tried this and still get the "div". Commented Dec 12, 2017 at 4:55
  • 1
    Did you also edit the paragraph twig and remove the div? If you enable twig debugging it will tell you what templates are being used.
    – Kevin
    Commented Dec 12, 2017 at 12:39
  • 1
    Yes I removed from the both. I enabled devel and twig debug and tried these templates Commented Dec 12, 2017 at 13:13
3

You could use the strip tags filter : {{ some_html|striptags('<span>') }}
Assuming the html is dynamically wrapped by the <div> tag, this will strip the <div> tag and leave the <span> tag.

so

{% set mycontent %}
    {{ content.field_home_slide_snippet }}
{% endset %}
{{ mycontent|striptags('<span>') }}

https://twig.symfony.com/doc/2.x/filters/striptags.html

1

I think you can use

{{ content.field_home_slide_snippet.0["#context"].value }}

or enable devel module and then use

{{ kint(content.field_home_slide_snippet) }}

to see where is value that you need.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.