104 lines
3 KiB
Text
104 lines
3 KiB
Text
|
This is a simple guide to get Smarty setup and running quickly. The online
|
||
|
documentation includes a very thorough explanation of a Smarty installation.
|
||
|
This guide is meant to be a quick and painless way of getting Smarty working,
|
||
|
and nothing more. The guide assumes you are familiar with the UNIX system
|
||
|
environment. Windows users will need to make adjustments where necessary.
|
||
|
|
||
|
INSTALL SMARTY LIBRARY FILES
|
||
|
|
||
|
Copy the Smarty library files to your system. In our example, we place them in
|
||
|
/usr/local/lib/php/Smarty/
|
||
|
|
||
|
$> cd YOUR_DOWNLOAD_DIRECTORY
|
||
|
$> gtar -ztvf Smarty-2.6.7.tar.gz
|
||
|
$> mkdir /usr/local/lib/php/Smarty
|
||
|
$> cp -r Smarty-2.6.7/libs/* /usr/local/lib/php/Smarty
|
||
|
|
||
|
You should now have the following file structure:
|
||
|
|
||
|
/usr/local/lib/php/Smarty/
|
||
|
Config_File.class.php
|
||
|
debug.tpl
|
||
|
internals/
|
||
|
plugins/
|
||
|
Smarty.class.php
|
||
|
Smarty_Compiler.class.php
|
||
|
|
||
|
|
||
|
SETUP SMARTY DIRECTORIES
|
||
|
|
||
|
You will need four directories setup for Smarty to work. These files are for
|
||
|
templates, compiled templates, cached templates and config files. You may or
|
||
|
may not use caching or config files, but it is a good idea to set them up
|
||
|
anyways. It is also recommended to place them outside of the web server
|
||
|
document root. The web server PHP user will need write access to the cache and
|
||
|
compile directories as well.
|
||
|
|
||
|
In our example, the document root is /web/www.domain.com/docs and the
|
||
|
web server username is "nobody". We will keep our Smarty files under
|
||
|
/web/www.domain.com/smarty
|
||
|
|
||
|
$> cd /web/www.domain.com
|
||
|
$> mkdir smarty
|
||
|
$> mkdir smarty/templates
|
||
|
$> mkdir smarty/templates_c
|
||
|
$> mkdir smarty/cache
|
||
|
$> mkdir smarty/configs
|
||
|
$> chown nobody:nobody smarty/templates_c
|
||
|
$> chown nobody:nobody smarty/cache
|
||
|
$> chmod 775 smarty/templates_c
|
||
|
$> chmod 775 smarty/cache
|
||
|
|
||
|
|
||
|
SETUP SMARTY PHP SCRIPTS
|
||
|
|
||
|
Now we setup our application in the document root:
|
||
|
|
||
|
$> cd /web/www.domain.com/docs
|
||
|
$> mkdir myapp
|
||
|
$> cd myapp
|
||
|
$> vi index.php
|
||
|
|
||
|
Edit the index.php file to look like the following:
|
||
|
|
||
|
<?php
|
||
|
|
||
|
// put full path to Smarty.class.php
|
||
|
require('/usr/local/lib/php/Smarty/Smarty.class.php');
|
||
|
$smarty = new Smarty();
|
||
|
|
||
|
$smarty->template_dir = '/web/www.domain.com/smarty/templates';
|
||
|
$smarty->compile_dir = '/web/www.domain.com/smarty/templates_c';
|
||
|
$smarty->cache_dir = '/web/www.domain.com/smarty/cache';
|
||
|
$smarty->config_dir = '/web/www.domain.com/smarty/configs';
|
||
|
|
||
|
$smarty->assign('name', 'Ned');
|
||
|
$smarty->display('index.tpl');
|
||
|
|
||
|
?>
|
||
|
|
||
|
|
||
|
SETUP SMARTY TEMPLATE
|
||
|
|
||
|
$> vi /web/www.domain.com/smarty/templates/index.tpl
|
||
|
|
||
|
Edit the index.tpl file with the following:
|
||
|
|
||
|
<html>
|
||
|
<head>
|
||
|
<title>Smarty</title>
|
||
|
</head>
|
||
|
<body>
|
||
|
Hello, {$name}!
|
||
|
</body>
|
||
|
</html>
|
||
|
|
||
|
|
||
|
|
||
|
Now go to your new application through the web browser,
|
||
|
http://www.domain.com/myapp/index.php in our example. You should see the text
|
||
|
"Hello Ned!" in your browser.
|
||
|
|
||
|
Once you get this far, you can continue on to the Smarty Crash Course to learn
|
||
|
a few more simple things, or on to the documentation to learn it all.
|