Template usando Template

Encontrou algum problema ao tentar criar um novo template? Tente achar a solução aqui.
will_30
 Usuário
 Usuário
Mensagens: 4
Registrado em: 24 Fev 2011, 00:00

Template usando Template

Mensagem por will_30 » 27 Fev 2011, 21:58

Olá todos,
Estou construindo template para meu website, porém, estou com dúvidas.
Eu consigo utilizar Template ao construir Template?
Isto é:

Supondo que eu tenha o Template1 com o seguinte código:

Código: Selecionar todos

<%@page buffer="none" session="false"  %>
<%@ taglib prefix="cms" uri="http://www.opencms.org/taglib/cms" %>
<cms:template element="head">
<html>
<head> 
    <title><cms:property name="Title" file="search" escapeHtml="true"/></title>
    <cms:editable/>
</head>
<body>    
 <h1><cms:property name="Title" file="search" escapeHtml="true"/></h1>
 ...códigos do cabeçalho
</cms:template>

<cms:template element="foot">
...códigos do rodapé
</body>
</html>
</cms:template>
Porém quero construir agora um template (Template2) que contenha o body, algo assim:

Código: Selecionar todos

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<%@page buffer="none" session="false"  %>
<%@ taglib prefix="cms" uri="http://www.opencms.org/taglib/cms" %>
<cms:include property="template" element="head" />
<cms:template element="body">
		<div class="center">
			       <cms:include element="body" editable="true"/>
		</div>	
</cms:template>
<cms:include property="template" element="footer" />
No Template2 eu coloquei o Template1 como template.

Quando eu tento abrir uma página que utiliza o Template2, dá o seguinte erro

Código: Selecionar todos

javax.servlet.jsp.JspException: javax.servlet.ServletException: VFS target resource "/system/modules/com.teste.website/templates/template2" was already included earlier.
Reason: VFS target resource "/system/modules/com.teste.website/templates/template2" was already included earlier. 
Alguém sabe se isso é possível? E se sim, o que estou fazendo de errado?

Obs: Se eu apontar minha página para o Template1 funciona.



[]'s

Deiverson
 Administrador
 Administrador
Mensagens: 270
Registrado em: 23 Jul 2006, 00:13
Contato:

Mensagem por Deiverson » 02 Mar 2011, 15:32

Olá Will,

Verifica qual pagina está setada na propriedade "Template" do seu arquivo Template2, por que é dessa pagina que ele vai herdar os elementos.

Você pode experimentar algo assim:
<cms:include page="template.jsp" element="footer"/>
"Não sabendo que era impossível, ele foi lá e fez." - Jean Cocteau

Responder

Quem está online

Usuários navegando neste fórum: Nenhum usuário registrado e 1 visitante