added examples to compile_id. thanks to Pete_M.

This commit is contained in:
messju
2005-04-06 19:29:49 +00:00
parent 8f0c1f7026
commit b2532a58c3

View File

@@ -1,12 +1,37 @@
<?xml version="1.0" encoding="iso-8859-1"?> <?xml version="1.0" encoding="iso-8859-1"?>
<!-- $Revision$ --> <!-- $Revision$ -->
<sect1 id="variable.compile.id"> <sect1 id="variable.compile.id">
<title>$compile_id</title> <title>$compile_id</title>
<para> <para>
Persistant compile identifier. As an alternative to passing the same Persistant compile identifier. As an alternative to passing the same
compile_id to each and every function call, you can set this compile_id compile_id to each and every function call, you can set this
and it will be used implicitly thereafter. compile_id and it will be used implicitly thereafter.
</para> </para>
<para>
With a compile_id you can work around the limitation that you cannot
use the same compile_dir for different template_dirs. If you set a
distinct compile_id for each template_dir then smarty can tell the
compiled templates apart by their compile_id.
</para>
<para>
If you have for example a prefilter that localizes your templates
(that is: translates language dependend parts) at compile time, then
you should use the current language as compile_id and you will get a
set of compiled templates for each language you use.
</para>
<para>
Another example would be to use the same compile directory across
multiple domains / multiple vhosts. eg:
</para>
<example>
<title>compile_id</title>
<programlisting role="php">
<![CDATA[
$smarty->compile_id = $_SERVER['SERVER_NAME'];
$smarty->compile_dir = 'path/to/shared_compile_dir';
]]>
</programlisting>
</example>
</sect1> </sect1>
<!-- Keep this comment at the end of the file <!-- Keep this comment at the end of the file
Local variables: Local variables:
@@ -27,4 +52,4 @@ End:
vim600: syn=xml fen fdm=syntax fdl=2 si vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml vim: et tw=78 syn=sgml
vi: ts=1 sw=1 vi: ts=1 sw=1
--> -->