/[drupal]/contributions/theme-engines/smarty/README.txt
ViewVC logotype

Contents of /contributions/theme-engines/smarty/README.txt

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph


Revision 1.7 - (show annotations) (download)
Fri Oct 19 17:44:34 2007 UTC (2 years, 1 month ago) by djnz
Branch: MAIN
CVS Tags: DRUPAL-6--2-0, HEAD
Changes since 1.6: +113 -15 lines
File MIME type: text/plain
(previous commit - remove files deprecated in v6.x)
Refactoring to work with Drupal 6.x theme/templating system
1 $Id: phptemplate.engine,v 1.69 2007/10/02 16:19:23 dries Exp $
2
3 *** IMPORTANT NOTE - DRUPAL v6 BETA ***
4 If you are using this with Drupal v.6 Beta 2 or older you must apply the following patch in
5 includes/theme.inc function drupal_find_theme_templates (see http://drupal.org/node/184876):
6
7 REPLACE
8 $template = substr($template, 0, strpos($template, '.'));
9 WITH
10 if (strpos($template, '.') !== FALSE) {
11 $template = substr($template, 0, strpos($template, '.'));
12 }
13 END
14
15 This Theme Engine for Drupal allows you to use Smarty templates in a fully integrated and
16 seamless fashion. It expects a Smarty installation in the ./libs directory - you must obtain
17 this and extract it here yourself. It is not included by default as a policy of the Drupal.org
18 contributions repository.
19
20 Since Drupal 5, and even more so for Drupal 6, this template engine has become technically much
21 simpler because of the improvements in Drupal's own themeing/templating system.
22
23 The 'default' theme for this engine is 'box_grey_smarty', but this is not yet updated for Drupal 6.
24
25 Alternate downloads: http://download.berlios.de/drupal-smarty/
26 - There is no package for v5 or v6 yet at berlios.de
27 - Find the appropriate download here and skip steps two and three.
28 - These links include the Smarty Template Engine.
29
30 Installation:
31 1. Extract tarball in (drupal_base)/sites/all/themes/engines/
32 2. Extract Smarty Template Engine tarball from http://smarty.php.net/download.php
33 to a temporary location.
34 3. Copy the 'libs' subdirectory from the temporary location to
35 (drupal_base)/sites/all/themes/engines/smarty/libs
36 4. Check that Smarty.class.php is located at
37 (drupal_base)/themes/engines/smarty/libs/Smarty.class.php
38 5. Ensure (drupal_base)/themes/engines/smarty/templates_c directory is readable and writable by
39 the web server process (you might have to give it permission 777).
40
41 Notes:
42 - You can put plugins in the (drupal_base)/themes/engines/smarty/plugins directory. If you
43 download the full package from http://download.berlios.de/drupal-smarty/ this directory
44 will already include the following useful plugins:
45 - Smarty plugin assign_adv from http://smarty.incutio.com/?page=AdvancedAssignPlugin
46 - There might be a problem with clashes with functions called smarty_foo (Drupal might
47 discover them as potential theme_foo functions) so try and avoid this.
48 - The way Smarty plugins/'wrapper' functions work has changed. Create a function
49 mytheme__register_smarty_functions in your theme's template.php which returns an array
50 like the array $plugins in function &_smarty_get_object
51 - smartytemplate.php is no longer used. Put a template.php file in your theme instead
52
53 Help/Problems:
54 For problems or help:
55 First search drupal.org for problems and look through drupal.org forums before
56 contacting through email.
57
58 Author email: djnz at
59 travis dot cline at gmail dot com
60 Original author email: lobo at yahoo dot com
61
62 Please include 'drupal smarty engine question' or something of the sort in the subject.
63
64 Patches:
65 Please feel free to email any patches or improvements.
66
67 Contributors:
68 lobo
69 nsanity
70 tacker
71 Goba
72 tclineks
73 djnz
74
75 License:
76 Distributed under GPL - see LICENSE.txt
77
78 // TODO theme building documentation
79 // - note changes for Drupal 6
80
81
82 Template variables available
83 ----------------------------
84 $layout - none, left, right or both
85 $id - count for the number of times the hook has been called
86 $zebra - odd/even zebra count for the number of times the hook has been called
87
88 $directory - path to the current theme
89 $is_front - front page flag
90 $logged_in - TRUE if not anonymous
91 $is_admin = TRUE if admin user
92 $head_title - title for <title> tag
93 $base_pat - base url of site
94 $breadcrumb - themed breadcrumbs
95 $feed_icons
96 $footer_message - from site information
97 $head - other stuff for <head>
98 $language - language object
99 $help
100 $logo
101 $messages
102 $primary_links - array of primary links
103 $secondary_links - array of secondary links
104 $search_box - themed search box
105 $site_name
106 $mission
107 $site_slogan
108 $help
109 $logo
110 $messages
111
112 $css - ? css ) Not sure what the difference
113 $styles - css files ) is here?
114 $scripts - javascript to load in <head>
115 $tabs - themed tasks
116 $title - page title (for html title tag)
117 $closure - theme('closure');
118
119 $body_classes - for insertion in <body$body_classes>
120
121 $template_files - an array of potential template files - not much use to a template?
122
123 For node.tpl
124 $node - the raw node object
125 $teaser - TRUE if the content is a teaser (?? is this right?)
126 $content - the $node->teaser or $node->body as appropriate
127 $date - formatted creation date
128 $links - themed links
129 $name - themed user name of creator
130 $node_url - the url to display the node
131 $taxonomy - taxonomy links
132 $terms - themed taxonomy links
133 $title - the node title (plain text, so not sure how &,',? etc. are treated)
134 $submitted - themed submission user/time
135 $picture - themed avatar
136
137 $... - an explosion of the $node[...] array - lets hope there are no clashes!
138
139 For block.tpl
140 $block_zebra - 'odd' or 'even' for instances of a block in a region
141 $block_id - counter for block in a region
142 $block - the block object
143
144 Note that the smarty template engine no longer sets the following additional variables:
145 $user - use {$smarty.globals.user} if you must, or {
146 $path_to_theme - this is now replaced by {$directory} which is set by
147 Drupal core
148 $base_path - but this can still be used as it is now set by Drupal core

  ViewVC Help
Powered by ViewVC 1.1.2