Zend_Navigation (프레임 워크에 btw 추가)을 사용하여 메뉴를 만든 다음 페이지에 렌더링해야합니다 (자명). 내가 먼저 컨트롤러 어딘가에 컨테이너를 설정합니다jQuery의 어안과 함께 작동하도록 Zend_Navigation 메뉴 가져 오기
// $pages is the array containing all page information
$nav = new Zend_Navigation($pages);
$this->view->navigation($nav);
다음, 레이아웃, 그것은 다음과 같이 렌더링 : 완벽하게 작동
echo $this->navigation()->menu();
합니다. 자 : 메뉴를 조금 다르게 렌더링하고 싶습니다. 내가 만들고있는 페이지는 jQuery Fisheye-plugin을 사용하여 Mac과 유사한 도크 메뉴를 만듭니다. 그러나이 플러그인은
사실, <a>
요소를 포함한 모두 (아이콘의 경우) <img>
과 (툴팁의 경우) <span>
의 목록을 걸립니다 ... 특정 마크 업이 필요합니다. 표준 메뉴 뷰 도우미는 'label'
매개 변수를 링크 텍스트로 사용하여 논리적으로 정렬되지 않은 목록의 모든 것을 렌더링합니다.
'label'
매개 변수로 전달 된 콘텐츠는 렌더링 전에 이스케이프 처리되므로 html을 삽입하면 나에게 도움이되지 않습니다. 또한 Fisheye는 일반적으로 <li>
태그에 포함 된 항목을 가져 오지 않는 것으로 보이며 전체 내용은 <ul></ul>
으로 묶이지 만 한 수준의 목록은 <a>
개입니다.
<img>
과 <span>
을 삽입 할 수있는 도크 용 사용자 정의보기 도우미를 작성하려고했으나 탐색에 첨부 된 사용자 정의보기 도우미를 얻는 데 어려움을 겪고 있습니다. 수업. 모든 다른 사용자 정의 클래스 (모델 등)가 자동 로더에 의해 멋지게 관리 되더라도 어디에 배치할지, 어떤 방법으로 배치 할지를 파악할 수 없습니다. 이것에 대한 아이디어가 있습니까?
다시보기 도우미가 작동하도록 할 수 있더라도 HTML 정렬되지 않은 목록이 남아 있습니다. 사용자 지정보기 도우미를 사용하여이 뷰어도 잃을 수는 있지만 항상 의미 체계를 위해 목록 안에 기본 탐색 메뉴를 포함하는 팬.
누구든지 나를 조금 도와 줄 수 있다면 크게 감사하겠습니다. Fisheye가 <ul>
과 작동하도록되어 있지 않다면 너무 나빠질 것입니다.이 경우 Zend_Navigation을 잃을만한 충분한 이유가 있습니까?
와우, 완벽한 답변입니다. 아직 Zend_Navigation에 할 일이있는 것 같지만, 내가 갈 필요가있는 곳으로 가버립니다. 감사! – JorenB
@ JorenB 그냥 알다시피, 나는 Matthew P. (ZF의 수석 개발자)에게 언제든지 네비게이션 용 데코레이터를 포함할지 물었다. 그는 부분적으로는 오버 헤드가 거의없고 데코레이터가 커뮤니티에 의해 사랑받지 못하기 때문에 "계획하지 않았습니다."라고 말했습니다. Zend_Nav는 그 자체만으로도 상당한 성능을 발휘합니다. – typeoneerror
시도했지만 컨테이너가 비어 있습니다. 개체 (Zend \ Navigation \ Navigation) # 509 (3) { [ "pages": protected] => 배열 (0) { } [ "index": protected ]]]> array (0) { } [ "dirtyIndex": protected] => bool (false) – cwhisperer