imponeer / smarty-foreachq
Rewritten Smarty foreach variant that was invented for use in xoops, but nowadays is used in some other PHP based CMS'es
Installs: 19 643
Dependents: 1
Suggesters: 1
Security: 0
Stars: 0
Watchers: 3
Forks: 0
Open Issues: 0
Requires
- php: >=7.1
- imponeer/smarty-extensions-contracts: ^1.0 || ^2.0
README
Smarty ForeachQ
Rewritten (due that original use GPLv2+ license) Smarty foreach variant that was invented for use in XOOPS, but nowadays used in some other PHP based CMS'es (like ImpressCMS!).
See, original version of this smarty plugin in Xoops to see more accurate description why this plugin exists.
Installation
To install and use this package, we recommend to use Composer:
composer require imponeer/smarty-foreachq
Otherwise, you need to include manually files from src/
directory.
Registering in Smarty
If you want to use these extensions from this package in your project you need register them with registerPlugin
function from Smarty. For example:
$smarty = new \Smarty(); $foreachqOpenPlugin = new \Imponeer\Smarty\Extensions\ForeachQ\ForeachQOpenTagCompiler(); $foreachqClosePlugin = new \Imponeer\Smarty\Extensions\ForeachQ\ForeachQCloseTagCompiler(); $smarty->registerPlugin('compiler', $foreachqOpenPlugin->getName(), [$foreachqOpenPlugin, 'execute']); $smarty->registerPlugin('compiler', $foreachqClosePlugin->getName(), [$foreachqClosePlugin, 'execute']);
Using from templates
Example how to use it:
{foreachq from=$data item=el} {$el} {/foreachq}
How to contribute?
If you want to add some functionality or fix bugs, you can fork, change and create pull request. If you not sure how this works, try interactive GitHub tutorial.
If you found any bug or have some questions, use issues tab and write there your questions.