|
|
Zend Framework 2 Documentation (Manual) | |
|
File: /_sources/modules/zend.view.helpers.head-link.txt
Size: | 2981 |
Storage flags: | no_autoload,compress/gzip (38%) |
.. _zend.view.helpers.initial.headlink:
View Helper - HeadLink
======================
.. _zend.view.helpers.initial.headlink.introduction:
Introduction
------------
The *HTML* **<link>** element is increasingly used for linking a variety of resources for your site: stylesheets,
feeds, favicons, trackbacks, and more. The ``HeadLink`` helper provides a simple interface for creating and
aggregating these elements for later retrieval and output in your layout script.
The ``HeadLink`` helper has special methods for adding stylesheet links to its stack:
- ``appendStylesheet($href, $media, $conditionalStylesheet, $extras)``
- ``offsetSetStylesheet($index, $href, $media, $conditionalStylesheet, $extras)``
- ``prependStylesheet($href, $media, $conditionalStylesheet, $extras)``
- ``setStylesheet($href, $media, $conditionalStylesheet, $extras)``
The ``$media`` value defaults to 'screen', but may be any valid media value. ``$conditionalStylesheet`` is a string
or boolean ``FALSE``, and will be used at rendering time to determine if special comments should be included to
prevent loading of the stylesheet on certain platforms. ``$extras`` is an array of any extra values that you want
to be added to the tag.
Additionally, the ``HeadLink`` helper has special methods for adding 'alternate' links to its stack:
- ``appendAlternate($href, $type, $title, $extras)``
- ``offsetSetAlternate($index, $href, $type, $title, $extras)``
- ``prependAlternate($href, $type, $title, $extras)``
- ``setAlternate($href, $type, $title, $extras)``
The ``headLink()`` helper method allows specifying all attributes necessary for a **<link>** element, and allows
you to also specify placement -- whether the new element replaces all others, prepends (top of stack), or appends
(end of stack).
The ``HeadLink`` helper is a concrete implementation of the :ref:`Placeholder helper
<zend.view.helpers.initial.placeholder>`.
.. _zend.view.helpers.initial.headlink.basicusage:
Basic Usage
-----------
You may specify a **headLink** at any time. Typically, you will specify global links in your layout script, and
application specific links in your application view scripts. In your layout script, in the <head> section, you will
then echo the helper to output it.
.. code-block:: php
:linenos:
<?php
// setting links in a view script:
$this->headLink(array('rel' => 'icon', 'href' => '/img/favicon.ico'), 'PREPEND')
->appendStylesheet('/styles/basic.css')
->prependStylesheet(
'/styles/moz.css',
'screen',
true,
array('id' => 'my_stylesheet')
);
// rendering the links from the layout:
echo $this->headLink();
?>
Output:
.. code-block:: html
:linenos:
<link href="/styles/moz.css" media="screen" rel="stylesheet" type="text/css" id="my_stylesheet">
<link href="/img/favicon.ico" rel="icon">
<link href="/styles/basic.css" media="screen" rel="stylesheet" type="text/css">
For more information about the PHK package format: http://phk.tekwire.net