Тема: Выбери свою тему :)
Описание сниппета:
Добавляет возможность смены "Тем" на странице вашего сайта.
Как использовать?
Обязательно вставлять этот сниппет в каждую вашу "Тему", иначе перейдя в новую "Тему" кнопка выбора исчезнет.
Как установить?
В админке в разделе: "Сниппеты" создаем новый снипет.
После удачного добавления кода в сниппет, нужно будет вставить этот сниппет с помощью кода приведенного ниже в ваш шаблон, вы можете это сделать в Админке - Темы - Шаблоны - index
Имя сниппета:
choose-your-theme
Скриншот:
Автор кода: Awilum
Код сниппета:
<div> <?php function getSiteThemes() { $themes_folders = array(); // Get all themes folders $_themes_folders = Dir::scan(THEMES_SITE); // Create an array of valid themes folders foreach($_themes_folders as $folder) if (File::exists(THEMES_SITE . DS . $folder . DS . 'index.template.php')) $__themes_folders[] = $folder; foreach($__themes_folders as $theme) $themes[$theme] = $theme; return $themes; } // Save site theme if (Request::post('save_site_theme')) { if (Security::check(Request::post('csrf'))) { Option::update('theme_site_name', Request::post('themes')); // Cleanup minify if (count($files = File::scan(MINIFY, array('css', 'js', 'php'))) > 0) foreach ($files as $file) File::delete(MINIFY . DS . $file); Request::redirect('index.php'); } else { die('csrf detected!'); } } echo ( Form::open(). Form::hidden('csrf', Security::token()). Form::label('themes', __('Select theme', 'themes')). Form::select('themes', getSiteThemes(), Option::get('theme_site_name'), array('class' => 'span2')). Html::br(). Form::submit('save_site_theme', __('Save', 'themes'), array('class' => 'btn')). Form::close() ); ?> </div>
Код для вставки в шаблон:
<?php echo Snippet::get("choose-your-theme"); ?>
Код для вставки в контент:
{snippet get="choose-your-theme"}
Создание дизайнов любой сложности для Monstra cms