2011-10-26 2 views
0

제목에서 알 수 있듯이 현재 레이아웃의 일부로 표시되는보기의 제목을 표시하는 방법을 찾으려고합니다. 다른보기를 선택하면 페이지 제목이 동적으로 채워지도록이 작업을 수행하려고합니다. psuedocode에서Zend Framework : 레이아웃 클래스에 뷰 이름을 표시하는보기 도우미가 있습니까?

:

<div> 
    <div id="header"><h1>My website</h1></div> 
    <div id="main"> 
      <?php echo "<h2>" . SOME WAY OF ECHOING THE VIEW NAME HERE . "</h2>"; ?> 
      <?php echo $this->layout()->content; ?> 
    </div> 
    <div id="footer"><p>2011 My website.com></p> 
</div> 

내가 젠드 문서를 통해 봤는데 내가 찾을 수있는 가장 가까운 것은이 headlink했다. 그러나이 도우미에서 값을 가져 와서 변수에 넣을 수 없으므로 텍스트를 뷰의 페이지 헤더로 표시 할 수있었습니다.

감사합니다.

답변

1

컨트롤러의 레이아웃에 작업 이름을 전달하거나 필요한 경우 모듈과 결합 할 수 있습니다.

$ layout - $ this -> _ helper-> layout-> getLayoutInstance(); $ layout-> viewName = $ this -> _ getParam ("action");

종류가 더럽지 만 작동 할 수 있습니다.

+0

제안 해 주셔서 감사합니다. 내가 할 수있는 최선은 코드 제안을 텍스트의 문자열을 허용하는 내 컨트롤러의 개인 메서드에 래핑하는 것입니다. _getParam 액션을 호출하는 대신, 각 액션 메소드에서이 private 메소드를 차례로 호출하고 페이지 텍스트를 인수로 제공된 값으로 설정합니다. 불행히도 이것에 대한 표준 Placholder가없는 것 같습니다 - 저는 매우 놀랍습니다! – 8bitjunkie

1

나는 당신을 올바르게 이해하는지 잘 모르지만, placeholder in ZendFramework이라는 것이 있습니다. 기본적으로 자리 표시자를 정의하고 나중에 원하는 것으로 채 웁니다.

+0

올바른 행을 잡았습니다. 내가 찾고있는 것은보기 위의 div 컨테이너에서 현재보기의 제목을 인쇄하기 위해 내 레이아웃에서 사용할 수있는 표준 자리 표시 자입니다. 내 생각에이 머리말에 CSS를 추가하여 응용 프로그램의 각 페이지에서 일관된 문서 제목을 만들 수 있습니다. – 8bitjunkie