<?xml version="1.0" encoding="UTF-8"?>
<!-- EN-Revision: 24249 -->
<!-- Reviewed: no -->
<sect3 id="zend.view.helpers.initial.headlink">
    <title>HeadLink Helfer</title>

    <para>
        Das <acronym>HTML</acronym> <emphasis>&lt;link&gt;</emphasis> Element wird immer mehr für
        das Verlinken einer Vielzahl von Ressourcen der eigenen Site verwendet: Stylesheets, Feeds,
        FavIcons, Trackbacks, und andere. Der <classname>HeadLink</classname> Helfer bietet ein
        einfaches Interface für die Erstellung und das Anhäufen dieser Elemente für das spätere
        Empfangen und deren Ausgabe im eigenen Layout Skript.
    </para>

    <para>
        Der <classname>HeadLink</classname> Helfer hat spezielle Methode für das hinzufügen von
        Stylesheet Links zu seinem Stack:
    </para>

    <itemizedlist>
        <listitem>
            <para>
                <command>appendStylesheet($href, $media, $conditionalStylesheet, $extras)</command>
            </para>
        </listitem>

        <listitem>
            <para>
                <command>offsetSetStylesheet($index, $href, $media, $conditionalStylesheet,
                    $extras)</command>
            </para>
        </listitem>

        <listitem>
            <para>
                <command>prependStylesheet($href, $media, $conditionalStylesheet, $extras)</command>
            </para>
        </listitem>

        <listitem>
            <para>
                <command>setStylesheet($href, $media, $conditionalStylesheet, $extras)</command>
            </para>
        </listitem>
    </itemizedlist>

    <para>
        Der <varname>$media</varname> Wert ist standardmäßig 'screen', kann aber jeder gültige Media
        Wert sein. <varname>$conditionalStylesheet</varname> ist ein String oder boolsches
        <constant>FALSE</constant> und wird verwendet um während der Darstellung zu erkennen ob
        spezielle Kommentare inkludiert werden sollen um das Laden dieser Stylesheets auf diversen
        Plattformen zu verhindern. <varname>$extras</varname> ist ein Array von extra Werten die man
        dem Tag hinzufügen will.
    </para>

    <para>
        Zusätzlich hat der <classname>HeadLink</classname> Helfer eine spezielle Methode für das
        Hinzufügen von 'alternativen' (alternate) Links zu seinem Stack:
    </para>

    <itemizedlist>
        <listitem>
            <para>
                <command>appendAlternate($href, $type, $title, $extras)</command>
            </para>
        </listitem>

        <listitem>
            <para>
                <command>offsetSetAlternate($index, $href, $type, $title, $extras)</command>
            </para>
        </listitem>

        <listitem>
            <para>
                <command>prependAlternate($href, $type, $title, $extras)</command>
            </para>
        </listitem>

        <listitem>
            <para>
                <command>setAlternate($href, $type, $title, $extras)</command>
            </para>
        </listitem>
    </itemizedlist>

    <para>
        Die <methodname>headLink()</methodname> Helfer Methode erlaubt das Spezifizieren aller
        Attribute die für ein <emphasis>&lt;link&gt;</emphasis> Element notwendig sind, und erlaubt
        auch die Spezifizfikation der Platzierung --- entweder ersetzt das neue Element alle
        anderen, wird vorangestellt (an den Beginn des Stacks) , oder angefügt (an das Ende des
        Stacks).
    </para>

    <para>
        Der <classname>HeadLink</classname> Helfer ist eine konkrete Implementation des
        <link linkend="zend.view.helpers.initial.placeholder">Platzhalter Helfers</link>.
    </para>

    <example id="zend.view.helpers.initial.headlink.basicusage">
        <title>Grundsätzliche Verwendung des HeadLink Helfers</title>

        <para>
            <emphasis>headLink</emphasis> kann jederzeit spezifiziert werden. Typischerweise wird
            ein globaler Link im eigenen Layout Skript spezifiziert, und anwendungsspezifische Links
            in den View Skripten der Anwendung. Im Layoutskript, in der &lt;head&gt; Sektion, muß
            das der Helfer ausgegeben werden.
        </para>

        <programlisting language="php"><![CDATA[
<?php // Links in einem View Skript setzen:
$this->headLink()->appendStylesheet('/styles/basic.css')
                 ->headLink(array('rel' => 'favicon',
                                  'href' => '/img/favicon.ico'),
                                  'PREPEND')
                 ->prependStylesheet('/styles/moz.css',
                                     'screen',
                                     true,
                                     array('id' => 'my_stylesheet'));
?>
<?php // Darstellen der Links: ?>
<?php echo $this->headLink() ?>
]]></programlisting>
    </example>
</sect3>
<!--
vim:se ts=4 sw=4 et:
-->
