2011-07-26 3 views
4

plone.app.theming 1.0b8을 사용하여 Plone 사이트에서 Diazo로 HTML5/CSS3 테마를 만들려고합니다. BODY 부분의 매력처럼 작동합니다. 그러나 HTML 태그와 HEAD 부분은 더 어렵습니다.Diazo에서 기본 및 Content-Type + HTML 특성을 제거 할 수 있습니까?

  • 이 XMLNS 및 XML을 제거 : 나에게 적어도 :)

    는 는

    나는에 시도 랭은 HTML 태그의 속성

<drop attributes="xmlns xml:lang" theme="/html/" />
  • 제거 기본 태그
<drop theme="/html/head/base/" />
  • plone.app.theming 또는 디아 조 출력에이 일을 강요하는 경우 HTTP-당량 = "Content-Type을"
<drop theme="/html/head/meta[@http-equiv='Content-Type']" />

내가 궁금하거나 내 XPath는 만약 메타 태그를 제거하는 버그 야? 나는 주변을 수색했지만 아무 대답도 찾지 못했습니다. 나는이 문제는 여기에 생각하지 않습니다하지만

BR

+0

직접 소스 코드를 편집하는 대신 디아 조를 통해 테마의 HTML 템플릿을 조작해야하는 특별한 이유가 있습니까? –

+2

많은 사람들이 html 템플릿을 수정하는 것을 선호하지만 어떤 경우에는 단순히 html 템플릿이 네트워크를 통해 가져올 때 가능하지 않습니다. – aclark

답변

3

귀하의 XPath의 아마 뒤에 '/'로 끝나지한다.

XMLSerializer가 XHTML 모드에서 추가 한 xmlns 속성은 제거 할 수 없습니다 (적어도 일반적인 상황에서는). 루트 규칙 태그 안에 <xsl:output method="html"/> 대신 HTML 직렬화를 설정할 수 있습니다.

XHTML 모드에서 XMLSerializer는 lang 특성과 일치하도록 xml : lang을 추가합니다. 다시 한 번, html 직렬화를 설정하십시오.

일반적으로 기본 태그는 콘텐츠에서 테마로 복사됩니다. 테마 html 파일에 기본 태그가 있어야 할 이유가 없어야합니다. 복사하지 않으면 출력으로 끝나지 않습니다. 그러나 동일한 페이지가 http://localhost/some_urlhttp://localhost/some_url/ 모두에서 렌더링되기 때문에 Zope의 출력에 기본 태그를 포함하는 것이 좋습니다. 그러면 상대 URL과의 차이가 발생할 수 있습니다.

libxslt가 content-type 헤더를 추가하면 libxslt가 무조건 추가하므로 억제 할 수 없습니다.

+0

답변 해 주셔서 감사합니다. xsl : 출력은 xmlns와 xml : lang을 모두 제거했습니다. 기본 태그와 관련해서는 컨텐츠 유형 헤더와 동일하다고 생각합니다.이를 억제하는 것은 불가능합니다. –

+0

아 그래,이 Zope '기능'입니다 - 자동으로 하나없는 HTML 페이지에 기본 태그를 추가합니다. 두 가지가 항상 일치하지는 않으므로 Plone 생성 기본 태그를 복사하는 것이 가장 좋습니다. –