Категории

[FAQ] Часто задаваемые вопросы и ответы

Проблемы и решения

Ошибки и исправления

Общие вопросы

Расширения

Установка и обновление

Модули

Шаблоны

Локализация интерфейса

Коммерческие предложения

Учимся бизнесу

Бизнес книги

Поисковая оптимизация (SEO)

Магазины на ShopOS

Хостинг для ShopOS

Предложения и пожелания

Курилка

Помогите с jQuery plugin: Treeview

Подскажите, как правильно прикрутить jQuery plugin: Treeview? Что куда прописывать? Спасибо.


Ау!


какой шаблон?


шаблон на базе default


Если никто не выложит раньше, то постараюсь сегодня к вечеру выложить мануал по установке такого меню в шаблон.


Ок. Спасибо.


Подключаем все нужные библиотеки

<script type="text/javascript" src="themes/тема/javascript/jquery-1.4.2.min.js"></script>
<script type="text/javascript" src="themes/тема/javascript/jquery.treeview.js"></script>

ну и конечно файл стиля

.treeview, .treeview ul {
list-style: none;
}

.treeview ul {
margin-top: 4px;
}

.treeview .hitarea {
background: url(im/treeview-default.gif) -64px -25px no-repeat;
height: 16px;
width: 16px;
margin-left: -16px;
float: left;
}
/* fix for IE6 */
* html .hitarea {
display: inline;
float:none;
}
.treeview li {
margin: 0;
padding: 3px 0pt 4px 16px;
}
.treeview a {
font-size: 12px;
font-weight: bold;
padding: 2px 2px 0px 2px;
}
.treeview a.selected {
color: #426f00;
}
#treecontrol { margin: 1em 0; display: none; }
.treeview .hover,a#popuploginClose,.treeview .hitarea { cursor: pointer; }
.treeview li { background: url(im/treeview-default-line.gif) 0 0 no-repeat; }
.treeview li.collapsable, .treeview li.expandable { background-position: 0 -176px; }
.treeview .expandable-hitarea { background-position: -80px -3px; }
.treeview li.last { background-position: 0 -1766px }
.treeview li.lastCollapsable, .treeview li.lastExpandable { background-image: url(im/treeview-default.gif); }
.treeview li.lastCollapsable { background-position: 0 -111px }
.treeview li.lastExpandable { background-position: -32px -67px }
.treeview div.lastCollapsable-hitarea, .treeview div.lastExpandable-hitarea { background-position: 0; }


themes\default\source\inc\show_category.inc.php

меняем

        $Aktiv = false;
if ($this_category == $cid)
// Wenn Kategorie aktiv ist
$Aktiv = ' Current';
elseif ($in_path)
// Wenn Oberkategorie aktiv ist
$Aktiv = ' CurrentParent';

на
$Aktiv = false;
if ($this_category == $cid)
// Wenn Kategorie aktiv ist
$Aktiv = 'selected';
elseif ($in_path)
// Wenn Oberkategorie aktiv ist
$Aktiv = '';





строка '<li class="'.$MainStyle.$SubMenue.$Aktiv.'">'.

меняем на <li class=".$Aktiv.'">

и не забываем менять

$MaxLevel = 1;  на например $MaxLevel = 5;



файл
тема\source\boxes\categories.php

// NaviListe bekommt die ID "CatNavi"
$CatNaviStart = "\n<ul id=\"tree\">\n";



П.С.

Писал на скорую руку на роботе с утра когда кофе пил, так что могут быть погрешности, но вроде бы всьо так далал


Нужно учесть еще второе подключение jQuery на странице карточки товара.
Надо в файле header.php, вроде, удалить его из загрузки.


да ты прав чуть не забыл, но только это сейчас не в хидере а в \modules\product_info.php где fancybox подключаетса

тут Женя с jQuery не так делает как надо, надо бы его вынести в плагин отдельным подключением


Да ;D Я давно говорю, что JQ надо плагином грузить. Чтобы проблем не было. И подключать его самым верхним.
Практически всем своим клиентам делаю что-то на JQ, и постоянно надо править файлы и при обновлении и при установке, чтобы наладить JQ правильно.


Да надо пару примеров написать, как создать красивое меню! :)
И еще хотелос бы что бы в админку вывели настройку меню, или плагином сделать, как вертикальный так и горизантальный, если было бы так можно было бы освободить левую калонку!
Надо Жене написать это  ;D


M-martin, в любом случае надо будет делать переверстку меню, так как сделать универсально для всех шаблов не получиться. По этому каждый уже сам должен делать вывод какой хочет. А настраиваемое меню сделать не проблема.
Я сделал плагин с расширенной настройкой вывода категорий, но там не все гладко пока.


Подключаем все нужные библиотеки

<script type="text/javascript" src="themes/тема/javascript/jquery-1.4.2.min.js"></script>
<script type="text/javascript" src="themes/тема/javascript/jquery.treeview.js"></script>


Куда подключаем?


файл
тема\source\boxes\categories.php

Код:
// NaviListe bekommt die ID "CatNavi"
$CatNaviStart = "\n<ul id=\"tree\">\n";

Просто добавить в файл?


Нужно учесть еще второе подключение jQuery на странице карточки товара.
Надо в файле header.php, вроде, удалить его из загрузки.




Тоже не понятно.
А можно все по пунктам, что открываем, куда добавляем, ну буквально по шагам? Думаю я не один здесь такой тупой. Спасибо)


NeBox согласен с тобой! Но мне кажется на дефолте можно сделать, а кто будет верстать уже сам поправить!
Ну это мае мнение ;)


Спасибо за отклики. Так что тогда, ждем плагин? ;)



Спасибо за отклики. Так что тогда, ждем плагин? ;)

ну что у тебя так и не получилось?


Плагин пока не готов.

Так
<script type="text/javascript" src="<?php echo _HTTP_THEMES_C; ?>javascript/jquery-1.4.2.min.js"></script>
<script type="text/javascript" src="<?php echo _HTTP_THEMES_C; ?>javascript/jquery.treeview.js"></script>

подключать в themes/шаблон/javascript/general.js.php

Далее
тема\source\boxes\categories.php

Найти код
$CatNaviStart

и заменить строку на это
$CatNaviStart = "\n<ul id=\"tree\">\n";


ну и скрипты положить в папку javascript в шаблоне


Не работает :(


сайт в сети? ссылку?


С левым меню в боксе разделы (категории) более-менее понятно. А вот, если нужно, чтобы вывод категорий был в ввиде дерева и без перегрузки страницы при выводе в центре сайта, когда идет дальнейший выбор категорий и разделов. Полазила, посмотрела, поняла, что там отвечает за вывод категорий в module_content файл categorie.html в дефолтном шаблоне, в выбранном мной шаблоне, он называется categorie_listing.html какой к нему php относиться не нашла...... реально ли к этому файлу прикруть jQuery Treeview или еще рыть в php. Достоточно ли будет просто цикл вывода иначе устроить? Кто-нибудь работал с этим. Тема автозапчастей, структура меню с большой вложенностью, поэтому оптимально в боксе разделы замыкать открытие на втором уровне:) со второго уровня в центре уже делать деревце без перегрузки страницы на вот таком примере: Пример приаттачила.......:)
Заранее благодарна, за любой ответ:)


У Вас, видимо, очень много категорий, поэтому стандартные скрипты, даже если и удастся переделать,  наверняка будут тормозить. Надо что-то похожее на  http://rexill.ru/.  Но такое вряд ли без индивидуальной доработки сделаете.



А вот, если нужно, чтобы вывод категорий был в ввиде дерева и без перегрузки страницы при выводе в центре сайта, когда идет дальнейший выбор категорий и разделов.


Ну так treeview как раз и делает дерево.

categorie_listing.html - это вывод ПОДкатегорий в категории? Вы про это?




А вот, если нужно, чтобы вывод категорий был в ввиде дерева и без перегрузки страницы при выводе в центре сайта, когда идет дальнейший выбор категорий и разделов.


Ну так treeview как раз и делает дерево.

categorie_listing.html - это вывод ПОДкатегорий в категории? Вы про это?


Спасибо! Правильно поняли, именно это. Меня смущает в цикле вывода категорий одно, даже, если прикрутить:))))))))) будет ли отображаться полная вложенность все подкатегории категорий......... у меня подозрение что все же цикл устроен на отображение после, клика только тех категорий, которые указаны в этой ступени... ладно попробую поколдовать может, что и получиться:)))))))



У Вас, видимо, очень много категорий, поэтому стандартные скрипты, даже если и удастся переделать,  наверняка будут тормозить. Надо что-то похожее на  http://rexill.ru/.  Но такое вряд ли без индивидуальной доработки сделаете.


Вы имеете ввиду модуль расширенного поиска выборки по параметрам? Это рассматривается как альтернатива..............:) Плюсы такого варианта это более прицельный вывод товаров. Ваш магазин? Смотрела только, что на IE столкнулась с багой. Не пробовала во всех категориях, но в Mazda->626->Н/Д->Детали кузова, когда пробую зайти в карточку любого товара по ссылке наименование запчатей, то не грузится страница, ответ от сервера такой http://rexill.ru/626-92-97-RESHETKA-RADIATORA.html. Почему-то битый путь, видимо какие-то накладки с подключением ЧПУ.


Да, ссылки нерабочие. Админ там что-то мудрит, все записи  по ЧПУ стер.
У меня в IE8 работает нормально. Если про младшие версии речь, то возиться  для них смысла особого нет.



Да, ссылки нерабочие. Админ там что-то мудрит, все записи  по ЧПУ стер.
У меня в IE8 работает нормально. Если про младшие версии речь, то возиться  для них смысла особого нет.


IE либо 8 либо 9. С оперой так же все.


muljukina, я что-то не очень понимаю, что Вам нужно

Объясните это

А вот, если нужно, чтобы вывод категорий был в ввиде дерева и без перегрузки страницы при выводе в центре сайта

Т.е. нужно, чтобы при переходе в категорию, в блоке открывалось дерево, чтобы человек видел где он?

Или Вам нужно дерево в центре сайта?



muljukina, я что-то не очень понимаю, что Вам нужно

Объясните это

А вот, если нужно, чтобы вывод категорий был в ввиде дерева и без перегрузки страницы при выводе в центре сайта

Т.е. нужно, чтобы при переходе в категорию, в блоке открывалось дерево, чтобы человек видел где он?

Или Вам нужно дерево в центре сайта?


Мне нужно ближе к первому варианту. А точнее в левом боксе меню разделы (Категории) я ставлю Maxlevel = 2. Меню остается обычным и открытым до второй ветки, к примеру: Пользователь видит так Opel-> AGILA (2000-) . Кликнув на категорию второго уровня AGILA (2000-) слева, пользователь в центре, уже где идет выборка следующих категорий видит категории деревом и выбирает нужную ему без перезагрузки страницы в боксе подкатегории, которая выводится в categoties.html


а. так нужно.
хм. тут действительно только индивидуальной доработкой на платной основе.


Доброго!

Плагин прикрутила, теперь борюсь с выводом массива категорий ненумерованным списком с родительскими категориями, если в конце концов получится то выложу код. Если не получится, но очень захочется именно так выводить, то вопрос в следующем идти на фриланс или к Вам обратиться? И если к Вам то приблизительно сколько будет стоить, можно  в личку:)


Источник



Copyright ShopOS