[MANUAL] English:
[zend.git] / documentation / manual / en / module_specs / Zend_View-Helpers-HeadLink.xml
blob82ed5ff7ea8d0dc8f81a474b85b5b58de2eabfef
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!-- Reviewed: no -->
3 <sect3 id="zend.view.helpers.initial.headlink">
4     <title>HeadLink Helper</title>
6     <para>
7         The HTML <emphasis>&lt;link&gt;</emphasis> element is increasingly used for
8         linking a variety of resources for your site: stylesheets, feeds,
9         favicons, trackbacks, and more. The <classname>HeadLink</classname> helper
10         provides a simple interface for creating and aggregating these elements
11         for later retrieval and output in your layout script.
12     </para>
14     <para>
15         The <classname>HeadLink</classname> helper has special methods for adding
16         stylesheet links to its stack:
17     </para>
19     <itemizedlist>
20         <listitem>
21             <para>
22                 <command>appendStylesheet($href, $media, $conditionalStylesheet, $extras)</command>
23             </para>
24         </listitem>
26         <listitem>
27             <para>
28                 <command>offsetSetStylesheet($index, $href, $media, $conditionalStylesheet,
29                     $extras)</command>
30             </para>
31         </listitem>
33         <listitem>
34             <para>
35                 <command>prependStylesheet($href, $media, $conditionalStylesheet, $extras)</command>
36             </para>
37         </listitem>
39         <listitem>
40             <para>
41                 <command>setStylesheet($href, $media, $conditionalStylesheet, $extras)</command>
42             </para>
43         </listitem>
44     </itemizedlist>
46     <para>
47         The <varname>$media</varname> value defaults to 'screen', but may be any valid
48         media value. <varname>$conditionalStylesheet</varname> is a string or boolean
49         <constant>FALSE</constant>, and will be used at rendering time to determine if special
50         comments should be included to prevent loading of the stylesheet on certain platforms.
51         <varname>$extras</varname> is an array of any extra values that you want to be added
52         to the tag.
53     </para>
55     <para>
56         Additionally, the <classname>HeadLink</classname> helper has special methods for
57         adding 'alternate' links to its stack:
58     </para>
60     <itemizedlist>
61         <listitem>
62             <para>
63                 <command>appendAlternate($href, $type, $title, $extras)</command>
64             </para>
65         </listitem>
67         <listitem>
68             <para>
69                 <command>offsetSetAlternate($index, $href, $type, $title, $extras)</command>
70             </para>
71         </listitem>
73         <listitem>
74             <para>
75                 <command>prependAlternate($href, $type, $title, $extras)</command>
76             </para>
77         </listitem>
79         <listitem>
80             <para>
81                 <command>setAlternate($href, $type, $title, $extras)</command>
82             </para>
83         </listitem>
84     </itemizedlist>
86     <para>
87         The <methodname>headLink()</methodname> helper method allows specifying all
88         attributes necessary for a <emphasis>&lt;link&gt;</emphasis> element, and allows
89         you to also specify placement -- whether the new element replaces all
90         others, prepends (top of stack), or appends (end of stack).
91     </para>
93     <para>
94         The <classname>HeadLink</classname> helper is a concrete implementation of the
95         <link linkend="zend.view.helpers.initial.placeholder">Placeholder
96             helper</link>.
97     </para>
99     <example id="zend.view.helpers.initial.headlink.basicusage">
100         <title>HeadLink Helper Basic Usage</title>
102         <para>
103             You may specify a <emphasis>headLink</emphasis> at any time. Typically, you
104             will specify global links in your layout script, and application
105             specific links in your application view scripts. In your layout
106             script, in the &lt;head&gt; section, you will then echo the helper
107             to output it.
108         </para>
110         <programlisting language="php"><![CDATA[
111 <?php // setting links in a view script:
112 $this->headLink()->appendStylesheet('/styles/basic.css')
113                  ->headLink(array('rel' => 'favicon',
114                                   'href' => '/img/favicon.ico'),
115                                   'PREPEND')
116                  ->prependStylesheet('/styles/moz.css',
117                                      'screen',
118                                      true,
119                                      array('id' => 'my_stylesheet'));
121 <?php // rendering the links: ?>
122 <?php echo $this->headLink() ?>
123 ]]></programlisting>
124     </example>
125 </sect3>
126 <!--
127 vim:se ts=4 sw=4 et: