这个问题居然卡了我1个多小时,主要开始想复杂了。

因为默认如果给网站做站内导航时,我们都是用js实现的,而Liferay的页面又那么复杂,因为portal页面都由一个portlet组成的,每个页面id构成也很复杂,所以一直搞了我很久没弄出来,直到我回归了Portal的基本定义。

 

在Portal定义中,一个非常主要的功能是内容聚合 "content aggregation",所以,聚合功能应该是框架本身就帮你做好了,我们需要做的仅仅是定义页面(而不是编写页面,页面框架帮你搞定了),然后进行配置,让页面应用各种风格,页面添加Portlet, 然后启用导航条,这样框架自己就会根据你的设定吧导航条Navigation的每个Item关联到相关页面.

 

步骤如下:

(1).到Dock-bar中,依次选择Manage->Page

 

因为导航条是针对地位最顶层的页面来说的,所以在Public Page级别进行操作。

(2) 在左边,点击"Public Pages"-> Add Page

 

(3) 然后输入名字并且选择Page的类型( Portlet,博客什么的):

 

(4) 关联theme到这个页面上,关于这一步,可以参见另外一篇博文:

http://supercharles888.blog.51cto.com/609344/893580

 

(5) 在新创建的页面上面,自由从dockbar添加portlet,或者直接添加博文,wiki等。

 

 

现在,你再测试导航条,就发现每当你点击一个Item, 下面的breadcrumb也跟着改变,页面也会跳转到这个新页面。