2011-09-06 8 views
1

나는 Zend_Navigation에 공급 트 리뷰로 렌더링 할 다음, 데이터베이스 레코드에서 XML을 생성하고 렌더링하기 전에 나는 TOC의 numberings 같은 수준 번호를 추가하고 싶습니다 :Zend_Navigation : 메뉴 항목에 번호 매기기를 추가하는 방법?

을 나는이 :

$partial = array('partials/menu.phtml', 'default'); 
$this->navigation()->menu()->setPartial($partial); 
echo $this->navigation()->menu()->setUlClass('treeview')->render(); 

My First Web Page 
    Nice Page 
      Main Help 
    Works 

하지만 필요 :

출력은 UL/리튬 옷을 입고 (I는 트 리뷰에 대한 UL 인증 필요)

1.My First Web Page 
    1.1 Nice Page 
      1.1.1 Main Help 
    1.2 Works 

숫자로 각 단계를 복장하는 방법은 무엇입니까?

$navarray=$this->navigation()->menu()->toArray(); 
$it = new RecursiveIteratorIterator(new RecursiveArrayIterator($navarray[0]), RecursiveIteratorIterator::SELF_FIRST); 
foreach ($it as $row) {  
/// ???? 
} 

감사합니다.

답변

0

ul 대신 ol을 렌더링 한 다음 CSS magic을 사용하여 번호 매기기를 올바르게 렌더링 할 수 있습니다.

영감을 얻으려면 Menu Helper documentation에서 예 # 48을 볼 수 있습니다.

편집 :

당신이 ul 태그를 사용해야하는 경우, 다음 아마 당신이 손으로 메뉴 항목의 "현재 깊이"를 추가해야합니다. 매우 비슷한 질문이 여기에 있습니다 : PHP RecursiveIteratorIterator: Determining first and last item at each branch level. OL은 JQuery와 트 리뷰 플러그인이 작동하지 않습니다

도움이되기를 바랍니다, 힌트에 대한

+0

감사하지만, 그것은 UL 목록을 필요로한다. – Arman

+0

@Arman : 예, 죄송합니다. 질문에 간과 했어요. 나는 방금 위의 내 대답을 편집했습니다. – dinopmi

관련 문제