Search code examples
phpwordpresstemplatessymfonytwig

Wordpress twig template shortcode not displayed


I'm using Symfony Twig template with Wordpress, everything runs fine except that I can't get any shortcode to be displayed in a page template.

I'm trying to display a contact form with Contact form 7 plugin.

The shortcode is something like [contact-form-7 id='1234' title='Contact'] Even Wordpress default shortcode are not working.

Here is my code for page template:

{% extends 'base.html.twig' %}

{% block content %}
    <h1>{{ post.post_title }}</h1>

    <div class="entry">
        {{ post.post_content|raw }}
    </div>
{% endblock %}

If I replace

{{ post.post_content|raw }}

by this

{{ wp.do_shortcode('[contact-form-7 id="1234" title="Contact"]') }}

I can see the contact form. But I don't want to write the shortcode in my template file.

Thanks for your help


Solution

  • One of the following should work!

    {{ wp.do_shortcode( post.post_content) }}

    or,

    {{ wp.do_shortcode( post.post_content)|raw }}

    or ,

    {{ wp.do_shortcode( post.post_content|raw ) }}

    or

    {{ wp.do_shortcode( post.post_content|raw )|raw }}

    Updated

    Working Code Is :

    {{ wp.do_shortcode( post.post_content)|raw }}