2013-07-18 1 views
3

두 개의 정적 HTML 파일이 있습니다. 하나는 홈페이지 디자인이고, 다른 하나는 일반 페이지 디자인입니다.일반적인 머리글 사용 방법 diazo를 사용하는 대체 페이지

나는 다음과 같이 사용할 하나를 결정하기 위해 규칙을 가지고 :

<rules css:if-content="body.section-front-page"> 
    <theme href="home.html" /> 
</rules> 

<rules css:if-not-content="body.section-front-page" 
     css:if-content=".portaltype-document"> 
    <theme href="index.html" /> 
</rules> 

지금이 두 페이지는 헤더 등의 공통 요소를 가지고 실현하고 있지만. 한 페이지 또는 다른 머리글에서 헤더를 사용하는 방법이 있습니까? 즉, htmlt를 변경하면 한 곳에서만 수행하면됩니다. 묻는 또 다른 방법은 디자인 파일을 함께 사용할 수 있습니까?

답변

0

하나의 테마 파일 만 있으면됩니다.

테마 파일을 올바르게 디자인하고 홈 페이지와 다른 사이트 페이지 템플릿 사이에 공통된 요소가있는 경우 매우 가능해야합니다.

디자인이 핵심이라고 생각합니다 ... 다음 사이트는 하나의 테마 파일을 사용하지만 css : if-content = "body.section-front-page"와 유사한 규칙을 사용하는 매우 다른 홈페이지를 가지고 있습니다 예를 들어 왼쪽 및 오른쪽 열을 표시하지 않습니다.

http://www.lotterywest.wa.gov.au/

+0

테마 파일을 볼 수 있습니까? 한 페이지에 모든 디자인 요소를 포함시키고 규칙을 사용하여 관련없는 것들을 취소 했습니까? –

+0

공개적으로 게시하지 않기 때문에 Gmail에서 diddyfunk로 이메일을 보내면 나에게 전달할 수 있습니다. –

0

이 불가능합니다.

디아 조 (버전 1.0.4-py2.7)는 테마 파일을로드하기 만합니다 (diazo.rules.expand_theme(element, theme_doc, absolute_prefix) 참조). 로드 된 파일의 형식은 etree.parse()이어야하며 AFIK는 "규칙"이 없기 때문에 더 많은 파일이나 코드를 포함하거나 포함 할 수 없습니다.

나는 지금까지 아무런 문제없이 해결 방법을 찾으려고 노력해 왔습니다. 나의 대안은 공통 코드를 대체 규칙으로 포함시킨 다음 다른 규칙을 적용하는 것이 었습니다. 예 : 당신의 테마 파일에 주어진 id를 가지고 diazo 규칙으로 확장하십시오. 이것은 코드를 확장 할 필요가없는 경우에만 작동합니다 (내 질문 https://stackoverflow.com/q/21703070/1659599 참조).

추가 텍스트없이 html 텍스트를 추가하기 만하면 규칙에 따라 추가 할 수 있습니다.

관련 문제