migrify/latte-to-twig

Latte to Twig converter converts Latte to Twig


README

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 migrify/latte-to-twig --dev

Usage

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

vendor/bin/latte-to-twig convert file.twig
vendor/bin/latte-to-twig 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 :)

Report Issues

In case you are experiencing a bug or want to request a new feature head over to the migrify monorepo issue tracker

Contribute

The sources of this package are contained in the migrify monorepo. We welcome contributions for this package on migrify/migrify.