Prévia do material em texto
Desenvolva e implemente seu próximo aplicativo na plataforma de cloud do IBM Bluemix. Comece aComece a construir grátisconstruir grátis Temas são plug-ins para o Drupal que desenvolvem ou melhoram a aparência principal do Drupal. Neste artigo, obtenha uma visão geral de como funciona o tema do sistema no Drupal, incluindo os vários componentes de um tema do Drupal e como determinar quais componentes são necessários ou quais são elementos opcionais, e aprenda a construir um novo tema do zero usando o mecanismo de tema padrão PHPTemplate . Timi Ogunjobi é autor e desenvolvedor de aplicativos da web. É CEO da Xceedia Limited, uma empresa de engenharia de software com interesse na web e em aplicativos móveis. Também é o autor de três livros sobre o Drupal, entre vários outros. É possível entrar em contato com Timi pelo email timi@xceedia.co.uk. 26/Mai/2014 Uma conta do tema para a interface com o usuário (UI) de um website do Drupal. Mesmo que a estrutura do tema não tenha mudado consideravelmente, o Drupal versão 7 vem com uma nova metodologia de implementação de tema. Este artigo mostra como criar um tema do novo Drupal 7. O objetivo de um tema Drupal é separar a lógica de processamento da estrutura a partir do elemento de design. Para isso, o Drupal emprega um sistema de tema complexo, que consiste em temas, mecanismos temáticos e ganchos. Os componentes do tema trabalham em conjunto com os sistemas centrais do Drupal e com elementos de design de módulos para criar a aparência distinta da interface com o usuário—a página e os formulários individuais do Drupal. Ao separar a lógica de negócio do Drupal de sua lógica de apresentação, o código é mais fácil de ser mantido e é possível trocar a implementação da camada de tema sem precisar reescrever a camada de código e vice-versa. A Figura 1 ilustra a arquitetura da estrutura do Drupal. Figura 1. A arquitetura da estrutura do Drupal Os temas exibem dados que o núcleo do Drupal busca a partir do banco de dados, por meio de um mecanismo do tema subjacente, que atua como uma interface entre o núcleo do Drupal e os modelos de tema. O mecanismo de tema developerWorks BrasildeveloperWorks Brasil Itens TécnicosItens Técnicos Software livreSoftware livre Biblioteca técnicaBiblioteca técnica Desenvolvendo um Novo Tema para o Drupal 7 Desenvolvendo um Novo Tema para o Drupal 7 Crie uma aparência customizada para o seu site Drupal Desenvolvendo um Novo Tema para o Drupal 7 http://www.ibm.com/developerworks/br/library/os... 1 de 13 17-04-2015 17:15 Outros mecanismos de tema do Drupal Vários outros mecanismos de tema são usados geralmentecom o Drupal. Eles incluem PHPTAL, wgSmarty, Zengine, Awesomengine, ETS, Haml, XSLengine e Peroxide. No entanto, este artigo usa o mecanismo PHPTemplate , porque é o mecanismo de tema padrão e o único enviado com o Drupal 7. Mecanismos de tema são os meios pelos quais os temas interagem com o núcleo do Drupal. Há vários mecanismos de tema que podem ser usados com o Drupal. Os mais populares são: PHPTemplate XTemplate Plain PHP Smarty Engine Também é possível usar seu próprio mecanismo customizado, se desejar. O mecanismo de tema PHPTemplate , que é o padrão do mecanismo do Drupal e o mais usado neste artigo, usa arquivos de tema individuais com nomes como filename.tpl.php para ser o tema das funções theme_filename() do Drupal. Cada um desses arquivos contém um esqueleto HTML, bem como instruções PHP para os dados dinâmicos. Assim, com um conhecimento básico de PHP, é fácil criar temas avançados com PHPTemplate , pois estão envolvidos apenas pequenos bits de código. Planejando o tema O tema é constituído por vários arquivos. Assim como muitos arquivos dependem da complexidade do tema. Um tema pode ter apenas três arquivos ou centenas deles, incluindo elementos gráficos e vários scripts colocados em várias pastas dentro do diretório do tema. A Figura 2 mostra as descrições de arquivos típicos (cores, imagens, logotipo, modelos, folhas de estilo e arquivos PHP) que podem ser encontradas dentro da pasta principal de um tema. Figura 2. Conteúdo típico de uma pasta de tema Nem todos esses arquivos são necessários em um tema e alguns temas não têm sequer o arquivo de folha de estilo em cascata (CSS), que muitos pensam ser absolutamente necessário. Ao compreender Desenvolvendo um Novo Tema para o Drupal 7 http://www.ibm.com/developerworks/br/library/os... 2 de 13 17-04-2015 17:15 como esses arquivos de tema são usados, a estrutura de um tema e como ele funciona se tornam mais claros. Vamos olhar novamente em algum dos arquivos no diretório do tema e examinar sua função dentro do tema geral. O arquivo .info O arquivo .info é um arquivo necessário: Deve ser incluído para que o Drupal veja o seu tema. Os arquivos .info informam ao Drupal o nome interno do tema. Se, por exemplo, o nome do arquivo for ibmtheme.info, logo, o nome que o Drupal dará a este tema será ibmtheme. Se o seu tema usa elementos como o JavaScript, metadados, folhas de estilo ou regiões de bloco, ele também deve ser definido no arquivo .info. Todo o resto é opcional. O conteúdo do arquivo .info para o tema Bartik, na Listagem 1, ilustra este comportamento. Listagem 1. Conteúdo do arquivo .info de tema Bartik ; $Id: bartik.info,v 1.5 2010/11/07 00:27:20 dries Exp $ name = Bartik description = Um tema flexível e tangível novamente com muitas regiões. package = Core version = VERSION core = 7.x stylesheets[all][] = css/layout.css stylesheets[all][] = css/style.css stylesheets[all][] = css/colors.css stylesheets[print][] = css/print.css regions[header] = Header regions[help] = Help regions[page_top] = Page top regions[page_bottom] = Page bottom regions[highlighted] = Highlighted regions[featured] = Featured regions[content] = Content regions[sidebar_first] = Sidebar first regions[sidebar_second] = Sidebar second regions[triptych_first] = Triptych first regions[triptych_middle] = Triptych middle regions[triptych_last] = Triptych last regions[footer_firstcolumn] = Footer first column regions[footer_secondcolumn] = Footer second column regions[footer_thirdcolumn] = Footer third column regions[footer_fourthcolumn] = Footer fourth column regions[footer] = Footer settings[shortcut_module_link] = 0 ; Informações incluídas pelo script do pacote do drupal.org em 05-01-2011 version = "7.0" project = "drupal" datestamp = "1294208756" Os arquivos de modelo .tpl.php O diretório do tema contém vários arquivos de modelo com nomes como xxx.tpl.php. Eles são arquivos de modelo que contêm a marcação Extensible HTML (XHTML) e variáveis PHP para o tema. Em certos casos, é possível codificá-los para entregar os outros tipos de saída de dados, como RSS. De um modo geral, cada arquivo tpl.php de tema do Drupal é codificado para lidar com as saídas de dados específicas: Pode ser confuso e contraproducente incorporar uma lógica complexa em arquivos de modelo, pois isso pode torná-los difíceis de serem mantidos. O cenário desejável é que eles contenham nada mais que as tags XHTML lineares e variáveisPHP. A Listagem 2 mostra o conteúdo do arquivo node.tpl.php, que descreve a saída do nó de base para o tema principal Garland. Listagem 2. Conteúdos do arquivo node.tpl.php de tema Garland <?php Desenvolvendo um Novo Tema para o Drupal 7 http://www.ibm.com/developerworks/br/library/os... 3 de 13 17-04-2015 17:15 // $Id: node.tpl.php,v 1.24 2010/12/01 00:18:15 webchick Exp $ ?> <div id="node-<?php print $node->nid; ?>" class="<?php print $classes; ?>"<?php print $attributes; ?>> <?php print $user_picture; ?> <?php print render($title_prefix); ?> <?php if (!$page): ?> <h2<?php print $title_attributes; ?>><a href="<?php print $node_url; ?>"><?php print $title; ?></a></h2> <?php endif; ?> <?php print render($title_suffix); ?> <?php if ($display_submitted): ?> <span class="submitted"><?php print $submitted ?></span> <?php endif; ?> <div class="content clearfix"<?phpprint $content_attributes; ?>> <?php // Oculte os comentários e links agora para que seja possível renderizá-los mais tarde. hide($content['comments']); hide($content['links']); print render($content); ?> </div> <div class="clearfix"> <?php if (!empty($content['links'])): ?> <div class="links"><?php print render($content['links']); ?></div> <?php endif; ?> <?php print render($content['comments']); ?> </div> </div> O arquivo template.php O arquivo template.php normalmente tem toda a lógica condicional e o processamento de dados para a saída de um tema. Também é possível usar o arquivo template.php para manter os arquivos .tpl.php para o tema organizado. Como esse é um arquivo PHP, é obrigatório iniciar o conteúdo com uma tag <?php de abertura de PHP, mas é possível omitir a tag de fechamento. Outros arquivos Vários outros elementos não são necessários para o funcionamento do tema, mas podem aparecer em muitos temas. Esses elementos incluem o logotipo e captura de tela, o arquivo theme-settings.php e os arquivos color.inc: O logotipo e a captura de tela. Estes elementos são recomendados, mas não absolutamente necessários para o funcionamento do tema. No entanto, caso queira contribuir com o seu tema para o repositório do Drupal, uma captura de tela é obrigatória. A Figura 3 é uma captura de tela para o tema Garland. Figura 3. Captura de tela do tema Garland Desenvolvendo um Novo Tema para o Drupal 7 http://www.ibm.com/developerworks/br/library/os... 4 de 13 17-04-2015 17:15 theme-settings.php. Este arquivo exibe as configurações de IU administrativa ou recursos avançados, além de configurações gerais, como as de busca ou o logotipo da missão. Um olhar sobre o conteúdo deste arquivo para o tema Garland, mostrado na Listagem 3, proporciona uma indicação do que deveria finalmente ser exibido. Listagem 3. Conteúdo do arquivo theme-settings.php de tema Garland // $Id: theme-settings.php,v 1.3 2010/09/04 15:21:09 seca Exp $ /** * @file * Os retornos de chamada de configuração de tema para o tema Garland. */ /** * Implementa hook_form_FORM_ID_alter(). * * @param $form * The form. * @param $form_state * The form state. */ function garland_form_system_theme_settings_alter(&$form, &$form_state) { $form['garland_width'] = array( '#type' => 'radios', '#title' => t('Content width'), '#options' => array( 'fluid' => t('Fluid width'), 'fixed' => t('Fixed width'), ), '#default_value' => theme_get_setting('garland_width'), '#description' => t('Specify whether the content will wrap to a fixed width or will fluidly expand to the width of the browser window.'), // Coloque isso acima das opções do esquema de cores. '#weight' => -2, ); } A exibição eventual será uma forma que se assemelha à Figura 4. Figura 4. A página de configurações de tema color.inc. A função da cor. O módulo permite aos administradores alterar completamente um esquema de cores do tema sem ter de trabalhar manualmente nas folhas de estilo. Se o tema requer apoio do módulo de cor, é preciso incluir um diretório color com um arquivo color.inc juntamente com os vários Desenvolvendo um Novo Tema para o Drupal 7 http://www.ibm.com/developerworks/br/library/os... 5 de 13 17-04-2015 17:15 arquivos de suporte. Desenvolvendo o tema Existem dois métodos básicos para o desenvolvimento de um tema: É possível desenvolvê-lo a partir do zero ou modificar um tema já existente. Neste artigo, você desenvolve um novo tema a partir do zero. Dito isto, porém, você manterá o conteúdo de temas úteis existentes para o propósito de ver como a estrutura fica. Criando a estrutura de diretório Primeiro, crie um diretório para conter os arquivos do tema. O melhor lugar para colocar esse diretório é no diretório sites/all/themes. Dê ao diretório um nome único que descreva o tema: Esse nome não deve ter espaços. Embora não seja obrigatório, ele ajuda a criar subdiretórios para a folha de estilo (arquivos CSS), imagens e scripts (se o seu tema usá-los). Fazer isso ajudará a manter as coisas organizadas. Desenvolvendo o arquivo .info O arquivo .info é apenas um arquivo de texto contendo dados—geralmente, os parâmetros necessários para descrever a estrutura, bem como o conteúdo e a configuração do tema. Dentro deste arquivo de texto, cada linha faz par com uma chave para um valor, com o valor à direita e a chave à esquerda do sinal de igual (=). Listagem 4 dá um exemplo. Listagem 4. Conteúdo de amostra do arquivo .info de tema Garland ; $Id: garland.info,v 1.10 2010/11/07 00:27:20 dries Exp $ name = Garland description = A multi-column theme that can be configured to modify colors and switch between fixed- and fluid-width layouts package = Core version = VERSION core = 7.x stylesheets[all][] = style.css stylesheets[print][] = print.css settings[garland_width] = fluid ; Informações incluídas no script de pacote no drupal.org em 05-01-2011 version = "7.0" project = "drupal" 1[ OPEN SOURCE\index.xml 31/05/2012] - Inclui-se comentários usando ponto e vírgula (;) no começo de uma linha. Colchetes retos ([]), quando usados, são para a criação de matrizes de valores associados. Vamos percorrer os elementos que devem ou podem ser incluídos em um arquivo .info. Nome O valor name é necessário. Deve ser um nome legível, que comece com um caractere alfabético. O nome tem a mesma limitação para a formação de funções em PHP, porque o Drupal usa-o para o mesmo propósito. Portanto, o nome pode conter números sublinhados (_) mas não hífens (-), espaços ou pontuação. Segue a sintaxe: name = Garland Descrição A chave description é recomendada e deve ser apenas uma breve descrição do tema. A descrição inserida aqui aparece no tema selecionado ou na página Aparência . Segue a sintaxe: description = A multi-column theme that can be configured to modify colors Desenvolvendo um Novo Tema para o Drupal 7 http://www.ibm.com/developerworks/br/library/os... 6 de 13 17-04-2015 17:15 and switch between fixed- and fluid-width layouts Screenshot A chave screenshot é opcional. Sua função é informar ao Drupal onde encontrar a imagem miniatura do seu novo tema. A imagem miniatura será exibida na página Aparência . Se você não incluir essa tecla no arquivo .info, o Drupal chamará um arquivo screenshot.png padrão do diretório do tema padrão. Se você decidir chamar o seu arquivo miniatura com um nome diferente de screenshot.png ou colocar o arquivo em um diretório fora do diretório principal do seu tema, precisará incluir esta tecla. Segue a sintaxe: screenshot = /images/screenshot.png Para criar uma captura de tela, basta capturar uma imagem do seu tema completo em um navegador. Em seguida, corte e redimensione a imagem para uma dimensão de 294 x 219 pixels e salve-a como screenshot.png. Coloque esse arquivo na mesma pasta em seu arquivo .info. Version Embora muitos dos temas populares incluam a chave version , seu uso é não é incentivado. Se você pretende hospedar o seu tema no repositório de temas do Drupal, não há necessidade de incluir version, porque quando um release é embalado para download, o drupal.org inclui automaticamente a sequência de versão. Caso contrário, é possível incluir qualquer sequência de versão que desejar. Segue a sintaxe: version = 1.0 Núcleo A chave core é um valor necessário. Em todas as versões atualmente suportadas pelo Drupal, é preciso indicar a versão do Drupal com a qual seus módulos e temas são compatíveis. O valor definido aqui será comparado à constante de Compatibilidade do Núcleo do Drupal (encontrada no arquivo include/bootstrap.inc); se nenhuma correspondência for encontrada, o Drupal desativará o tema. Segue a sintaxe para a constante: <?php define('DRUPAL_CORE_COMPATIBILITY', '7.x') ?> Os scripts de empacotamento drupal.org definem automaticamente este valor com base na configuração de compatibilidade do núcleo do Drupal em cada nó de release (sevocê estiver contribuindo com seu tema). Mecanismo A chave engine indica o tipo de mecanismo que o seu tema usa. É necessário na maioria dos casos. Se você não fornecer o engine no arquivo .info, o Drupal assume que o tema é independente, implementado com um arquivo .theme. A maioria dos temas encontrados no repositório Drupal.org usa o mecanismo PHPTemplate padrão, que é fornecido com o núcleo do Drupal. Segue a sintaxe: engine = phptemplate Base theme Se o tema for um subtema para outro, certifique-se de declarar o seu base theme para ativar a herança de tema. Em outras palavras, os recursos do arquivo do tema de base estarão disponíveis para uso no subtema. Será necessário inserir o nome legível por máquina interno do tema de base. Segue a sintaxe: Desenvolvendo um Novo Tema para o Drupal 7 http://www.ibm.com/developerworks/br/library/os... 7 de 13 17-04-2015 17:15 Criando novas regiões de tema Qualquer parte de sua página que deseja ser capaz de editar na página de administração dos Blocos será necessária para se tornar uma região. Normalmente, essa região inclui o cabeçalho, barra lateral direita, área de conteúdo e rodapé. É preciso apresentar todas as suas regiões no arquivo .info; caso contrário, eles não existirão para o Drupal. base theme = garland Regions A chave regions define as regiões de bloco disponíveis para o tema. É preciso definir especificamente a chave regions e, em seguida, o nome legível por máquina interno entre colchetes retos. Então, é preciso definir o nome legível como o valor aplicável. Segue a sintaxe: regions[highlighted] =Mission Statement Se você optou por não definir nenhuma região, os seguintes valores serão assumidos para um tema do Drupal 7: regions[header] = Header regions[highlighted] = Highlighted regions[help] = Help regions[content] = Content regions[sidebar_first] = Left sidebar regions[sidebar_second] = Right sidebar regions[footer] = Footer É possível substituir esses valores para suas necessidades específicas. Se você fizer isso, deverá declarar a linha. Segue a sintaxe: regions[highlighted] =Mission Statement Recursos É possível alternar vários elementos da página na página de configuração do tema. As caixas de verificação exibidas na página de configuração do tema são controladas pela chave features (consulte a Figura 5). Assim, é possível suprimir caixas de seleção para os elementos que não são definidos nem usados por um tema. A omissão de uma entrada suprime uma caixa de seleção para esse recurso. Se você não definir todas as características, então, todas as caixas de seleção serão exibidas como padrões assumidos. Figura 5. O tema apresenta a página de configuração Desenvolvendo um Novo Tema para o Drupal 7 http://www.ibm.com/developerworks/br/library/os... 8 de 13 17-04-2015 17:15 A Listagem 5 mostra todos os elementos disponíveis para a chave features . Listagem 5. Entrada de recursos temáticos no arquivo .info features[ ] = logo features[ ] = name features[ ] = slogan features[ ] = node_user_picture features[ ] = comment_user_picture features[ ] = favicon features[ ] = main_menu features[ ] = secondary_menu Stylesheets Os temas do Drupal usados como padrão para o uso do style.css. No entanto, nas versões atuais, os temas não são mais padrão do style.css se esse arquivo não for especificado no arquivo .info. Além disso, é possível incluir novas folhas de estilo por meio do arquivo .info. Segue a sintaxe: stylesheets[all][] = css/style.css stylesheets[print][] = css/print.css Scripts Costumava ser comum para incluir arquivos JavaScript apenas chamando uma função, como drupal_add_js() no arquivo template.php do tema. No entanto, no Drupal 7, o script.js é incluído apenas se você especificá-lo no arquivo .info. Segue a sintaxe: scripts[] = scripts/myscript.js PHP A sequência definida aqui será a versão PHP mínima que suporta o tema. O valor padrão deriva da constante DRUPAL MINIMUM PHP (localizada no arquivo includes/bootstrap.inc): <?php define('DRUPAL_MINIMUM_PHP', '5.2.4') ?> É possível alterar esse valor, mas não é necessário incluir a sequência. Segue a sintaxe: php = 5.2.4 Valores padrão do .info O arquivo .info contém valores padrão que o Drupal assume para cada tema instalado. Se esses valores Desenvolvendo um Novo Tema para o Drupal 7 http://www.ibm.com/developerworks/br/library/os... 9 de 13 17-04-2015 17:15 não estiverem definidos no arquivo .info, o Drupal força o tema para usar os valores padrão. Observe, no entanto, que esses valores são aplicáveis como um grupo. Isso significa que, se você substituir uma linha como: regions[sub_header] = Sub-header será necessário redefinir o resto das regiões padrão; caso contrário, elas serão omitidas. Esta regra também se aplica a stylesheets. Embora a chave stylesheets não esteja definida tecnicamente em um grupo, se você definir uma outra stylesheet no arquivo .info, deverá redefinir novamente o style.css; caso contrário, não será incluído. As chaves e valores na Listagem 6 são os padrões para um tema do Drupal 7. Listagem 6. Valores padrão do .info regions[sidebar_first] = Left sidebar regions[sidebar_second] = Right sidebar regions[content] = Content regions[header] = Header regions[footer] = Footer regions[highlighted] = Highlighted regions[help] = Help regions[page_top] = Page Top regions[page_bottom] = Page Bottom engine = phptemplate features[ ] = logo features[ ] = name features[ ] = slogan features[ ] = node_user_picture features[ ] = comment_user_picture features[ ] = favicon features[ ] = main_menu features[ ] = secondary_menu screenshot = screenshot.png Desenvolvendo o arquivo page.tpl.php Agora, examine o conteúdo de um típico arquivo page.tpl.php. A imagem na Figura 6 é a partir do tema Garland e mostra como a fonte se parece em um navegador. Figura 6. O código fonte page.tpl.php é um navegador Ao olhar mais de perto, o modelo page.tpl.php é apenas uma página HTML simples com uma grande pitada de instruções PHP. Muito convenientemente, a maioria dos elementos do PHP já foi definida para o Drupal e tudo o que é preciso ser feito é colocá-los como quiser. Observação: O link http://drupal.org/node/190815 [Core Templates] leva a uma lista de variáveisdisponíveis para o modelo page.tpl.php. Inclusão de variáveis aos elementos básicos da página Desenvolvendo um Novo Tema para o Drupal 7 http://www.ibm.com/developerworks/br/library/os... 10 de 13 17-04-2015 17:15 Imprimir ou renderizar Algumas variáveis precisam ser exibidas usando a função render() , enquanto outras podem simplesmente ser impressas. Se uma matriz contiver uma variável, conforme listado na página de referência page.tpl.php (consulte Recursos para um link), é necessário Várias variáveis estão disponíveis para o desenvolvimento de um page.tpl.php. O que você escolheu para incluir depende da funcionalidade que deseja alcançar em seu tema. Por exemplo, se você optar por ter trilhas de navegação em suas páginas, inclui a variável $breadcrumbs . As variáveis mais comuns que você encontrará no page.tpl.php são: $site_name $logo (o logotipo carregado por meio das configurações de tema; só é útil quando você implementa o recurso de tema do logotipo) $title (o título da página) $main_menu $secondary_menu $breadcrumbs (um auxílio à navegação que deixa um rastro de links de referência quando um usuário se aprofunda em um website) Também há as variáveis associadas com a administração do Drupal: $tabs (menu usado para edição ou visualização de menus de administração, entre outras coisas; muitas vezes, usado por módulos) $messages $action_links E algumas outras variáveis são úteis: $base_path (o caminho para a raiz do seu site) $front_page (o caminho para a página inicial do site) $directory (o caminho do seu tema) É possível inserir variáveis usando a interface de programação de aplicativos (API) do Render, como esta: <?php print render($tabs); ?> Se suas qualificações em PHP e HTML estiverem acimada média, evidentemente será possível criar um tema campeão, observando como o exemplo foi desenvolvido e, em seguida, usando as variáveis permitidas para criar a sua própria. Desenvolvendo outros arquivos de modelo Os modelos padrão para outros arquivos de tema estão disponíveis e vêm com o núcleo do Drupal. É possível localizar uma lista deles no site do Drupal (consulte Recursos para obter um link). Assim como para o arquivo page.tpl.php, a melhor maneira de desenvolver facilmente o seu próprio site é encontrar um arquivo principal, observar como ele foi elaborado e, em seguida, Desenvolvendo um Novo Tema para o Drupal 7 http://www.ibm.com/developerworks/br/library/os... 11 de 13 17-04-2015 17:15 usar render(). Caso negativo, é possível imprimir a variável (<?php print $variable; ?>). Recursos Aprender Visite a Site do Drupal para encontrar os modelos padrão para outros temas incluídos ao núcleo do Drupal. Confira página de referência page.tpl.php para obter uma lista de variáveis para usar em seu tema. Consulte o site do Drupal para obter uma lista completa das classes CSS. Um método zona de software livre do developerWorks fornece diversas informações sobre ferramentas de software livre e tecnologias de software livre utilizadas. especializadas em artigos que cobrem diversas soluções baseada na web. Fique por dentro dos eventos técnicos e webcasts do developerWorks com ênfase em uma variedade de produtos IBM e assuntos do segmento de mercado de TI. Participe de um briefing gratuito do developerWorks Live! para inteirar-se sobre os produtos e ferramentas IBM, além das tendências do mercado de TI. Acompanhe as Demos on demand do developerWorks , que abrangem Guias de capacitação Se capacite através de diversos recursos de treinamento. Programa IBM Champion O programa reconhece contribuidores que estão ajudando a construir um Planeta Mais Inteligente. Programa Global de Empreendedorismo da IBM Faça parte do programa que busca por empreendedores que ajudam a modificar a maneira como o mundo funciona. desenvolver o seu próprio. Uma viagem para o site Drupal apontará para as variáveis permitidas para uso em qualquer arquivo de tema. O arquivo style.css Em uma página estática HTML normal, é preciso incluir um ponteiro dentro do cabeçalho da página para mostrar a localização da folha de estilo a ser usada para a exibição da página. Um ponteiro se parece com: <link rel="stylesheet" type="text/css" href="/model.css" /> Conforme já foi discutido, é possível incluir novos estilos a um tema e sobrescrever estilos padrão. Em ambos os casos, é preciso inserir o tema na folha de estilo no arquivo .info. O que há na folha de estilo? O mesmo tipo de abordagem modular é usado para classes CSS que o núcleo do Drupal usa para elementos de página padrão da estrutura. Mesmo que os desenvolvedores criem seu próprio tema, ocorrem diversas classes em todo o site Drupal. Para obter uma lista completa de classes no núcleo do Drupal 7, consulte Recursos. Conclusão Este artigo forneceu uma visão geral de como funciona o sistema de temas no Drupal 7. Ele explicou os vários componentes de um tema do Drupal e como proceder com a construção de um novo tema a partir do zero usando o mecanismo de tema padrão PHPTemplate . Você viu a estrutura típica de cada arquivo de tema do componente. É necessário ter o que precisa para criar o seu próprio tema customizado. Aproveite! Desenvolvendo um Novo Tema para o Drupal 7 http://www.ibm.com/developerworks/br/library/os... 12 de 13 17-04-2015 17:15 desde demos de instalação e configuração de produtos para iniciantes até funcionalidades avançadas para desenvolvedores experientes. Siga o developerWorks no Twitter, ou inscreva-se em um feed de tweets do Linux no developerWorks. Obter produtos e tecnologias Obtenha mais informações sobre o Drupal 7. Avalie os produtos IBM da maneira que for melhor para você: faça download da versão de teste de um produto, avalie um produto on-line, use-o em um ambiente de nuvem ou passe algumas horas na SOA Sandbox para saber mais sobre como implementar arquitetura orientada a serviço (SOA) de maneira eficiente. Discutir Confira Blogs do developerWorks e participe da comunidade do developerWorks. Participe dos comunidade do developerWorks. Conecte-se com outros usuários do developerWorks ao mesmo tempo que explora blogs, fóruns, grupos e wikis orientados a desenvolvedor. Desenvolvendo um Novo Tema para o Drupal 7 http://www.ibm.com/developerworks/br/library/os... 13 de 13 17-04-2015 17:15