User Tools

Site Tools


en:public:developer:template_system:start

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

en:public:developer:template_system:start [2012/11/20 11:37]
admin
en:public:developer:template_system:start [2012/11/20 11:38] (current)
admin
Line 84: Line 84:
 is even more verbose and fragile than PHP code! It is perfect for computers, but horrible for humans.  is even more verbose and fragile than PHP code! It is perfect for computers, but horrible for humans. 
 ArKadia is about being easy to read, understand and maintain.  ArKadia is about being easy to read, understand and maintain. 
- 
- 
- 
- 
- 
-===== Templates ===== 
- 
-Template is simply a text file. It can generate any text-based format (HTML, XML, CSV, etc.). 
-A template contains variables, which get replaced with values when the template is evaluated,  
-and tags, which control the logic of the template. Below is a minimal template that illustrates a  
-few basics. Each element will be explained later in this document.: 
- 
-<code html> 
-<#doctype> 
-<html> 
-  <head> 
-    <#meta_title> 
-    <#meta_description> 
-  </head> 
-  <body> 
-    <#frame name="topframe"> 
-  </body> 
-</html> 
-</code> 
- 
-Why use a text-based template instead of an XML-based one (like Zope's TAL)? We wanted ArKadia's template  
-language to be usable for more than just XML/HTML templates. We use it for emails, JavaScript and CSV.  
-You can use the template language for any text-based format. 
- 
-===== Variables ===== 
- 
-Variables look like this: <#variable>. When the template engine encounters a variable, it  
-evaluates that variable and replaces it with the result. Variable names consist of any  
-combination of alphanumeric characters and the underscore ("_"). The dot (".") also appears  
-in variable sections, although that has a special meaning, as indicated below. Importantly,  
-you cannot have spaces or punctuation characters in variable names. 
-  
-Use a dot (.) to access attributes of a variable. <#section.title> will be replaced with the  
-title attribute of the section object. If you use a variable that doesn't exist, the template  
-system will insert '' (the empty string) by default. 
-  
-===== Filters ===== 
- 
-You can modify variables for display by using filters. Filters look like this: <#name lowercase="1">  
-This displays the value of the <#name> variable after being filtered through the lower filter,  
-which converts text to lowercase. To give you a taste of what's available, here are some of the more  
-commonly used template filters: 
- 
-=== default === 
- 
-If a variable is false or empty, use given default. Otherwise, use the value of the variable 
-For example: 
-<code html> 
-<#value default="nothing"> 
-</code> 
- 
-=== lowercase === 
- 
-=== uppercase ===  
- 
-=== xmlencode ===  
- 
-=== htmlencode ===  
- 
-=== httpencode ===  
- 
-=== JavascriptEncode ===  
- 
-=== rtfencode ===  
- 
en/public/developer/template_system/start.1353397069.txt.gz ยท Last modified: 2012/11/20 11:37 by admin