Files
smarty/docs/ru/designers/language-builtin-functions/language-function-include.xml
2005-12-05 17:11:58 +00:00

193 lines
5.0 KiB
XML

<?xml version="1.0" encoding="windows-1251"?>
<!-- $Revision$ -->
<!-- EN-Revision: 1.9 Maintainer: freespace Status: ready -->
<sect1 id="language.function.include">
<title>{include}</title>
<para>
Òýãè {include} èñïîëüçóþòñÿ äëÿ âêëþ÷åíèÿ äðóãèõ øàáëîíîâ â òåêóùèé.
Ëþáûå ïåðåìåííûå, äîñòóïíûå â òåêóùåì øàáëîíå, äîñòóïíû è âî
âêëþ÷àåìîì. Òýã {include} äîëæåí èìåòü àòðèáóò "file", êîòîðûé
óêàçûâàåò ïóòü ê ðåñóðñó øàáëîíà.
</para>
<para>
Îïöèîíàëüíûé àòðèáóò <emphasis>assign</emphasis> óêàçûâàåò, ÷òî
ðåçóëüòàò âûïîëíåíèÿ {include} áóäåò ïðèñâîåí ïåðåìåííîé âìåñòî îòîáðàæåíèÿ.
</para>
<informaltable frame="all">
<tgroup cols="5">
<colspec colname="param" align="center" />
<colspec colname="type" align="center" />
<colspec colname="required" align="center" />
<colspec colname="default" align="center" />
<colspec colname="desc" />
<thead>
<row>
<entry>Èìÿ àòðèáóòà</entry>
<entry>Òèï</entry>
<entry>Îáÿçàòåëåí</entry>
<entry>Ïî óìîë÷àíèþ</entry>
<entry>Îïèñàíèå</entry>
</row>
</thead>
<tbody>
<row>
<entry>file</entry>
<entry>string</entry>
<entry>Äà</entry>
<entry><emphasis>n/a</emphasis></entry>
<entry>Èìÿ ôàéëà øàáëîíà äëÿ âêëþ÷åíèÿ</entry>
</row>
<row>
<entry>assign</entry>
<entry>string</entry>
<entry>Íåò</entry>
<entry><emphasis>n/a</emphasis></entry>
<entry>Èìÿ ïåðåìåííîé, êîòîðîé ïðèñâîèòñÿ âûâîä
øàáëîíà</entry>
</row>
<row>
<entry>[var ...]</entry>
<entry>[var type]</entry>
<entry>Íåò</entry>
<entry><emphasis>n/a</emphasis></entry>
<entry>Ïåðåìåííûå, ïåðåäàííûå â ëîêàëüíóþ îáëàñòü
âêëþ÷àåìîãî øàáëîíà</entry>
</row>
</tbody>
</tgroup>
</informaltable>
<example>
<title>Ôóíêöèÿ {include}</title>
<programlisting>
<![CDATA[
<html>
<head>
<title>{$title}</title>
</head>
<body>
{include file='page_header.tpl'}
{* òóò èä¸ò òåëî øàáëîíà *}
{include file="$tpl_name.tpl"} <-- çàìåíèò $tpl_name åãî çíà÷åíèåì
{include file='page_footer.tpl'}
</body>
</html>
]]>
</programlisting>
</example>
<para>
Âû òàêæå ìîæåòå ïåðåäàòü ïåðåìåííûå â ïîäêëþ÷àåìûé øàáëîí â
âèäå àòðèáóòîâ. Ëþáàÿ ïåðåìåííàÿ, ïåðåäàííàÿ â ïîäêëþ÷àåìûé
øàáëîí, äîñòóïíû òîëüêî â îáëàñòè âèäèìîñòè ïîäêëþ÷àåìîãî
ôàéëà. Ïåðåäàííûå ïåðåìåííûå èìåþò ïðåèìóùåñòâî ïåðåä
ñóùåñòâóþùèìè ïåðåìåííûìè ñ àíàëîãè÷íûìè èìåíàìè.
</para>
<example>
<title>ïåðåäà÷à ïåðåìåííûõ â {include}</title>
<programlisting>
<![CDATA[
{include file='header.tpl' title='Main Menu' table_bgcolor='#c0c0c0'}
{* òóò èä¸ò òåëî øàáëîíà *}
{include file='footer.tpl' logo='http://my.example.com/logo.gif'}
]]>
</programlisting>
<para>ãäå header.tpl ìîæåò áûòü</para>
<programlisting>
<![CDATA[
<table border='1' width='100%' bgcolor='{$table_bgcolor|default:"#0000FF"}'>
<tr>
<td>
<h1>{$title}</h1>
</td>
</tr>
</table>
]]>
</programlisting>
</example>
<example>
<title>{include} è ïðèñâîåíèå ïåðåìåííîé</title>
<para>
Ýòîò ïðèìåð ïðèñâîèò ñîäåðæèìîå nav.tpl ïåðåìåííîé $navbar,
êîòîðàÿ çàòåì âûâîäèòñÿ ñâåðõó è ñíèçó ñòðàíèöû.
</para>
<programlisting>
<![CDATA[
<body>
{include file='nav.tpl' assign=navbar}
{include file='header.tpl' title='Main Menu' table_bgcolor='#effeef'}
{$navbar}
{* òóò èä¸ò òåëî øàáëîíà *}
{include file='footer.tpl' logo='http://my.example.com/logo.gif'}
{$navbar}
</body>
]]>
</programlisting>
</example>
<para>
Äëÿ ïîäêëþ÷åíèÿ ôàéëîâ âíå ïàïêè
<link linkend="variable.template.dir">$template_dir</link>
ìîæíî óêàçûâàòü ôàéë ñ ïîìîùüþ
<link linkend="template.resources">ðåñóðñîâ</link>.
</para>
<example>
<title>Ïðèìåðû ðåñóðñîâ øàáëîíîâ â {include}</title>
<programlisting>
<![CDATA[
{* àáñîëþòíûå ïóòè *}
{include file='/usr/local/include/templates/header.tpl'}
{* àáñîëþòíûå ïóòè (òî æå ñàìîå) *}
{include file='file:/usr/local/include/templates/header.tpl'}
{* àáñîëþòíûå ïóòè â windows (ÎÁßÇÀÒÅËÜÍÎ èñïîëüçóéòå ïðåôèêñ "file:") *}
{include file='file:C:/www/pub/templates/header.tpl'}
{* ïîäêëþ÷åíèå øàáëîíà èç ðåñóðñà ñ èìåíåì "db" *}
{include file='db:header.tpl'}
{* ïîäêëþ÷åíèå øàáëîíà ñ ïåðåìåííûì èìåíåì - íàïðèìåð, $module = 'contacts' *}
{include file="$module.tpl"}
{* íå áóäåò ðàáîòàòü, ò.ê. â îäèíàðíûõ êàâû÷êàõ íå ðàáîòàåò ïîäñòàíîâêà ïåðåìåííûõ *}
{include file='$module.tpl'}
]]>
</programlisting>
</example>
<para>
Ñì. òàêæå
<link linkend="language.function.include.php">{include_php}</link>,
<link linkend="language.function.php">{php}</link>,
<link linkend="template.resources">Ðåñóðñû</link> and
<link linkend="tips.componentized.templates">Ñîñòàâíûå øàáëîíû</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
-->