Zápisník začínajícího vývojáře šablon pro Drupal

Těchto pár poznámek poslouží všem, kdo chtějí “od nuly” vytvářet šablony pro redakční systém Drupal bez znalosti programovacího jazyka PHP. Veškeré zdrojové kódy jsou převzaty z různých šablon.

Reklama

Poutníkem tvorby šablon

Specializuji se na programovací jazyk CSS  - Cascading Style Sheets, který je nezbytné znát při tvorbě šablon pro redakční systémy.  U Drupalu je zapotřebí znát i programovací jazyk PHP, abyste mohli správně vytvářet různé PHP vsuvky do šablony. 

Vzhledem k tomu, že já sám neumím programovací jazyk PHP, byl jsem nucen prozkoumávat různé šablony, abych věděl jak některé PHP vsuvky zapisovat. Sepsal jsem právě proto těchto pár poznámek.

Nezoufejte, s tímto zápisníkem není potřeba znát programovací jazyk PHP.

Z čeho se skládá šablona

Nezbytnou součástí šablony jsou tyto soubory:

page.tpl.php - kostra stránek
node.tpl.php - ovlivňuj zobrazení článků. Většinou je ve všech šablonách stejné.
*.info -  v tomto typu souboru  jsou informace o šabloně
screenshot.png - náhled šablony. Velikost obrázku 150x90.
 
Další součásti, které nejsou vyžadovány, najdete na adrese drupal.org/node/190815

Co se nachází v souborech  *.info

; $Id:nazevsouboru.info,v 1.0 2009/10/06 05:50:50 autor Exp $ 
name = Název šablony
description = Popis.
version = Verze
core = 6.x
engine = phptemplate

Kostra page.tpl.php

Jedna z možných podob souboru:

<?php
// $Id: page.tpl.php,v 1.18.2.1 2009/04/30 00:13:31 goba Exp $
?><!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="<?php print $language->language ?>" lang="<?php print $language->language ?>" dir="<?php print $language->dir ?>">
  <head>
    <?php print $head ?>  -
    <title><?php print $head_title ?></title>
    <?php print $styles ?>
    <?php print $scripts ?>
  </head>
  <body>
<!--Začátek Layoutu -->
<div class="layout">
<!--Zde přijde obsah Layoutu, viz dále -->
</div>
<!-- /  Konec layoutu -->
 <?php print $closure ?>
 </body>
</html>

Na konci layoutu musí být vždy   <?php print $closure ?>.

Příklady, jak definovat prvky do kostry layoutu

Název stránek „klikatelný”

{syntaxhighlighter brush: php}


{/syntaxhighlighter}

Název stránek  „standard”

{syntaxhighlighter brush: php}


{/syntaxhighlighter}

Popis stránek

{syntaxhighlighter brush: php}


{/syntaxhighlighter}

Definovaní možnosti změny loga stránek s administrace

{syntaxhighlighter brush: php}
<?php print t('Home') ?>
{/syntaxhighlighter}

Hlavička

<?php print $header ?>

Patička

<?php print $footer_message . $footer ?>

nebo

Copyright © <?php print date('Y') ?> <a href="/"><?php print $site_name ?></a>. <?php print $footer_message ?>

Levý sloupec

<?php if ($left): ?>
<div class="layout_left">
<?php print $left ?>
</div>
<?php endif; ?>  

Pravý sloupec

<?php if ($right): ?>
<div class="layout_right">
<?php print $right ?>
</div>
<?php endif; ?>

Sloupec, ve kterém se mění obsah Drupalu

{syntaxhighlighter brush: php}

- Titulek stránky

- zobrazuje záložky v administraci
- zobrazuje chybové správy a další informace.
- Nápověda administrace nebo pro konkrétní modul
obsah HTML generován Drupalem
-zobrazuje RSS zdroj
{/syntaxhighlighter}

Další prvky šablony

Vyhledávání 

<?php if ($search_box): ?><div class="název třídy"><?php print $search_box ?></div><?php endif; ?>

Drobečková navigace

<?php print $breadcrumb; ?>

RSS zdroj

<?php print $feed_icons; ?>

node.tpl.php

Ovlivňuje zobrazení článků. Většinou je ve všech šablonách stejné.

{syntaxhighlighter brush: php}
// $Id: node.tpl.php,v 1.5 2007/10/11 09:51:29 goba Exp $
 ?>






{/syntaxhighlighter}

comment.tpl.php

Ovlivňuje zobrazení komentářů. Pomocí tohoto způsobu se vám budou zobrazovat avatary uživatelů u komentáře. Po zapnutí funkce v šabloně.

{syntaxhighlighter brush: php}
// $Id: comment.tpl.php,v 1.7 2008/01/04 19:24:23 goba Exp $
 ?>


print $picture;
} ?>


-

{/syntaxhighlighter}

Závěrem

Doufám že vám bude tento rychlý přehled při tvorbě šablon nějak užitečný. 

Rovněž bych vám chtěl doporučit knížku od Jan Polzera, Drupal podrobný průvodce tvorbou a správou webů.

Redakční poznámka: Miroslav Špaňko je jeden z vás, čtenářů Maxiorla. Výše uvedené poznámky nejsou kompletní, postupem času zjistíte, že řadu věcí je možné řešit i jinak - jednodušeji nebo složitěji. Tak či tak autorovi článku děkuji a myslím si, že pro úplné začátečníky, kteří chtějí v Drupalu vytvořit šablony, by tento článek mohl být inspirací. Článek je uveden bez obsahových úprav.

Máte-li nějaké doplnění, nebojte se jej napsat do komentářů.

Jan Polzer

Tagy: 

Reklama

Komentáře

Děkuji za další kvalitní článek, který rozhodně hodně pomohl nejenom mě :)

Přidat komentář