Головна » Блоги » InstantCMS - переваги та недоліки системи » Кожному модулю свій шаблон виводу

Кожному модулю свій шаблон виводу

+1
Голосів: 1
Опубліковано: 2013 / 05 / 09
Переглядів: 137
Вітаю!
Часто виникає необхідність клоновані модулі вивести так щоб вони істотно відрізнялися один від одного.
Дефолтних можливостей системи (css префікс, обгортка - module.tpl) не завжди достатньо.
Пропонований хак допоможе вирішити цю проблему.

Розглянемо на прикладі дефолтного модуля "Нові статті" (коди актуальні для версіїї 1.10.1):
Для початку додамо в файл admin\modules\mod_latest\backend.xml перед </params>:
Код PHP:
  1. <param type="string" name="tpl" title="Использовать шаблон" default="mod_latest.tpl" />
Далі, в файлі modules\mod_latest\module.php нижче рядка
Код PHP:
  1. if(!$content_list) { return false; }
вставимо:
Код PHP:
  1. $template = ($cfg['tpl'] ? $cfg['tpl'] : 'mod_latest.tpl');
рядок:
Код PHP:
  1. $smarty = $inCore->initSmarty('modules', 'mod_latest.tpl');
замінимо на:
Код PHP:
  1. $smarty = $inCore->initSmarty('modules', $template);
а рядок:
Код PHP:
  1. $smarty->display('mod_latest.tpl');
на:
Код PHP:
  1. $smarty->display($template);
Для подулів в яких не передбачена пагінція цих правок достатньо. Для модуля "Нові статті" потрібно дії, що стосуються файла modules\mod_latest\module.php потрібно повторити в файлі: modules\mod_latest\ajax\latest.php
Тепер потрібно зайти в налаштування модуля та зберегти налаштування.
Тепер ви зможете виводити клони модуля так як порахуєте за потрібне.
Приклад реалізаціїї для модуля "Популярні статті": дефолтний шаблон, а тут його клон (слайдер з великою картинкою)
Щасти вам!

Читайте також:

  • Модуль "Нові користувачі"
    Модуль "Нові користувачі"

    З Новим роком! Думаю багато хто вже помічав, що в дефолтному модулі "нові користувачі" відсутнє вирівнювання по горизонталі, тобто, аватари та логіни "стрибають" вверх-вниз. Спробував трішки підпра...

  • "Резиновий" шаблон для InstantCMS
    "Резиновий" шаблон для InstantCMS

    Вітаю! Запрошую всіх зацікавлених до тестування "резинового" шаблону для InstantCMS. Шаблон є варіантом дефолтного; передбачена можливість розміщення модулів в блоки, які закриваються та відкривают...

  • Приховуємо модулі для економії місця
    Приховуємо модулі для економії місця

    Привіт всім! Ось тут наш брат по зброї запитує як робляться модулі які за замовчуванням закриті, а їхній зміст відкривається при клацанні по назві. Думаю багатьом стане в нагоді така можливість. Вз...

  • Шаблон для instantcms 1.10.2
    Шаблон для instantcms 1.10.2

    Шаблон робився на http://trac.instantcms.ru/browser/branches/fuze. Замовник звалив, на жаль. Підійде для каталогу товарів, магазину ... Включено: керування виводом шаблонів, СЕО-розмітка, слайде...

Коментарі (0)

Немає коментарів. Ваш буде першим!