Skip to the content
Documentation
Help Start
Reading in:
  • German: 9,059 of 9,059 pages
About the help in other languages
All help pages

exp:exptemplateconvert

Convert the templates of a design from one template engine to another (--from-engine, --to-engine: tpl, stpl, twig); --dry-run, --file, --force, --override-ini, --twig-suffix.

Download as PDF

Address: https://doc.exponential.earth/exphelp/viewer/examples/commands/exptemplateconvert.md

On this page

exp:exptemplateconvert

Convert the templates of a design from one template engine to another (--from-engine, --to-engine: tpl, stpl, twig); --dry-run, --file, --force, --override-ini, --twig-suffix.

Script bin/php/exptemplateconvert.php, code in kernel/private/classes/commands/exptemplateconvert.php. Run it from the installation root, as the user the web server runs as:

./console exp:exptemplateconvert --help
./console exp:template:convert --help
php bin/php/exptemplateconvert.php --help

Help text

Convert the templates of a design from one template engine to another
Engines: tpl (Exponential templates, .tpl; also exp, exponential), stpl (Smarty templates, .stpl;
also smarty) and twig (Twig templates, .twig and .html.twig). Every template of the --from-engine
below --from becomes the template of the --to-engine at the same place below --to (templates/ and
override/templates/ alike), so that it prints what the source printed. Smarty and Twig convert to
each other through Exponential templates, in memory, in one run. The named commands do the same
with the engines fixed: exp:template:convert:tpl-to-stpl, :stpl-to-tpl, :tpl-to-twig, :twig-to-tpl,
:stpl-to-twig and :twig-to-stpl.

./console exp:template:convert --from-engine=tpl --to-engine=stpl --from=extension/<ext>/design/<design> --to=var/tmp/<design>
./console exp:template:convert --from-engine=stpl --to-engine=tpl --from=var/tmp/<design> --to=var/tmp/<design>-tpl
./console exp:template:convert --from-engine=tpl --to-engine=stpl --from=extension/<ext>/design/<design> --dry-run
./console exp:template:convert --from-engine=tpl --to-engine=stpl --file=design/<design>/templates/<name>.tpl
./console exp:template:convert --from-engine=tpl --to-engine=twig --from=extension/<ext>/design/<design> --to=var/tmp/<design> --twig-suffix=.html.twig

Every written file ends with a marker comment in the target engine's comment syntax
({* exp:template:convert tpl->stpl md5:... from ... *}, {# exp:template:convert tpl->twig ... #});
a target that has no marker, or was changed after it was written, is skipped (SKIP) unless --force
is given. The result is checked before it is written: a .stpl must compile with Smarty 5 and a .twig
with Twig 3 (when installed), a .tpl must parse. Prints WRITE or REPLACE for every file written, NOTE for every
construct that could not be converted exactly, ERROR for a template that could not be converted,
then PASS or FAIL with the counts.
Exit code: 0 PASS; 1 FAIL (a template could not be read, converted, checked or written); 2 wrong
options; 3 the conversion between the two engines is not available.

Options

OptionValueHelp
--from-enginerequiredthe engine of the templates to convert: tpl, stpl or twig
--to-enginerequiredthe engine to convert them to: tpl, stpl or twig
--fromrequireddesign directory with the templates to convert (every template of --from-engine below it)
--torequireddesign directory for the converted templates (default: the --from directory, next to the sources)
--filerequiredconvert this one template only (below --from, or a file of its own: then --to is the target file)
--override-inirequiredoverride.ini.append.php to write for the --to design (the -s siteaccess's override rules, MatchFile pointing at the converted templates)
--twig-suffixrequiredthe ending of written Twig templates: .twig (the default) or .html.twig
--dry-runshow what would be written; nothing is written
--forcealso replace a target that was changed or written by hand (no marker, or not matching it)

Read from the option definitions in the code (startup(), getOptions(), options() or ezcConsoleOption). Every script also takes the standard options of the script framework (--help, --siteaccess, --debug, --quiet, --allow-root-user ...).


Generated by ./console exp:help:examples from bin/php/exptemplateconvert.php, kernel/private/classes/commands/exptemplateconvert.php. Do not edit this page: change the source and generate again (how). Free documentation: GFDL 1.3 or later.

Something wrong on this page? Report an error

Documentation license

This documentation is free documentation, licensed under the GNU Free Documentation License 1.3 or later.

Exponential Copyright © 1998-2026 Exponential Foundation and 7x