Skip to content
[READ-ONLY] Latte to Twig converter converts Latte to Twig
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
bin
config
src
tests
.gitattributes
.gitignore
.travis.yml
LICENSE
README.md
composer.json
phpunit.xml

README.md

Latte to Twig Converter

Build Status Downloads total

Do you want to turn your Latte templates to Twig?

Before

{foreach $values as $key => $value}
    {$value->getName()}

    {if isset($value['position'])}
        {$value['position']|noescape}
    {else}
        {var $noPosition = true}
    {/if}
{/foreach}

After

{% for key, value in values %}
    {{ value.getName() }}

    {% if value.position is defined %}
        {{ value.position|raw }}
    {% else %}
        {% set noPosition = true %}
    {% endif %}
{% endfor %}

And much more!

This package won't do it all for you, but it will help you with 80 % of the boring work.

Install

composer require symplify/latte-to-twig-converter --dev

Usage

It scan all the *.twig/*.latte files and converts to Twig with *.twig.

vendor/bin/latte-to-twig-converter convert file.twig
vendor/bin/latte-to-twig-converter convert /directory

Handle These Cases to Manually

Some code doesn't have a clear path - you have more options in Twig, so better to migrate it manually.

continueIf

-{continueIf $cond}
+{% if cond %}
-{$value}
+    {{ value }}
+{% endif %}

breakIf

-{breakIf $cond}
+{% if cond === false %}
-{$value}
+    {{ value }}
+{% endif %}

That's it :)

You can’t perform that action at this time.
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.