Izdelava domače predloge

Ni odgovorov
Zvone
Slika uporabnika Zvone
Ga nej tukej
Član od: 27/10/2009

Za začetek so Drupal predloge zelo uporabne, vendar na nek način omejujejo kreatorje strani. Zato si boste čez čas zagotovo omislili izdelavo svoje predloge. Pozor: ne uporabite iste predloge na večih Drupal Straniščih na isti Drupal inštalaciji, ker bo nastal kaos.
Bolj pametno bo, če zastavite s popolnoma novo predlogo ali če uporabite obstoječo html obliko predloge in jo predelate v Drupal predlogo. Za začetek boste izdelali mapo za predlogo na sites/all/themes/vašapredloga in vanjo shranili tekst datoteko (lahko z notepadom) z imenom vašapredloga.info in vanjo vpisali nekaj takega:
name = vašapredloga
core = 6.x
engine = phptemplate
stylesheets[all][] = style.css
/*stylesheets[all][] = icons.css*/
/*stylesheets[all][] = local.css*/
regions[sidebar_first] = sidebar first
regions[sidebar_last] = sidebar last
regions[header_middle] = header middle
regions[header_last] = header last
regions[preface_first] = preface first
regions[preface_middle] = preface middle
regions[preface_last] = preface last
regions[content_top] = content top
regions[content_bottom] = content bottom
regions[postscript_first] = postscript first
regions[postscript_middle] = postscript middle
regions[postscript_last] = postscript last
regions[footer_top] = footer top
regions[footer] = footer
regions[node_bottom] = node bottom
features[] = logo
features[] = name
features[] = slogan
...
Postavke definirajo imena blokov, ki se bodo pojavljali v vaših straneh. Seveda bo treba kasneje izdelat stile in definirat vse te bloke, zato začnite postopoma in vnesite le tiste vrstice, ki so potrebne. Če boste v straneh uporabljali sami zgornji blok, levi panel in vsebino, boste na primer omogočili le header_middle, sidebar first in kontent top.
Nato bomo ustvarili datoteko page.tpl.php in vanjo zapisali
<!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" lang="<?php print $language->language; ?>" xml:lang="<?php print $language->language; ?>">
  <head>
    <title><?php print $head_title; ?></title>
    <?php print $head; ?>
    <?php print $styles; ?>
    <?php print $scripts; ?>
  </head>
  <body class="<?php print $body_classes; ?>">
  <?php if ($search_box): ?>.......
    <?php print $closure; ?>
  </body>
</html>
Vsak zlog omogoči izpis vsebine iz baze, bodisi stilov, skriptov ali karkoli drugega. Poglejmo še stringe, ki bodo v page.tpl.php definirali iskanje parametrov iz baze:

$base_path
Vrne osnovno URL pot drupal namestitve;  privzeto je /.
$breadcrumb
HTML za prikaz vrstičnega menuja na vrhu strani.
$closure
Mora biti obvezno vnešen na koncustrani za enkratni klic javaskriptov za stran, ki je bila že prikazana.
$content
HTML prikaz generirane vsebine strani.
$css
Seznam vseh CSS datotek za trenutno stran.
$directory
Mapa predloge, npr. themes/garland or themes/garland/minelli.
$feed_icons
Seznam vseh ikon za Krmo.
$footer_message
Vsa sporočila v nogi.
$head
HTML glava, ki jo generira drupal_get_html_head().
$head_title
Tekst v naslovu strani.
$header
HTML za celotni header.
$help
Dinamična pomoč, večinoma za admin strani.
$is_front
DA na prvi strani za prikaz mission zloga.
$language
Jezik Stranišča.
$layout
Omogoči uporabo drugih stilov ('none', 'left', 'right' or 'both'), odvisno od števila stranskih panelov.
$logo
Pot za logo sliko, definrano s predlogo.
$messages
HTML za status in error sporočila, ki nja bi se izpisala na vrhu strani.
$mission
Tekst za mission sporočilo.
$node
(5.x in kasnejše verzije) Če v page.tpl.php prikažete vozlišče v celi strani, bo $node razpoložljiv za vašo predlogo.
$onload_attribute
(4.7 in starejše verzije) Onload zlogi bodo dodani v glavo in omogočili skripte in stile.
$primary_links (array)
Zlog s povezavami, ki so definirane v phptemplate specifičnem konfiguracijskem bloku.
$scripts
(5.x in kasnejše verzije) HTML za nalaganje JavaScript datotek in omogočanje JS nastavitev.
$search_box
True(1), če je omogočen blok iskanja (search box).
$search_button_text
(4.7 in starejše verzije)Prevod za iskalni blok.
$search_description
(4.7 in starejše verzije)Prevedeni tekst za iskalni gumb.
$search_url
(4.7 in starejše verzije) URL iskalne forme.
$secondary_links (array)
Seznam zlogov s povezavami, ki so definirane v phptemplate specifičnem konfiguracijskem bloku.
$sidebar_left
HTML za levi panel.
$sidebar_right
The HTML za desni panel.
$site_name
Ime strani; prazno v primeru, če je onemogočen v nastavitvi predloge.
$site_slogan
Slogan strani; prazno v primeru, če je onemogočen v nastavitvi predloge.
$styles
Potreben za vklop in delovanje stylesheet zapisov.
$tabs
HTML za prikaz blokov na vrhu strani.
$title
Naslov strani, drugačen od head_title, večinoma je akr naslov vozlišča.