HTML_Menu_ArrayRenderer クラス概要

HTML_Menu_ArrayRenderer クラス概要 -- メニューの可視エントリの配列を作成するレンダラ

出力の配列

結果の配列の使用法としては、たとえばそれをテンプレートエンジンに渡し、 独自の複雑なメニューを作成させることなどがあります。

'rows' 以外のすべてのメニュー型が、 エントリの一次元配列に "レンダリング" されます。
array(
    'entry1',
    ...
    'entryN'
)
一方 'rows' の場合は二次元配列となります。
array(
    array('entry 1 for row 1', ..., 'entry M_1 for row 1'),
    ...
    array('entry 1 for row N', ..., 'entry M_N for row 1')
 )

エントリの構造は次のようになります。
array(
    'url'    => メニューエントリの url 要素
    'title'  => メニューエントリの title 要素
    'level'  => ツリー構造におけるメニューの位置
    'type'   => エントリの型。HTML_MENU_ENTRY_* 定数のいずれか
 )
上の HTML_MENU_ENTRY_* 定数の一覧は ここにあります

HTML_Menu_ArrayRenderer のクラス階層

HTML_Menu_ArrayRenderer が継承しているメソッド

表 47-1HTML_Menu_Renderer から継承したもの

メソッド名概要
HTML_Menu_Renderer::finishLevel()ツリーのレベルを終了します ('tree' 型および 'sitemap' 型用)。
HTML_Menu_Renderer::finishMenu()メニューを終了します。
HTML_Menu_Renderer::finishRow()メニューの行を終了します。
HTML_Menu_Renderer::renderEntry()メニューの要素をレンダリングします。
HTML_Menu_Renderer::setMenuType()レンダリングするメニューの型を設定します。