Zend_Markup-Renderers.xml 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!-- Reviewed: no -->
  3. <!-- EN-Revision: 19777 -->
  4. <sect1 id="zend.markup.renderers">
  5. <title>Zend_Markup レンダラー</title>
  6. <para>
  7. <classname>Zend_Markup</classname> には現在ひとつのレンダラー、
  8. <acronym>HTML</acronym> レンダラーが同梱されています。
  9. </para>
  10. <sect2 id="zend.markup.renderers.add">
  11. <title>自作のタグの追加</title>
  12. <para>
  13. 自作のタグを追加することによって、<classname>Zend_Markup</classname> レンダラーに
  14. 自作の機能の追加できます。 タグ構造とともに、
  15. あなたが望むいかなる機能も追加ができます。
  16. 簡潔なタグから複雑なタグ構造まで。 'foo' タグでの単純な例:
  17. </para>
  18. <programlisting language="php"><![CDATA[
  19. // Zend_Markup_Parser_BbCode をパーサーとして、
  20. // Zend_Markup_Renderer_Html のインスタンスを生成します。
  21. $bbcode = Zend_Markup::factory('Bbcode');
  22. // これは単純な 'foo' タグが作成されるでしょう
  23. // 第一引数は自身のタグ名を定義します。
  24. // 第二引数はタグの定数で定義された整数を引数に取ります。
  25. // 第三引数は、タグについて、タググループと(この例では)開始ならびに終了タグのように
  26. // 他のことを配列にて定義します。
  27. $bbcode->addTag(
  28. 'foo',
  29. Zend_Markup_Renderer_RendererAbstract::TYPE_REPLACE
  30. | Zend_Markup_Renderer_RendererAbstract::TAG_NORMAL,
  31. array(
  32. 'start' => '-bar-',
  33. 'end' => '-baz-',
  34. 'group' => 'inline',
  35. )
  36. );
  37. // これは 'my -bar-tag-baz-' と出力されるでしょう。
  38. echo $bbcode->render('my [foo]tag[/foo]');
  39. ]]></programlisting>
  40. <para>
  41. あなたの作成したタグは、あなたのパーサーがタグ構造もサポートするときに
  42. 機能することに注意してください。現在、 BBCode はこれをサポートします。
  43. Textile はカスタムタグをサポートしません。
  44. </para>
  45. </sect2>
  46. </sect1>