2017-02-17 4 views
0

두 개의 테마 패키지가있는 테마 애플리케이션 하나가 있습니다. 한 테마에서 다른 테마로 설정을 공유해야합니다.우리는 동일한 전쟁에서 Liferay 테마의 설정 값을 어떻게 공유 할 수 있습니까?

<theme id="visual" name="visual-theme" > 
     <settings> 
      <setting key="service-unavailable" configurable="true" type="checkbox" value="false"></setting> 
     </settings> 
    </theme> 

    <theme id="visual-home" name="visual-theme-home" > 
     <settings> 
      <setting key="h1-title-value" configurable="true" type="textarea" value="" ></setting> 
      <setting key="service-unavailable" configurable="true" type="checkbox" value="false"></setting> 
      <setting key="service-unavailable-message" configurable="true" type="textarea" value="Unavailable service"></setting> 
     </settings> 
    </theme> 

우리는 visual-theme-home에서 설정하면, 그것뿐만 아니라 다른 테마에 사용할 수 있어야 있도록 기본 값으로 visual-theme에 사용할 수 service-unavailable-message 설정이 필요합니다.

답변

1

설정은 웹 응용 프로그램이 아닌 테마마다 있으므로 테마 A가있는 일부 영역의 설정은 테마 A가 적용된 설정에 영향을 미치지 않습니다.이 작업을 수행하려면 다른 기술을 사용해야합니다.

테마 설정을 사용할 때 사이트 또는 페이지별로이 값을 설정할 수 있습니다. 나중의 경우, 이것은 또 다른 모호함을 가져올 것이다.

그래서 당신이 하나의 옵션이

<theme id="visual" name="visual-theme" > 
    <settings> 
    <setting key="service-unavailable" configurable="true" type="checkbox" value="false"></setting> 
    <setting key="service-unavailable-message" configurable="true" type="textarea" value="Unavailable service"></setting> 
    </settings> 
</theme> 

<theme id="visual-home" name="visual-theme-home" > 
    <settings> 
    <setting key="h1-title-value" configurable="true" type="textarea" value="" ></setting> 
    <setting key="service-unavailable" configurable="true" type="checkbox" value="false"></setting> 
    <setting key="service-unavailable-message" configurable="true" type="textarea" value="Unavailable service"></setting> 
    </settings> 
</theme> 

... 그리고 당신이 필요 whereever는 메시지를 복제.

또 다른 옵션은 일반적인 구성 값으로 (다른 곳으로 service-unavailable-message를 이동하는 것입니다, 또는 어떤 서비스를 제공합니다. 그냥하지 테마 설정에서 보았다.

+0

답변 해 주셔서 감사합니다! 여기서 '서비스 사용 불가 메시지'는 사용 가능하고 두 테마 설정에서 구성 가능하며 두 테마 모두에 반영됩니까? –

0

당신은 당신입니다을 Liferay의 버전을 언급하지 않았다 Liferay 7.0을 사용하는 경우 themelets을 참조하면 테마에서 다시 사용되는 코드를 테마 릿에 넣고 테마에서 액세스 할 수 있습니다.