Добрый день, Гость! Представляем Вам наши форумы. Вы можете зарегистрироваться чтобы писать на форумах или зайдите под своим именем, если Вы уже регистрировались.
   
   


Форум
 SX CMS / Плагины и модификации
         Выбор типа навигации

Похожие темы

Выбор типа навигации


События Воскресенье, 15.01.2017, 22:30

lissnov

Группа: Пользователь
Ранг: Новичок
Cообщений: 74
Регистрация: 15.08.2014
Здравствуйте ув.форумчане.Всем хорош статус,но мне нехватало выбора типа навигации (Вертикальное выпадающее меню,"Горизонтальное выпадающее меню").поетому попытался доработать.Теперь по порядку
1.В базе данных в таблицу sx_navi_cat добавляем поле n_type ,которое будет отвечать за тип навигации
ALTER TABLE `sx_navi_cat` ADD `n_type` smallint(2) NOT NULL

2.В class.AdminNavi.php в функции public function showMenu ДОБАВЛЯЕМ 'n_type' => intval(Arr::getPost('n_type'))ГДЕ УКАЗАНО//ЗДЕСЬ
public function showMenu() {


'n_type' => intval(Arr::getPost('n_type')), //ЗДЕСЬ
'Aktiv' => Arr::getPost('Aktiv'));
$this->_db->insert_query('navi_cat', $insert_array);
$this->__object('Redir')->redirect('index.php?do=navigation&sub=edit&id=' . $this->_db->insert_id());
}


'n_type' => intval(Arr::getPost('n_type')), //ЗДЕСЬ
'Aktiv' => $_POST['Aktiv'][$nid],
);
$this->_db->update_query('navi_cat', $array, "Id = '" . intval($nid) . "'");

}

3.В админ шаблоне navi_categs.tpl добавляем

<tr>
<td width="150" class="row_left">{#type_m_n#}</td>
<td class="row_right">
<select class="input" name="n_type">
<option value="0">{#akkord#}</option>
<option value="1">{#vert_m_n#}</option>
<option value="2">{#goriz_m_n#}</option>
</select>
</td>
</tr>

4.В ЯЗЫКОВЫХ ФАЙЛАХ АДМАНКИ admin.txt ДОБАВЛЯЕМ

type_m_n = "Тип навигации"
akkord = "Аккордеон"
vert_m_n = "Вертикальное выпадающее меню"
goriz_m_n = "Горизонтальное выпадающее меню"


5.В class.Navigation.php public function panel в функции public function panel добавляем в запросе n_type AS n_type, и $this->_view->assign('n_type', $row_title->n_type);

public function panel($params = array()) {

n_type AS n_type, //ЗДЕСЬ
Name_{$this->Lc} AS name,
Name_1 AS defname,

$this->_view->assign('n_type', $row_title->n_type); //ЗДЕСЬ
$this->_view->assign('navi_title', $row_title->name);
$this->_view->assign('SiteNavigation', $output);
$naviout = $this->_view->fetch(THEME . '/navi/' . $params['tpl']);
$this->_view->assign('navi', $naviout);
return $naviout;
}
return NULL;
}

6.В шаблоне навигации в теме (navigation.tpl) изменить на тот что в архиве


7.Создаем css файл navi2.css и закидываем его к другим файлам стилей в шаблоне
Смотрите в прилагаемом в архиве

9.В main.css ЗАКОМЕНТИРОВАЛ СТРОКУ 130
#contents_left {
padding: 0px;
padding-top: 14px;
float: left;
width: 200px;
/*overflow: hidden;*/
}
И УДАЛИЛ СТРОКИ
#contents_left li {
display: inline;
margin: 0px;
padding: 0px;
list-style: none inside;
}
#contents_left ul {
display: inline;
margin: 0px;
padding: 0px;
list-style: none inside;
}
БОЛЕЕ ПОДРОБНАЯ ИНСТРУКЦИЯ В АРХИВЕ
ВРОДЕ НИЧЕГО НЕ УПУСТИЛ,ПРОШУ АДМИНА ПРОСМОТРЕТЬ,И ПО ВОЗМОЖНОСТИ ДОБАВИТЬ ЕТО,ИЛИ НЕЧТО ПОХОЖЕЕ,НО УЛУЧШЕННОЕ В ДИСТРИБЮТИВ,ЧТОБЫ НЕ ДОБАВЛЯТЬ ПОСЛЕ КАЖДОГО ОБНОВЛЕНИЯ
Вложения
новая-папка.zip   (4 x загружено | 60,2 Кб)   


Пользователь офлайн
События Воскресенье, 15.01.2017, 23:13

SX

Группа: Администратор
Cообщений: 3016
Регистрация: 23.10.2009
Вот поэтому первая версия и прекратила развиваться. Попытка все впихнуть в систему. Нужно было просто реализовать это в виде виджета, и не надо было бы постоянно править


Пользователь офлайн


Похожие темы  |   Предыдущая тема  |   Следующая тема

Быстрый переход:  
 

 Сейчас на сайте

Пользователей: 0, Гостей: 6

Поисковые боты: 179
Bot(166), oBot(6), Yandex(2), BingBot(4), Crawler
 Статистика форума

  Темы Сообщения Пользователи
За сутки:
За неделю:
За месяц:
Всего:
Мы приветствуем нового участника: dota812651
 Дни рождения

dragon (41)
Copyright © 2009 - 2024 SX All rights reserved | Powered by SX CMS 1.06 UTF | Контакты