2012-03-27 3 views
1

나는 Liferay로 학습을 시작했다. 6.1liferay의 다른 페이지에 탐색 메뉴 표시?

내가 원하는 것은 : 여러 페이지에 탐색 메뉴를 표시하는 것이다. 내가 무슨 짓을

은 다음과 같습니다

  • 추가 탐색 페이지에 포틀릿하고 모든 페이지의 링크 (또한 굵게 현재 페이지 링크 표시)

을 표시하도록 구성 내가 연구입니다 :

  • 나는 여러 포럼에 읽고 liferay-portlet.xml 파일에서 true로 탐색 포틀릿의 scopeable 태그를 변경하는.

는하지만이 직면하고있는 문제는 다음을 Liferay의 탐색 포틀릿이 존재하는 곳

  • 내가 찾을 수 없습니다. 내가 liferay-portal-6.1.0-ce-ga1/tomcat-7.0.23/webapps/ROOT/html/portlet/navigation에 그 존재를 알았지 만 그 안에 어떤 liferay-portlet.xml 파일도 포함되어 있지 않습니다.

도와주세요!

답변

1

좋아, 마침내 필자는 원하는 페이지에 안정적인 탐색 메뉴를 표시하는 몇 가지 해결책을 발견했습니다.

  • 먼저 원하는 페이지에 탐색 메뉴를 추가하십시오.

  • Goto Dockbar-> Add -> Page. (귀하의 페이지의 메뉴 이름을 추가하십시오).

  • 고토 Dockbar-> Manage-> 페이지 여기

  • 당신의 옵션을 찾아 "페이지에서 포틀릿을 추가"-> 클릭 -> 당신이 당신의 탐색 메뉴의 배치가있는 페이지를 선택합니다.

  • 페이지를 선택하고 "복사"를 누른 다음 "저장"을 누릅니다.

마지막으로 기존 포틀릿에서 발견 된 모든 포틀릿이로드 된 새 페이지가 표시되고 관련 메뉴 링크도 선택됩니다.

그게 전부입니다.

또한 모든 포틀릿이 복사되므로 필요없는 포트レット를 제거 할 수 있습니다. 또한 테마 파일의 내용을 수정하지 않고도 레이아웃을 유지 관리 할 수 ​​있습니다.

감사합니다.

0

당신이 찾고있는 파일이

ROOT/WEB-INF/liferay-portlet.xml 

탐색 포틀릿에있는 것은 이름 (71)와 포틀릿입니다 (이유는 묻지 않는다).

어쨌든 나는 당신이 달성하려고하는 행동을 이해하지 못합니까?

+0

동일한 탐색을 다른 포틀릿에 표시하려고합니다. 나는 드루팔 (Drupal)과 함께 작업하는데, 거기에는 메뉴를 만들고 그것이 나타나기를 원하는 페이지를 지정하는 것과 같았다. 평생 동안 어떻게 할 수 있습니까? 같은 페이지에서 개별적으로 각 페이지를 추가하는 대신 다른 페이지에 같은 탐색 패널을 표시 할 수 있습니까? – linuxeasy

0

아마도 테마를 만들고 싶습니까? 어쩌면 내가 어리석은 짓일지도 모르지만 테마에는 전체 포털 (예 : 바닥 글, 머리글 및 포틀릿 중간의 공간)의 레이아웃을위한 속도 템플릿이 있으며 탐색 용 속도 코드도 있습니다. 실제로는 다음과 같습니다 :

<nav> 
    #foreach($nav_item in $nav_items) 
     ##do things with nav items for example get a child item: 
     #if($nav_item.isSelected) 
      #set($nav_childs = $nav_item.getChild() 
     #end 
    #end 

    #foreach($child in $nav_childs.getChildren) 
     ##do stuff with sub items 
    #end 
</nav> 
+0

테마에서는 할 수 없습니다. 테마를 수정하면 일부 웹 사이트가 아닌 대형 포털 사이트로 간주되므로 모든 페이지에 대한 위임 사항이 될 수 있습니다. – linuxeasy

+0

"핵심"포틀릿과 liferay 포털 프레임 워크를 분리 할 수 ​​없다고 생각합니다. 어쩌면 liferay-taglibs (http://www.liferay.com/community/wiki/-wiki/Main/UI+Taglib#section-UI+Taglib-breadcrumb)를 사용할 수 있습니까? – Aparaatti

+0

com.liferay.portal.theme.NavItem 서비스 클래스를 어떻게 든 보유 할 수 있습니다. 나는 또한 현재 평생 학습하고 있습니다 .. – Aparaatti

2

PageTemplate을 만들어 공통 포틀릿을 유지할 수 있습니다. 그런 다음 페이지를 만들 때 PageTemplate을 선택하면 해당 템플릿에서 모든 포틀릿을 가져옵니다.