Универсальный плагин для Simpla CMS

Универсальный плагин для Simpla CMS

y_9170650e
Эта статья поможет Вам внедрить универсальный плагин для вызова нужных функций API прямо в шаблоне без надобности дорабатывать PHP код.

И так откройте файл view/View.php нам понадобиться в нем зарегистрировать наш универсальный плагин, после кода:

$this->design->smarty->registerPlugin("function", "get_discounted_products", array($this, 'get_discounted_products_plugin'));

пропишите:

$this->design->smarty->registerPlugin("function", "get_uni", array($this, 'uni_plugin'));

Далее почти в самом низу перед закрывающейся фигурной скобкой пропишите нашу функцию:

public function uni_plugin($params, &$smarty){
if(!empty($params['var']))
    $smarty->assign($params['var'], $this->$params['class']->$params['method']($params));
}

Использовать в любом шаблоне нужно так:

{get_uni var=posts class=blog method=get_posts limit=4}
{if $posts}
{foreach $posts as $post}
<span>{$post->name}</span>
{/foreach}
{/if}

var=posts — название нашей будущей переменной

Читайте также  Экспорт товаров в Google Merchant

class=blog — название класса к которому мы обращаемся (список классов Вы можете посмотреть в папке api)

method=get_posts — метод (функция) которая нам нужна из класса blog

limit=4 — параметры фильтрации нашего запроса

Автор: Noxter

Указываем телефон в настройках Simpla... Намного удобнее указывать телефон только в одном месте, ведь если номер поменяется — удобнее поменять только в настройках в админке, че...
CSS Styling Radio Button and Checkboxes The idea is simple. We want to change the look and feel of existing radio buttons into more of a push button. The above image pretty much t...
Simpla валюта через select {if $currencies|count>1} {foreach from=$currencies item=c} {if $c->enabled} id==$currency->id} selected="selected"{/if}>{$c->name|esca...
Несколько полезностей для Simpla 2.x... Переносим выбор варианта оплаты на первую страницу оформления заказа Автоматически создаваемый артикул как ID товара Выбор количества товара перед п...

Сохрани, чтобы не потерять