mirror of
https://github.com/smarty-php/smarty.git
synced 2025-11-03 05:41:37 +01:00
91 lines
2.5 KiB
XML
91 lines
2.5 KiB
XML
<?xml version="1.0" encoding="iso-8859-1"?>
|
|
<!-- $Revision$ -->
|
|
<!-- EN-Revision: 1.6 Maintainer: andreas Status: ready -->
|
|
<sect1 id="language.escaping">
|
|
<title>Smarty Parsing umgehen</title>
|
|
<para>
|
|
Manchmal ist es wünschenswert, dass Smarty Teile eines
|
|
Templates nicht parst. Dies ist zum Beispiel der Fall, wenn
|
|
Javascript oder CSS im Template eingebettet werden. Da diese
|
|
Sprachen selbst { und } nutzen, erkennt Smarty diese als Start-
|
|
beziehungsweise End-Tags.
|
|
</para>
|
|
|
|
<para>
|
|
Der einfachste Weg, dieses Problem zu umgehen, ist das Auslagern des
|
|
betreffenden Javascript oder CSS Codes in eigene Dateien.
|
|
</para>
|
|
|
|
<para>
|
|
Um solche Inhalte trotzdem im gleichen Template einzubetten, können
|
|
Sie <link linkend="language.function.literal">{literal}
|
|
.. {/literal}</link> Blöcke verwenden. Die aktuell benutzten
|
|
Trennzeichen können Sie mit <link
|
|
linkend="language.function.ldelim">{ldelim}</link>, <link
|
|
linkend="language.function.ldelim">{rdelim}</link>, <link
|
|
linkend="language.variables.smarty.ldelim">{$smarty.ldelim}</link>
|
|
und <link linkend="language.variables.smarty.ldelim">{$smarty.rdelim}</link>
|
|
ausgeben.
|
|
</para>
|
|
|
|
<para>
|
|
Manchmal ist es auch einfacher, die Trennzeichen selbst zu ändern:
|
|
<link linkend="variable.left.delimiter">$left_delimiter</link> und
|
|
<link linkend="variable.right.delimiter">$right_delimiter</link>
|
|
definieren diese.
|
|
</para>
|
|
<example>
|
|
<title>Beispiel wie die Trennzeichen angepasst werden</title>
|
|
<programlisting role="php">
|
|
<![CDATA[
|
|
<?php
|
|
|
|
$smarty = new Smarty;
|
|
$smarty->left_delimiter = '<!--{';
|
|
$smarty->right_delimiter = '}-->';
|
|
$smarty->assign('foo', 'bar');
|
|
$smarty->display('example.tpl');
|
|
|
|
?>
|
|
]]>
|
|
</programlisting>
|
|
<para>
|
|
example.tpl würde somit wie folgt aussehen:
|
|
</para>
|
|
<programlisting>
|
|
<![CDATA[
|
|
<script language="javascript">
|
|
var foo = <!--{$foo}-->;
|
|
function dosomething() {
|
|
alert("foo is " + foo);
|
|
}
|
|
dosomething();
|
|
</script>
|
|
]]>
|
|
</programlisting>
|
|
</example>
|
|
<para>
|
|
Siehe auch: <link linkend="language.modifier.escape">Escape Modifikator</link>
|
|
</para>
|
|
</sect1>
|
|
<!-- Keep this comment at the end of the file
|
|
Local variables:
|
|
mode: sgml
|
|
sgml-omittag:t
|
|
sgml-shorttag:t
|
|
sgml-minimize-attributes:nil
|
|
sgml-always-quote-attributes:t
|
|
sgml-indent-step:1
|
|
sgml-indent-data:t
|
|
indent-tabs-mode:nil
|
|
sgml-parent-document:nil
|
|
sgml-default-dtd-file:"../../../../manual.ced"
|
|
sgml-exposed-tags:nil
|
|
sgml-local-catalogs:nil
|
|
sgml-local-ecat-files:nil
|
|
End:
|
|
vim600: syn=xml fen fdm=syntax fdl=2 si
|
|
vim: et tw=78 syn=sgml
|
|
vi: ts=1 sw=1
|
|
-->
|