2012-11-21 44 views
2

我是liferay CMS的新手。我在liferay 6.1.1中开发了一个主题。我的问题是,当我对其部署后不反映的主题进行任何更改时。 请检查,如果我在正确的流程:在liferay中部署主题没有任何变化6.1.1

  1. 首先新 - > Liferay的项目 - >选择的主题
  2. 其创建的文件夹-diffs,其余所有 文件夹中的文档根
  3. 部署n此主题主题内的文件夹。
  4. 从我的主题的模板文件夹中复制了portlet_normal.vm,并对 进行了更改。
  5. 在docroot(文件夹) - > _diffs(文件夹) - >模板(文件夹)内我的主题中粘贴了portlet_normal.vm。
  6. 重新部署了主题,但没有反映出任何变化。

我portlet_normal.vm文件是:

<!DOCTYPE html> 

#parse ($init) 

<html class="#language("lang.dir")" dir="#language("lang.dir")" lang="$w3c_language_id"> 

<head> 
    <title>$the_title - $company_name</title> 

    $theme.include($top_head_include) 
</head> 

<body class="$css_class"> 

$theme.include($body_top_include) 

#if ($is_signed_in) 
    #dockbar() 
#end 

<div id="wrapper"> 
    <a href="#main-content" id="skip-to-content">#language("skip-to-content")</a> 

    <header id="banner" role="banner"> 
     <div id="heading"> 
      <h1 class="site-title"> 
       <a class="$logo_css_class" href="$site_default_url" title="#language("go-to") $site_name"> 
        <img alt="$logo_description" height="$site_logo_height" src="$site_logo" width="$site_logo_width" /> 
       </a> 

       #if ($show_site_name) 
        <span class="site-name" title="#language("go-to") $site_name"> 
         $site_name 
        </span> 
       #end 
      </h1> 

      <h2 class="page-title"> 
       <span>$the_title</span> 
      </h2> 
     </div> 

     #if (!$is_signed_in) 
      <a href="$sign_in_url" id="sign-in" rel="nofollow">$sign_in_text</a> 
     #end 

     #if ($has_navigation || $is_signed_in) 
      #parse ("$full_templates_path/navigation.vm") 
     #end 
    </header> 

    <div id="content"> 
     **/*<nav class="site-breadcrumbs" id="breadcrumbs"> 
      <h1> 
       <span>#language("breadcrumbs")</span> 
      </h1> 
      #breadcrumbs() 
     </nav>*/** 


     #if ($selectable) 
      $theme.include($content_include) 
     #else 
      $portletDisplay.recycle() 

      $portletDisplay.setTitle($the_title) 

      $theme.wrapPortlet("portlet.vm", $content_include) 
     #end 
    </div> 

    <footer id="footer" role="contentinfo"> 
     <p class="powered-by"> 
      #language("powered-by") <a href="http://www.liferay.com" rel="external">Liferay</a> 
     </p> 
    </footer> 
</div> 

$theme.include($body_bottom_include) 

</body> 

$theme.include($bottom_include) 

</html> 

其实我想隐藏越来越显示在主页上的面包屑。所以我已经评论了portlet_normal.vm中的特定部分 有关这方面的任何帮助将不胜感激,我完全停留在此。

回答

0

从第1步开始,您似乎在使用Eclipse创建Liferay主题项目。 Whenevr创建项目你会得到

enter image description here

现在,所有你需要做的是,改变_diffs目录中的文件,并用ant build.xml文件的主题,其余部分将被照顾构建文件。我不确定为什么需要步骤3和步骤4。

如果问题仍然存在,几点看是:

velocity.engine.resource.manager.cache.enabled =假

设置该属性在portal- ext.properties并重新启动服务器。

+0

谢谢sharana的帮助。 其实当我创建新的主题_diffs文件夹是空白的,所以我不得不强制使所有的内部文件夹,并已复制的文件需要被覆盖,所以我不得不按照步骤3和4. 而且根据你的说我在portal_normal.vm文件中进行了更改,并使用ant文件build.xml构建主题,但仍然没有任何结果反映在前面。 –

+0

另外,我已经在属性文件中添加了velocity.engine.resource.manager.cache.enabled = false,正如您所告知的那样。 但是不知道wats会出错,我会在前面看到任何反映的东西。 我已经在这个主题的外观和感觉中选择了经典主题,这是否对我的问题有任何不同? 我完全陷入这个问题。 :( –

+0

好吧,当你复制了你已经改变的所有文件时,只有portal_normal.vm?当你从经典主题复制文件夹时,确保你没有将WEB-INF文件夹复制到_diffs目录。一旦你建立和部署文件夹到服务器,你需要点击管理,然后转到外观和感觉,将主题更改为新创建的主题,让我知道它是怎么回事 – Sharana

2

你有两种可能性:
如果你是深化发展,你可以设置门户网站开发模式将
include-and-override=portal-developer.properties
到您的portal-ext.properties这应该是门户网站根目录下。
如果你在生产这个选项应该被禁用,您应检查以下

尝试打开XML文件集结共theme.xml下的主题在你的SDK文件夹,并删除所有preservelastmodified="true"(或设置他们为假)。

preservelastmodified,true时不会更新主题项目中的文件时间戳。因此,您的应用程序服务器将不会检测到更改并重新部署主题。