16
Joomla!Minas Modificando a saída de dados no Joomla! sem alterar os arquivos do Core Nome Cidade Joomla! Web Twitter : Daniel Corrêa : Belo Horizonte : Consultor, Desenvolvedor e Usuário : joomlaminas.org : @danielcorreaa Template Override

Template Override

Embed Size (px)

DESCRIPTION

Apresentação realizada no CMSBrasil2009 intitulada: "Modificando a saída de dados do Joomla! sem editar os arquivos core", ou simplesmente Template Override.

Citation preview

Page 1: Template Override

Joomla!Minas

Modificando a saída de dados no Joomla!sem alterar os arquivos do Core

NomeCidadeJoomla!WebTwitter

: Daniel Corrêa: Belo Horizonte: Consultor, Desenvolvedor e Usuário: joomlaminas.org: @danielcorreaa

Template Override

Page 2: Template Override

Joomla!MinasCMSBrasil 2009

Template Override, o que é?

É uma maneira de modificar a saída de dados sem ter que alterar os arquivos originais, o Core do Joomla!

O uso é importante porque a cada atualização de versão do Joomla! não é preciso se preocupar em refazer as alterações de saída de dados.

Page 3: Template Override

Joomla!MinasCMSBrasil 2009

Template Beez - com_content

Com Override

Sem Override

Page 4: Template Override

Joomla!MinasCMSBrasil 2009

Onde posso aplicar?

Componentes e Módulos

Estrutura do Template Beez

Page 5: Template Override

Joomla!MinasCMSBrasil 2009

Template Beez - mod_poll

Com Override Sem Override

Page 6: Template Override

Joomla!MinasCMSBrasil 2009

Quando posso utilizar?

Quando um componente ou módulo são escritos na arquitetura MVC - Model, View, Controller.

M - Modelo da aplicação (propriedades e atributos)

V - Visualização do que foi obtido pelo Controlador

C - Processa as requisições feitas pela interface

Page 7: Template Override

Joomla!MinasCMSBrasil 2009

Como é interpretado?

if (com_content existe em templates/cmsbrasil/html){

}else{

}

Use os arquivos que estão lá

Use os arquivos contidos emcomponents/com_content/views

Page 8: Template Override

Joomla!MinasCMSBrasil 2009

Vantagens

Arquivos do Core intactos

Nada é modificado na atualização de versões

Personalização

Sou um CMS mas não sou igual a todos

No <table> Yes <div> - código limpo e correto

Page 9: Template Override

css

images

Joomla!MinasCMSBrasil 2009

Estrutura Padrão de um Templatecmsbrasil

.......

.......

.......

.......

.......

.......

.......

.......

.......

.......

.......

.......

.......

.......

.......

.......

.......

.......

.......

.......

.......

.......

.......

.......

.......

.......

.......

.......

background.png

template.css

index.php

index.html

templateDetails.xml

template_thumbnail.png

favicon.ico

Page 10: Template Override

mod_login

com_content

html

css

images

Joomla!MinasCMSBrasil 2009

Estrutura do Template com Overridecmsbrasil

.......

.......

.......

.......

.......

.......

.......

.......

.......

.......

.......

.......

.......

.......

.......

.......

.......

.......

.......

.......

.......

.......

.......

.......

.......

.......

.......

.......

background.png

template.css

index.php

index.html

templateDetails.xml

template_thumbnail.png

favicon.ico

modules.php............................

Page 11: Template Override

frontpage

article

mod_login

com_content

html

Joomla!MinasCMSBrasil 2009

Estrutura do Override

.......

.......

.......

.......

.......

.......

.......

.......

default.php

form.php

.......

.......

.......

.......

.......

.......

.......

.......

default.php

default_item.php

.......

.......

.......

.......default_links.php

.......

.......

.......

.......default.php

modules.php............................

Page 12: Template Override

Joomla!MinasCMSBrasil 2009

De onde são os arquivos da estrutura?

components\com_content\ \article\tmpl

templates\cmsbrasil\html\com_content\article

components\com_content\ \frontpage\tmpl

templates\cmsbrasil\html\com_content\frontpage

views

views

Page 13: Template Override

Joomla!MinasCMSBrasil 2009

Exemplo com_content

Com Override

Sem Override

<?php if ($this->params->get('show_create_date')) : ?> <span class="createdate"> <?php echo JHTML::_('date', $this->article->created, JText::_('DATE_FORMAT_LC2')); ?></span><?php endif; ?>

<?php if ($this->params->get('show_create_date')) : ?> <tr> <td valign="top" colspan="2" class="createdate"> <?php echo JHTML::_('date', $this->article->created, JText::_('DATE_FORMAT_LC2')) ?> </td></tr> <?php endif; ?>

Page 14: Template Override

Joomla!MinasCMSBrasil 2009

Exemplos de sites

FACEcom_search

BLOG do RONILDOpagination.php

JOOMLA!MINAScom_content

com_searchpagination.php

- http://www.face.ufmg.br/newPágina de busca -

- http://www.ronildo.com.brSistema de paginação -

- http://www.joomlaminas.orgConteúdo - Página de busca - Sistema de paginação -

Page 15: Template Override

Liberdade para os DesignersLiberdade para os Designers

Page 16: Template Override

Joomla!, um CMS para todos.

?