SlideShare una empresa de Scribd logo
1 de 21
Criando Temas com Diazo
        World Plone Day 2012
                      Brasilia
O que é o Diazo
Nova maneira de criar temas para o Plone
Permite aplicar qualquer HTML no Plone
Como funciona
Com um simples XML você substitui elementos
de seu ‘template’ html por conteúdo gerado
pelo Plone.
Requisitos
•Plone 4.1.x + plone.app.theming
Ou
•Plone 4.2
Estrutura Básica
Um tema é um simples arquivo .zip contendo
pelo menos 2 arquivos:
    • index.html
    • rules.xml
Estrutura Básica
Normalmente o arquivo é bem mais complexo.
Contém CSS e imagens.

Mas podemos começar dessa maneira...
Crie uma pasta
Crie a pasta com o nome do seu tema
Esta pasta irá guardar os arquivos do seu tema
Criando o arquivo index.html
     <html>
      <head>
        <title>Meu primeiro Diazo</title>
      </head>
      <body>
        <h1 id="title">Meu primeiro Diazo</h1>
          <div id="menu">menu do site</div>
        <div id="conteudo">Lorem ipsum... </div>
      </body>
     </html>
Criando o arquivo rules.xml
<?xml version="1.0" encoding="UTF-8"?>
<rules
xmlns="http://namespaces.plone.org/diazo"
xmlns:css="http://namespaces.plone.org/diazo/css"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<theme href=“index.html" css:if-content="#visual-portal-wrapper" />
<replace css:content="#portal-globalnav" css:theme="#menu" />
<replace css:content="#portal-columns" css:theme="#conteudo" />
</rules>
Criando o arquivo rules.xml
Define qual o template utilizado
<theme href=“index.html" css:if-content="#visual-portal-wrapper" />


Adiciona a navegação do Plone
<replace css:content="#portal-globalnav" css:theme="#menu" />


Adiciona o Conteúdo
<replace css:content="#portal-columns" css:theme="#conteudo" />
Colocando em prática
• Crie um arquivo ZIP com a sua pasta
• Adicione ao Portal
     • Configuração do Portal / Diazo Theme
     • Clique na Aba Import Theme e adicione seu arquivo

          Importante, a página de configuração do DIazo
                 não é modificada por segurança.
Colocando em prática
Após aplicar o tema, você deferá ver o seu HTML,
com o menu e o conteúdo do Plone.

Entretanto os estilos do Plone não são aplicados
Adicionando estilos
Importando CSS do Plone
<replace css:content="head" css:theme="head" />

Essa chamada substitui todo o HEAD do seu HTML
pelo HEAD do Plone
<replace />
<replace css:theme="title" css:content="title"/>
O resultado aqui é que o elemento <title /> no tema
será substituido pelo elemento <title /> do conteúdo (dinamico).
<before /> e <after />
<after css:content="#portal-searchbox" css:theme="#conteudo" />
Este exemplo colocara o busca do Plone no final da página.
<drop />
<drop css:content="#portal-searchbox .searchSection" />

É usado para apagar elementos do tema ou do conteúdo
que não serão usados.

O exemplo acima apagará o “apenas nesta seção”
que vem junto da busca do Plone.
<merge />
<merge attributes="class" css:theme="body" css:content="body" /
  >
Usado para combinar os valores dos atributos, especialmente
usado para combinar classes de CSS.
• Se o tema possui uma tag body assim:
  <body class="alpha beta">
• e o conteúdo possui uma tag body assim:
  <body class="delta gamma">
• o resultado do exemplo acima seria:
  <body class="alpha beta delta gamma">
Ordem de Execução
O Diazo executará as regras segundo uma ordem própria e não
necessariamente segundo a ordem escrita. Não é preciso
decorar, mas é bom ter anotado:
1º lugar: <before>
2º lugar: <drop />
3º lugar: <replace>
4º lugar: Regras que usam attributes.
5º lugar: Regras usando "theme-children"
6º e último lugar: <after/>
Tema mais completo
Você pode encontrar um exemplo de tema mais completo no
seguinte endereço:

http://plone.org/products/beyondskins.responsive
Criando Temas com Diazo
        World Plone Day 2012
                      Brasilia

Más contenido relacionado

La actualidad más candente (19)

Css tutorial
Css tutorialCss tutorial
Css tutorial
 
HTML
HTMLHTML
HTML
 
Aula de HTML5 - DevCampos - www.devcampos.com.br
Aula de HTML5 - DevCampos - www.devcampos.com.brAula de HTML5 - DevCampos - www.devcampos.com.br
Aula de HTML5 - DevCampos - www.devcampos.com.br
 
Introducao cms-wordpress
Introducao cms-wordpressIntroducao cms-wordpress
Introducao cms-wordpress
 
A87c5f081429cf
A87c5f081429cfA87c5f081429cf
A87c5f081429cf
 
Apresentação do Curso Primeiros Passos na Web com HTML e CSS - Profite e Univ...
Apresentação do Curso Primeiros Passos na Web com HTML e CSS - Profite e Univ...Apresentação do Curso Primeiros Passos na Web com HTML e CSS - Profite e Univ...
Apresentação do Curso Primeiros Passos na Web com HTML e CSS - Profite e Univ...
 
Apoio1020 apostila html
Apoio1020 apostila htmlApoio1020 apostila html
Apoio1020 apostila html
 
Html aula 1
Html aula 1Html aula 1
Html aula 1
 
HTML Formatando Textos
HTML Formatando TextosHTML Formatando Textos
HTML Formatando Textos
 
Programação Web com HTML e CSS
Programação Web com HTML e CSSProgramação Web com HTML e CSS
Programação Web com HTML e CSS
 
Curso HTML e CSS
Curso HTML e CSSCurso HTML e CSS
Curso HTML e CSS
 
Resumo html 2012 exercícios 01 21
Resumo html 2012   exercícios 01 21Resumo html 2012   exercícios 01 21
Resumo html 2012 exercícios 01 21
 
Python 07
Python 07Python 07
Python 07
 
Arquitetura CSS
Arquitetura CSSArquitetura CSS
Arquitetura CSS
 
Apostila html,xhtml e css
Apostila html,xhtml e cssApostila html,xhtml e css
Apostila html,xhtml e css
 
Laboratório Web 2013-2014 - HTML5
Laboratório Web 2013-2014 - HTML5Laboratório Web 2013-2014 - HTML5
Laboratório Web 2013-2014 - HTML5
 
Apostila html,xhtml e css
Apostila html,xhtml e cssApostila html,xhtml e css
Apostila html,xhtml e css
 
Criação de sites
Criação de sitesCriação de sites
Criação de sites
 
Html5 em 15 minutos
Html5 em 15 minutosHtml5 em 15 minutos
Html5 em 15 minutos
 

Similar a Criando temas Diazo Plone

Sistemas Corporativos Web - WordPress Aula03
Sistemas Corporativos Web - WordPress Aula03Sistemas Corporativos Web - WordPress Aula03
Sistemas Corporativos Web - WordPress Aula03Tersis Zonato
 
Devmedia - Conhecendo o framework front-end Foundation
Devmedia - Conhecendo o framework front-end FoundationDevmedia - Conhecendo o framework front-end Foundation
Devmedia - Conhecendo o framework front-end FoundationDevmedia
 
Apostila Css ( Apostilando.com )
Apostila Css ( Apostilando.com )Apostila Css ( Apostilando.com )
Apostila Css ( Apostilando.com )Rodrigo Dias
 
HTML+&+CSS++Fundamentos.pdf
HTML+&+CSS++Fundamentos.pdfHTML+&+CSS++Fundamentos.pdf
HTML+&+CSS++Fundamentos.pdfCesar Braz
 
HTML - HyperText Markup Language - 2
HTML - HyperText Markup Language - 2HTML - HyperText Markup Language - 2
HTML - HyperText Markup Language - 2Israel Messias
 
Bloco 5.1 - Manipulação do DOM
Bloco 5.1 - Manipulação do DOMBloco 5.1 - Manipulação do DOM
Bloco 5.1 - Manipulação do DOMRuâni Filipe Silva
 
Como desenvolver uma aplicação Web com django 2.2.13 (Parte 2 de 2)
Como desenvolver uma aplicação Web com django 2.2.13 (Parte 2 de 2)Como desenvolver uma aplicação Web com django 2.2.13 (Parte 2 de 2)
Como desenvolver uma aplicação Web com django 2.2.13 (Parte 2 de 2)Pedro Fernandes Vieira
 
Wordpress e suas funções
Wordpress e suas funçõesWordpress e suas funções
Wordpress e suas funçõesDaniel Marcos
 
Apostila HTML
Apostila HTMLApostila HTML
Apostila HTMLjoaorvb
 
Apostila de Html - Marcos Rogério Fernandes
Apostila de Html - Marcos Rogério FernandesApostila de Html - Marcos Rogério Fernandes
Apostila de Html - Marcos Rogério FernandesMatheus Henrique
 

Similar a Criando temas Diazo Plone (20)

Criando Temas com Diazo
Criando Temas com DiazoCriando Temas com Diazo
Criando Temas com Diazo
 
Sistemas Corporativos Web - WordPress Aula03
Sistemas Corporativos Web - WordPress Aula03Sistemas Corporativos Web - WordPress Aula03
Sistemas Corporativos Web - WordPress Aula03
 
Html5 workshop
Html5 workshopHtml5 workshop
Html5 workshop
 
HTML + CSS
HTML + CSSHTML + CSS
HTML + CSS
 
Devmedia - Conhecendo o framework front-end Foundation
Devmedia - Conhecendo o framework front-end FoundationDevmedia - Conhecendo o framework front-end Foundation
Devmedia - Conhecendo o framework front-end Foundation
 
Css Curso completo
Css Curso completoCss Curso completo
Css Curso completo
 
Apostila Css ( Apostilando.com )
Apostila Css ( Apostilando.com )Apostila Css ( Apostilando.com )
Apostila Css ( Apostilando.com )
 
HTML+&+CSS++Fundamentos.pdf
HTML+&+CSS++Fundamentos.pdfHTML+&+CSS++Fundamentos.pdf
HTML+&+CSS++Fundamentos.pdf
 
HTML - HyperText Markup Language - 2
HTML - HyperText Markup Language - 2HTML - HyperText Markup Language - 2
HTML - HyperText Markup Language - 2
 
Aula html5
Aula html5Aula html5
Aula html5
 
J530 14 xdoclet
J530 14 xdocletJ530 14 xdoclet
J530 14 xdoclet
 
Bloco 5.1 - Manipulação do DOM
Bloco 5.1 - Manipulação do DOMBloco 5.1 - Manipulação do DOM
Bloco 5.1 - Manipulação do DOM
 
Como desenvolver uma aplicação Web com django 2.2.13 (Parte 2 de 2)
Como desenvolver uma aplicação Web com django 2.2.13 (Parte 2 de 2)Como desenvolver uma aplicação Web com django 2.2.13 (Parte 2 de 2)
Como desenvolver uma aplicação Web com django 2.2.13 (Parte 2 de 2)
 
Java script aula 09 - JQuery
Java script   aula 09 - JQueryJava script   aula 09 - JQuery
Java script aula 09 - JQuery
 
XHTML Básico
XHTML BásicoXHTML Básico
XHTML Básico
 
Wordpress e suas funções
Wordpress e suas funçõesWordpress e suas funções
Wordpress e suas funções
 
Apostila+de+html
Apostila+de+htmlApostila+de+html
Apostila+de+html
 
Apostila HTML
Apostila HTMLApostila HTML
Apostila HTML
 
Apostila de Html - Marcos Rogério Fernandes
Apostila de Html - Marcos Rogério FernandesApostila de Html - Marcos Rogério Fernandes
Apostila de Html - Marcos Rogério Fernandes
 
Html - Apostila
Html - ApostilaHtml - Apostila
Html - Apostila
 

Más de Simples Consultoria

Plone: Funcionalidades que todo gestor de conteúdo Plone deveria saber
Plone: Funcionalidades que todo gestor de conteúdo Plone deveria saberPlone: Funcionalidades que todo gestor de conteúdo Plone deveria saber
Plone: Funcionalidades que todo gestor de conteúdo Plone deveria saberSimples Consultoria
 
PloneGov.Br: Cadê o .br que estava aqui?
PloneGov.Br: Cadê o .br que estava aqui?PloneGov.Br: Cadê o .br que estava aqui?
PloneGov.Br: Cadê o .br que estava aqui?Simples Consultoria
 
V de Vinagre: A história por trás da história do momento que mudou o Brasil
V de Vinagre: A história por trás da história do momento que mudou o BrasilV de Vinagre: A história por trás da história do momento que mudou o Brasil
V de Vinagre: A história por trás da história do momento que mudou o BrasilSimples Consultoria
 
Collective.cover: one year later
Collective.cover: one year laterCollective.cover: one year later
Collective.cover: one year laterSimples Consultoria
 
Plone 5: Você ainda vai ter um!
Plone 5: Você ainda vai ter um!Plone 5: Você ainda vai ter um!
Plone 5: Você ainda vai ter um!Simples Consultoria
 
Primeiros passos com Plone, o CMS Pythonico
Primeiros passos com Plone, o CMS PythonicoPrimeiros passos com Plone, o CMS Pythonico
Primeiros passos com Plone, o CMS PythonicoSimples Consultoria
 
Python como primeira linguagem de programação
Python como primeira linguagem de programaçãoPython como primeira linguagem de programação
Python como primeira linguagem de programaçãoSimples Consultoria
 
O Futuro do Plone (PythonBrasil[8])
O Futuro do Plone (PythonBrasil[8])O Futuro do Plone (PythonBrasil[8])
O Futuro do Plone (PythonBrasil[8])Simples Consultoria
 
Lenguaje, framework, comunidad y cuenta bancaria: De teoría hasta la práctica
Lenguaje, framework,  comunidad y cuenta bancaria: De teoría hasta la prácticaLenguaje, framework,  comunidad y cuenta bancaria: De teoría hasta la práctica
Lenguaje, framework, comunidad y cuenta bancaria: De teoría hasta la prácticaSimples Consultoria
 
Cómo Brasil está construyendo una nación digital con código abierto y Python
Cómo Brasil está construyendo una nación digital con código abierto y PythonCómo Brasil está construyendo una nación digital con código abierto y Python
Cómo Brasil está construyendo una nación digital con código abierto y PythonSimples Consultoria
 
Plone.gov.br: Or how to leverage Plone in the Brazilian Government
Plone.gov.br: Or how to leverage Plone in the Brazilian GovernmentPlone.gov.br: Or how to leverage Plone in the Brazilian Government
Plone.gov.br: Or how to leverage Plone in the Brazilian GovernmentSimples Consultoria
 
Criando temas para Joomla, Wordpress, Drupal e tudo mais sem tocar em templa...
Criando temas para Joomla, Wordpress, Drupal e tudo mais  sem tocar em templa...Criando temas para Joomla, Wordpress, Drupal e tudo mais  sem tocar em templa...
Criando temas para Joomla, Wordpress, Drupal e tudo mais sem tocar em templa...Simples Consultoria
 
How Brazil is building a digital nation with open source and Python
How Brazil is building a digital nation with open source and PythonHow Brazil is building a digital nation with open source and Python
How Brazil is building a digital nation with open source and PythonSimples Consultoria
 
Linguagem, framework, comunidade e conta-bancária: Da teoria a prática
Linguagem, framework, comunidade e  conta-bancária: Da teoria a práticaLinguagem, framework, comunidade e  conta-bancária: Da teoria a prática
Linguagem, framework, comunidade e conta-bancária: Da teoria a práticaSimples Consultoria
 

Más de Simples Consultoria (20)

Plone: Funcionalidades que todo gestor de conteúdo Plone deveria saber
Plone: Funcionalidades que todo gestor de conteúdo Plone deveria saberPlone: Funcionalidades que todo gestor de conteúdo Plone deveria saber
Plone: Funcionalidades que todo gestor de conteúdo Plone deveria saber
 
PloneGov.Br: Cadê o .br que estava aqui?
PloneGov.Br: Cadê o .br que estava aqui?PloneGov.Br: Cadê o .br que estava aqui?
PloneGov.Br: Cadê o .br que estava aqui?
 
V de Vinagre: A história por trás da história do momento que mudou o Brasil
V de Vinagre: A história por trás da história do momento que mudou o BrasilV de Vinagre: A história por trás da história do momento que mudou o Brasil
V de Vinagre: A história por trás da história do momento que mudou o Brasil
 
Collective.cover: one year later
Collective.cover: one year laterCollective.cover: one year later
Collective.cover: one year later
 
Plone 5: Você ainda vai ter um!
Plone 5: Você ainda vai ter um!Plone 5: Você ainda vai ter um!
Plone 5: Você ainda vai ter um!
 
Primeiros passos com Plone, o CMS Pythonico
Primeiros passos com Plone, o CMS PythonicoPrimeiros passos com Plone, o CMS Pythonico
Primeiros passos com Plone, o CMS Pythonico
 
Python como primeira linguagem de programação
Python como primeira linguagem de programaçãoPython como primeira linguagem de programação
Python como primeira linguagem de programação
 
O Estado do Plone - FISL 14
O Estado do Plone - FISL 14O Estado do Plone - FISL 14
O Estado do Plone - FISL 14
 
O Futuro do Plone (RuPy-Br)
O Futuro do Plone (RuPy-Br)O Futuro do Plone (RuPy-Br)
O Futuro do Plone (RuPy-Br)
 
O Futuro do Plone (PythonBrasil[8])
O Futuro do Plone (PythonBrasil[8])O Futuro do Plone (PythonBrasil[8])
O Futuro do Plone (PythonBrasil[8])
 
Lenguaje, framework, comunidad y cuenta bancaria: De teoría hasta la práctica
Lenguaje, framework,  comunidad y cuenta bancaria: De teoría hasta la prácticaLenguaje, framework,  comunidad y cuenta bancaria: De teoría hasta la práctica
Lenguaje, framework, comunidad y cuenta bancaria: De teoría hasta la práctica
 
Cómo Brasil está construyendo una nación digital con código abierto y Python
Cómo Brasil está construyendo una nación digital con código abierto y PythonCómo Brasil está construyendo una nación digital con código abierto y Python
Cómo Brasil está construyendo una nación digital con código abierto y Python
 
Gestión de Contenido con Plone
Gestión de Contenido con PloneGestión de Contenido con Plone
Gestión de Contenido con Plone
 
Plone.gov.br: Or how to leverage Plone in the Brazilian Government
Plone.gov.br: Or how to leverage Plone in the Brazilian GovernmentPlone.gov.br: Or how to leverage Plone in the Brazilian Government
Plone.gov.br: Or how to leverage Plone in the Brazilian Government
 
Collective Cover
Collective CoverCollective Cover
Collective Cover
 
O Futuro do Plone
O Futuro do PloneO Futuro do Plone
O Futuro do Plone
 
Criando temas para Joomla, Wordpress, Drupal e tudo mais sem tocar em templa...
Criando temas para Joomla, Wordpress, Drupal e tudo mais  sem tocar em templa...Criando temas para Joomla, Wordpress, Drupal e tudo mais  sem tocar em templa...
Criando temas para Joomla, Wordpress, Drupal e tudo mais sem tocar em templa...
 
O Futuro do Plone
O Futuro do PloneO Futuro do Plone
O Futuro do Plone
 
How Brazil is building a digital nation with open source and Python
How Brazil is building a digital nation with open source and PythonHow Brazil is building a digital nation with open source and Python
How Brazil is building a digital nation with open source and Python
 
Linguagem, framework, comunidade e conta-bancária: Da teoria a prática
Linguagem, framework, comunidade e  conta-bancária: Da teoria a práticaLinguagem, framework, comunidade e  conta-bancária: Da teoria a prática
Linguagem, framework, comunidade e conta-bancária: Da teoria a prática
 

Criando temas Diazo Plone

  • 1. Criando Temas com Diazo World Plone Day 2012 Brasilia
  • 2. O que é o Diazo Nova maneira de criar temas para o Plone Permite aplicar qualquer HTML no Plone
  • 3. Como funciona Com um simples XML você substitui elementos de seu ‘template’ html por conteúdo gerado pelo Plone.
  • 4.
  • 5. Requisitos •Plone 4.1.x + plone.app.theming Ou •Plone 4.2
  • 6. Estrutura Básica Um tema é um simples arquivo .zip contendo pelo menos 2 arquivos: • index.html • rules.xml
  • 7. Estrutura Básica Normalmente o arquivo é bem mais complexo. Contém CSS e imagens. Mas podemos começar dessa maneira...
  • 8. Crie uma pasta Crie a pasta com o nome do seu tema Esta pasta irá guardar os arquivos do seu tema
  • 9. Criando o arquivo index.html <html> <head> <title>Meu primeiro Diazo</title> </head> <body> <h1 id="title">Meu primeiro Diazo</h1> <div id="menu">menu do site</div> <div id="conteudo">Lorem ipsum... </div> </body> </html>
  • 10. Criando o arquivo rules.xml <?xml version="1.0" encoding="UTF-8"?> <rules xmlns="http://namespaces.plone.org/diazo" xmlns:css="http://namespaces.plone.org/diazo/css" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <theme href=“index.html" css:if-content="#visual-portal-wrapper" /> <replace css:content="#portal-globalnav" css:theme="#menu" /> <replace css:content="#portal-columns" css:theme="#conteudo" /> </rules>
  • 11. Criando o arquivo rules.xml Define qual o template utilizado <theme href=“index.html" css:if-content="#visual-portal-wrapper" /> Adiciona a navegação do Plone <replace css:content="#portal-globalnav" css:theme="#menu" /> Adiciona o Conteúdo <replace css:content="#portal-columns" css:theme="#conteudo" />
  • 12. Colocando em prática • Crie um arquivo ZIP com a sua pasta • Adicione ao Portal • Configuração do Portal / Diazo Theme • Clique na Aba Import Theme e adicione seu arquivo Importante, a página de configuração do DIazo não é modificada por segurança.
  • 13. Colocando em prática Após aplicar o tema, você deferá ver o seu HTML, com o menu e o conteúdo do Plone. Entretanto os estilos do Plone não são aplicados
  • 14. Adicionando estilos Importando CSS do Plone <replace css:content="head" css:theme="head" /> Essa chamada substitui todo o HEAD do seu HTML pelo HEAD do Plone
  • 15. <replace /> <replace css:theme="title" css:content="title"/> O resultado aqui é que o elemento <title /> no tema será substituido pelo elemento <title /> do conteúdo (dinamico).
  • 16. <before /> e <after /> <after css:content="#portal-searchbox" css:theme="#conteudo" /> Este exemplo colocara o busca do Plone no final da página.
  • 17. <drop /> <drop css:content="#portal-searchbox .searchSection" /> É usado para apagar elementos do tema ou do conteúdo que não serão usados. O exemplo acima apagará o “apenas nesta seção” que vem junto da busca do Plone.
  • 18. <merge /> <merge attributes="class" css:theme="body" css:content="body" / > Usado para combinar os valores dos atributos, especialmente usado para combinar classes de CSS. • Se o tema possui uma tag body assim: <body class="alpha beta"> • e o conteúdo possui uma tag body assim: <body class="delta gamma"> • o resultado do exemplo acima seria: <body class="alpha beta delta gamma">
  • 19. Ordem de Execução O Diazo executará as regras segundo uma ordem própria e não necessariamente segundo a ordem escrita. Não é preciso decorar, mas é bom ter anotado: 1º lugar: <before> 2º lugar: <drop /> 3º lugar: <replace> 4º lugar: Regras que usam attributes. 5º lugar: Regras usando "theme-children" 6º e último lugar: <after/>
  • 20. Tema mais completo Você pode encontrar um exemplo de tema mais completo no seguinte endereço: http://plone.org/products/beyondskins.responsive
  • 21. Criando Temas com Diazo World Plone Day 2012 Brasilia