Include the HSTemplate class libraryrequire_once('HSTemplate/HSTemplate.class.php');Instantiate the HSTemplate objectFor options template_path and cache_path use full path to directory /* HSTemplate initialization */
$options = array(
'template_path' => 'templates',
'cache_path' => 'cache',
'debug' => false,
);
$HSTemplate =& new HSTemplate($options);Instantiate the HSTemplateDisplay object// index page
$DisplayIndex = & $HSTemplate->getDisplay('index');Add TemplatesDirectory structure: \- templates (directory set as `template_path`)
\- index (by display name)
|- header.html
|- index.html
|- footer.htmlExample: // add templates
$DisplayIndex->addTemplate('header', 'header.html');
$DisplayIndex->addTemplate('index' , 'index.html' );
$DisplayIndex->addTemplate('footer', 'footer.html');Assign VariablesYou can assign variable to 'Global section' or to 'Display section' or to 'Template section', priority: - Global section
- Display section
- Template section
Example: // assign template variables
$DisplayIndex->assign('template', 'DISPLAY', 'index');
// assign display variables
$DisplayIndex->assign('display', 'DISPLAY');
// assign global variables (for all display)
$HSTemplate->assignGlobal('global', 'GLOBAL');Templates<h2>Test 1</h2>
Global Variable: <?=$global?><br/>
Display Variable: <?=$display?><br/>
Template Variable: <?=$template?><br/> Use CacheCall method setCache for enable cache for curent Display - first argument is unique ID for cache (you can use $_SERVER['REQUEST_URI'])
- second - it's cache lifetime - default value 3600 seconds (1hour)
$DisplayContent->setCache('test1', 3600);
if (!$DisplayContent->isCached()) {
$DisplayContent->addTemplate('test1', 'test1.html');
$DisplayContent->assign('time', date('H:i:s'), 'test1');
}Display// display all non separated 'display'
$HSTemplate->display();
|
how to handle arrays ?