Liferay主题开发

时间:2012-04-09 11:06:24

标签: themes liferay

我想在liferay中提出一个关于主题的问题。什么会更容易,更好?创建一个新主题或修改已存在于liferay页面的主题?

感谢您的任何建议。

3 个答案:

答案 0 :(得分:3)

这是相同的:通过使用Liferay SDK创建一个新主题,将克隆默认主题,然后您可以覆盖一些CSS,模板等。

创建新主题:http://www.liferay.com/documentation/liferay-portal/6.1/development/-/ai/creating-a-the-4

答案 1 :(得分:2)

  

在sdk中创建主题时,它是基于父主题或经典主题构建的。

供参考,请检查主题的build.xml。

答案 2 :(得分:0)

作为制作了多个自定义主题的人,最好修改现有主题。 您应该修改的所有文件都在/ docroot / diffs / *

对于图像,我在图像下创建一个/ custom文件夹,我放置了所有文件。

对于模板,我主要修改了navigation.vm和portal_normal.vm文件。我改变了完全处理导航的方式。

我还彻底修改了css以实现我们想要的外观和感觉。我为此创建了一个custom.css文件。

这是我创建的自定义子导航菜单,允许在子元素上显示over状态。

<nav id="navigation_sub_menu">
<ul>
    #foreach ($nav_item in $nav_items)

        #if ($nav_item.isSelected() && $nav_item.hasChildren())
            <ul class="child-menu">
                #foreach ($nav_child in $nav_item.getChildren())
                    #set ($nav_child_upper = $nav_child.getName())
                    #if ($nav_child.isSelected())
                        <li class="sub_menu">
                            <a class="selected" href="$nav_child.getURL()" $nav_child.getTarget()>$nav_child_upper.toUpperCase()</a>
                        </li>
                    #else
                        <li>
                            <a href="$nav_child.getURL()" $nav_child.getTarget()>$nav_child_upper.toUpperCase()</a>
                        </li>
                    #end
                #end
            </ul>
        #end
    #end
</ul>