Zend_View-Helpers-HeadLink.xml 3.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889
  1. <sect3 id="zend.view.helpers.initial.headlink">
  2. <title>Helper HeadLink</title>
  3. <para>
  4. Element HTML <code>&lt;link&gt;</code> jest używany do dołączania różnego
  5. rodzaju zasobów do dokumentu html: arkuszy stylów, kanałów informacyjnych,
  6. ikon, adresów trackback i wielu innych. Helper <code>HeadLink</code>
  7. zapewnia prosty interfejs służący do tworzenia i łączenia tych
  8. elementów, a następnie do wyświetlenia ich później w skrypcie layoutu.
  9. </para>
  10. <para>
  11. Helper <code>HeadLink</code> posiada specjalne metody do dodawania
  12. arkuszy stylów:
  13. </para>
  14. <itemizedlist>
  15. <listitem><para><code>appendStylesheet($href, $media,
  16. $conditionalStylesheet)</code></para></listitem>
  17. <listitem><para><code>offsetSetStylesheet($index, $href, $media,
  18. $conditionalStylesheet)</code></para></listitem>
  19. <listitem><para><code>prependStylesheet($href, $media,
  20. $conditionalStylesheet)</code></para></listitem>
  21. <listitem><para><code>setStylesheet($href, $media,
  22. $conditionalStylesheet)</code></para></listitem>
  23. </itemizedlist>
  24. <para>
  25. Domyślną wartością zmiennej <code>$media</code> jest 'screen', jednak
  26. możemy nadać jej inną poprawną wartość. Zmienna
  27. <code>$conditionalStylesheet</code> jest wartością logiczną określającą
  28. czy podczas renderowania powinien zostać dodany specjalny komentarz
  29. zapobiegający ładowaniu arkusza stylów na określonych platformach.
  30. </para>
  31. <para>
  32. Dodatkowo helper <code>HeadLink</code> posiada specjalne metody
  33. do obsługi łącz 'alternate':
  34. </para>
  35. <itemizedlist>
  36. <listitem><para><code>appendAlternate($href, $type,
  37. $title)</code></para></listitem>
  38. <listitem><para><code>offsetSetAlternate($index, $href, $type,
  39. $title)</code></para></listitem>
  40. <listitem><para><code>prependAlternate($href, $type,
  41. $title)</code></para></listitem>
  42. <listitem><para><code>setAlternate($href, $type,
  43. $title)</code></para></listitem>
  44. </itemizedlist>
  45. <para>
  46. Metoda <code>headLink()</code> helpera pozwala na określenie wszystkich
  47. potrzebnych atrybutów elementu <code>&lt;link&gt;</code>, a także
  48. pozwala określić jego umiejscowienie -- czy nowy element ma zastąpić
  49. wszystkie istniejące, dołączyć go na koniec lub na początek stosu.
  50. </para>
  51. <para>
  52. Helper <code>HeadLink</code> jest implementacją
  53. <link linkend="zend.view.helpers.initial.placeholder">helpera
  54. Placeholder</link>.
  55. </para>
  56. <example id="zend.view.helpers.initial.headlink.basicusage">
  57. <title>Proste użycie helpera HeadLink</title>
  58. <para>
  59. Możesz użyć helpera <code>headLink</code> w dowolnym momencie.
  60. Najczęściej będziesz określał globalne łącza w pliku layoutu,
  61. a łącza specyficzne dla aplikacji w skryptach widoków. W skrypcie
  62. layoutu wyświetlisz na koniec wszystkie łącza w sekcji
  63. &lt;head&gt;.
  64. </para>
  65. <programlisting role="php"><![CDATA[
  66. <?php // ustawianie łącz w skrypcie widoku:
  67. $this->headLink()->appendStylesheet('/styles/basic.css')
  68. ->headLink(array('rel' => 'favicon',
  69. 'href' => '/img/favicon.ico'),
  70. 'PREPEND')
  71. ->prependStylesheet('/styles/moz.css', 'screen', true);
  72. ?>
  73. <?php // generowaie łącz: ?>
  74. <?= $this->headLink() ?>
  75. ]]>
  76. </programlisting>
  77. </example>
  78. </sect3>