Extension:SmartyAdaptor
|
SmartyAdaptor Release status: beta |
|
|---|---|
| Description | Provides integration with Smarty Template Engine by providing a hook to other extensions. |
| Author(s) | Jean-Lou Dupont |
| Last version | 2.1.0 |
| MediaWiki | 1.11, 1.12 |
| License | No license specified |
| Download | SVN See SVN ($Id: SmartyAdaptor.doc.wikitext 989 2008-04-07 13:35:38Z jeanlou.dupont $) |
|
Check usage (experimental) |
|
Contents |
[edit] Purpose
Provides integration with Smarty Template Engine by providing a hook to other extensions.
[edit] Features
- Hook based for easy integration
- hook smarty: used when template resource is located through the filesystem
- hook smarty_direct: used to pass template source directly
- Debug information available on Special:Version
[edit] Configuration Notes
Two directories must be accessible and writable by PHP / WEB Server:
- $IP/smarty/cache
- $IP/smarty/compile
Where $IP is the global PHP variable denoting MediaWiki's installation path. E.g. /var/www/html/wiki
On Linux, one must use, as example,
chown apache cache
to make the directory writable for the owner apache.
[edit] Hook smarty
Other extensions use Extension:SmartyAdaptor for their templating needs through the hook smarty.
[edit] Calling Method
wfRunHooks( 'smarty', array( $name, $tpl_path, $params, &$result ) );
- $name: name of template; only useful when other extensions want to insert themselves in the chain
- $tpl_path: absolute path to the template file
- $params: array of parameters. E.g. array( 'var1' => 'value1' ... )
- $result: result
[edit] Hook smarty_direct
Other extensions use Extension:SmartyAdaptor for their templating needs through the hook smarty_direct.
[edit] Calling Method
wfRunHooks( 'smarty_direct', array( $name, $tpl_source, $params, &$result ) );
- $name: name of template; only useful when other extensions want to insert themselves in the chain
- $tpl_source: template source
- $params: array of parameters. E.g. array( 'var1' => 'value1' ... )
- $result: result
[edit] Dependencies
- StubManager extension version >= 1.2.0
- Smarty: available at official site or PEAR-Smarty
[edit] SmartyAdaptor-2.1.0 with Smarty > 2.4.2
Adaptor extension won't work unless you install Smarty into
SmartyAdaptor-2.1.0/Smarty
name smarty installation directory just "Smarty" - i.e - without version suffix.
Also smarty has moved location of main class (and maybe other things) to Smarty/libs directory so SmartyAdaptor-2.1.0 won't work "out of the box"
[edit] Installation
See the Mediawiki Extension table entry "download" above.[1]
[edit] LocalSettings.php
Extension:ExtensionManager: See footnote[2]
- Add the following to LocalSettings.php, if the extension was downloaded from Jean-Lou Dupont's MediaWiki SVN directory (link in the download entry of the table above)[2]:
require_once( "$IP/extensions/SmartyAdaptor/SmartyAdaptor.php" );
- Since this Extensions is depending on StubManager, add the line after the StubManager include, or else your Wiki won't work.
[edit] PEARPEAR is a repository of PHP software code.
require 'MediaWiki/SmartyAdaptor/SmartyAdaptor.php';
[edit] Upgrades through PEARSometimes, it is necessary to clear PEAR's cache in order to perform upgrades.
or use the force method:
[edit] PEAR Web FrontendFor easier remote package management, PEAR Frontend WEB can be installed. Installation notes can be found here. An example of the WEB frontend is available here. |
[edit] RSS feed
To keep up-to-date with this channel, use the following RSS feed__
.
[edit] Notes
[edit] Other Extensions From the same author
Consult User Jldupont's page.
- ↑ The most recent release is always available through the extension's PEAR and SVN repositories. This page is not necessarily up-to-date.
- ↑ 2.0 2.1 2.2 Extension:ExtensionManager does not require any modification to LocalSettings.php because ExtensionManager includes the extension.
Note that if PHP code caching is in place (e.g. APC, eAccelerator), then to successfully complete the installation a cache flush might be needed. - ↑ Modifications to
LocalSettings.phpis only necessary if not using Extension:ExtensionManager
[edit] See Also
[edit] History
| Release | Notes |
|---|---|
| 2.0.0 | Fully redesigned version |
| 2.1.0 | Added hook smarty_direct for passing the template source directly |
