2012-03-27 61 views
1

我已經開始學習與Liferay 6.1在liferay的不同頁面上顯示導航菜單?

我想實現的是:在幾頁上顯示導航菜單。

我所做的是:

    在頁面上
  • 添加導航門戶,並配置它來顯示網頁所有鏈接(也標誌着當前頁面鏈接爲粗體)

我研究是:

  • 我已經閱讀幾個論壇,在liferay-portlet.xml文件導航portlet的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->頁

  • 這裏你可以找到的選項「從頁面添加門戶」 - >點擊 - >選擇您有您的導航菜單的設置頁面。

  • 選擇您的頁面,然後按「複製」,然後按「保存」。

最後你會看到加載在現有的portlet中發現的所有portlet的新頁面,以及相關菜單鏈接被選中了。

就是這樣。

你也會看到所有的portlet都被複制,所以你可以刪除你不需要的。而且這些可以讓你保持佈局而不需要修改主題文件中的任何內容。

謝謝!

0

你要找的文件是在

ROOT/WEB-INF/liferay-portlet.xml 

導航門戶是門戶與71名(不要問我爲什麼)。

無論如何,我不明白你想要達到什麼樣的行爲?

+0

我希望能夠在不同的portlet上顯示相同的導航。我使用drupal進行工作,就像創建菜單並指定希望顯示的頁面一樣。 liferay如何做到這一點?像在不同的頁面上顯示相同的導航portlet,而不是在這些頁面上單獨添加它們中的每一個? – linuxeasy 2012-03-28 05:30:46

0

也許你想做一個主題?也許我在這裏很愚蠢,但是在主題中有整個門戶佈局的速度模板(例如,頁腳,頁眉和中間的空間,用於portlet),還有導航的速度代碼。在實踐中它是這樣的:

<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 2012-03-29 07:19:21

+0

我認爲不能從liferay門戶框架中分離出「核心」portlet。也許你可以使用liferay-taglibs(http://www.liferay.com/community/wiki//wiki/Main/UI+Taglib#section-UI+Taglib-breadcrumb)? – Aparaatti 2012-03-29 12:42:25

+0

您可能會以某種方式獲得com.liferay.portal.theme.NavItem服務類。我現在也在學習liferay .. – Aparaatti 2012-03-29 13:03:07

2

您可以創建一個PageTemplate來容納公共Portlet。然後,當您創建頁面時,您可以選擇PageTemplate,並且您的頁面將從該模板中獲取所有portlet

相關問題