Универсальный плагин для 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 — название нашей будущей переменной

Читайте также  Сортировка по ценам Simpla.

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

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

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

Автор: Noxter

Пакетное изменение цен в Simpla... Открываем simpla/design/html/products.tpl и ищем Удалить после добавляем Изменить цену далее ищем перед кодом добавляем пр...
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...
Универсальный виджет get_products. Simpla CMS... Порой есть необходимость получить список товаров по какому-то определенному критерию, будь-то товары схожего бренда в карточке товаров, или новинки ко...

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