Сышышь ты, выходи сюда,
поговорим!

Сайты 74 - Создание шаблона для Joomla 3.0 (часть 3)

Опубликовано: 16.06.2017

видео Сайты 74 - Создание шаблона для Joomla 3.0 (часть 3)

УРОК №1 Создание шаблон для CMS Joomla 3.2
Опубликовано 16 Октябрь 2012

Продолжение статьи о создании шаблона для Joomla 3.0. В предыдущих статьях мы создали простую заготовку шаблона с несколькими позициями, посмотрели как управлять их стилями. Чтобы использовать Joomla по максимуму нужно разобраться с Bootstrap! Этот CSS фреймворк (если его так можно назвать) сильно облегчает жизнь разработчику.



Шаг 5. Создание меню на основе BootStrap

Так получилось что по умолчанию модуль, который выводит верстку меню в шаблон не адаптирован под BootStrap. Этим и займемся! В папке html в нашем шаблоне можно переопределять стили модулей. Для того чтобы переопределить стиль меню нужно создать в папке html папку mod_menu и уже в ней два файла см. рисунок:


74.Знакомство с AlphaUserPoints | Joomla

Вот код файла default.php изменения не очень большие добавился класс "nav" и "dropdown-menu".

<?php defined('_JEXEC') or die; // Note. It is important to remove spaces between elements. ?> <?php // The menu class is deprecated. Use nav instead. ?> <ul class="nav menu <?php echo $class_sfx;?>"<?php $tag = ''; if ($params->get('tag_id') != null) { $tag = $params->get('tag_id').''; echo ' id="'.$tag.'"'; } ?>> <?php foreach ($list as $i => &$item) : $class = 'item-'.$item->id; if ($item->id == $active_id) { $class .= ' current'; } if (in_array($item->id, $path)) { $class .= ' active'; } elseif ($item->type == 'alias') { $aliasToId = $item->params->get('aliasoptions'); if (count($path) > 0 && $aliasToId == $path[count($path) - 1]) { $class .= ' active'; } elseif (in_array($aliasToId, $path)) { $class .= ' alias-parent-active'; } } if ($item->deeper) { $class .= ' deeper dropdown'; } if ($item->parent) { $class .= ' parent'; } if (!empty($class)) { $class = ' class="'.trim($class) .'"'; } echo '<li'.$class.'>'; // Render the menu item. switch ($item->type) : case 'separator': case 'url': case 'component': require JModuleHelper::getLayoutPath('mod_menu', 'default_'.$item->type); break; default: require JModuleHelper::getLayoutPath('mod_menu', 'default_url'); break; endswitch; // The next item is deeper. if ($item->deeper) { echo '<ul class="dropdown-menu">'; } // The next item is shallower. elseif ($item->shallower) { echo '</li>'; echo str_repeat('</ul></li>', $item->level_diff); } // The next item is on the same level. else { echo '</li>'; } endforeach; ?></ul>

И следующий файл default_component.php это вывод ссылок меню там тоже не очень большие изменения. Листинг нужно просто скопировать и вставить на свое место.


Презентация основного курса по CMS Joomla 3.8

rss