Регистрация
Вход через соцсети
Восстановление пароля

Многоуровневый каталог

Новый топик
06.06.2013, 12:44
Ответить | Цитировать
Михаил

Зарегистрирован:
2011-03-12
Сообщений: 45

Здравствуйте. Помогите советом.

Необходимо создать каталог следующего вида:
Изображение

Карта сайта организованна так:
Изображение

Т.е. нужно чтобы разделы первого уровня были как заголовки и не активные, а подразделы были ссылками на определенные страницы сайта.
И при редактировании карты сайта в админке изменения отражались в Каталоге автоматически.

Нашел одно решение он не могу его адаптировать под свою задачу:

Префикс списка объектов:
Код:
<? echo s_browse_sub($nc_sub,$browse_sub); ?>


Системные настройки:
Код:

$browse_sub[prefix] = '<table width=\'100%\'><tr>';
$browse_sub[suffix] = '".( ($i%'.$nc_num_cols.') ? str_repeat("<td>&nbsp;</td>",('.$nc_num_cols.'-($i%'.$nc_num_cols.'))) : NULL)."</tr></table>';
$browse_sub[unactive] = '".( !($i%'.$nc_num_cols.') && $i ? "</tr><tr>" : NULL)."<td class=\'nc_row\'><div class=\'nc_menu_item\'><a href=%URL>%NAME</a></div>".s_browse_sub($data[$i][Subdivision_ID],$browse_template)."</td>';
$browse_sub[active] = '".( !($i%'.$nc_num_cols.') && $i ? "</tr><tr>" : NULL)."<td class=\'nc_row\'><div class=\'nc_menu_item nc_current\'><a href=%URL>%NAME</a></div>".s_browse_sub($data[$i][Subdivision_ID],$browse_template)."</td>';



Спасибо.
06.06.2013, 15:15
Ответить | Цитировать
Игорь
Stark
Игорь

Зарегистрирован:
2011-11-20
Сообщений: 396

Код:
< div class=\'nc_menu_item\'>< a href=%URL>%NAME< /a>< /div>


Жирным выделено, что убрать.
%NAME - оставить!
06.06.2013, 18:22
Ответить | Цитировать
Михаил

Зарегистрирован:
2011-03-12
Сообщений: 45

В этом случае неактивными становятся все строки. Нужно, чтобы неактивными были только каталоги первого уровня, а все вложенные выводились ссылками.
07.06.2013, 21:10
Ответить | Цитировать
Руслан Густокашин
Студия Вэлпис
Руслан Густокашин

Зарегистрирован:
2012-02-06
Сообщений: 869

Читайте в документации неткат про вывод меню первого и второго уровня, там неплохие примеры есть. Направление вы правильно выбрали - копайте в сторону s_browse_sub. улыбка

08.06.2013, 14:00
Ответить | Цитировать
Игорь
Stark
Игорь

Зарегистрирован:
2011-11-20
Сообщений: 396

Код:
".s_browse_sub($data[$i][Subdivision_ID],$browse_template)."

Там где жирным нужно ставить другой макет, например $browse_sub[1],
но перед этим сделать его и, чтобы он располагался выше чем $browse_sub
11.06.2013, 07:53
Ответить | Цитировать
Михаил

Зарегистрирован:
2011-03-12
Сообщений: 45

Не знаю правильно ли я понял, но сделал так:

Префикс списка объектов:
Код:
<? echo nc_browse_sub($nc_sub,$browse_sub); ?>


Системные настройки:
Код:
<?

if( !isset($nc_sub) ) $nc_sub = $sub;
else $nc_sub = (int)$nc_sub;

$browse_sub[1][prefix] = "";
$browse_sub[1][suffix] = "";
$browse_sub[1][active] = "<div class='catalog_list'><a href=%URL>%NAME</a></div>";
$browse_sub[1][unactive] = "<div class='catalog_list'><a href=%URL>%NAME</a></div>";

$browse_sub[0][prefix] = "<div class='catalog_style'>";
$browse_sub[0][suffix] = "</div>";
$browse_sub[0][active] = "<div class='catalog_title'><h2>%NAME</h2>%NEXT_LEVEL</div>";
$browse_sub[0][unactive] = "<div class='catalog_title'><h2>%NAME</h2>%NEXT_LEVEL</div>";

?>


Стили:
Код:

.catalog_style{
-moz-columns: 2;
-webkit-columns: 2;
columns: 2;
}

.catalog_title h2{
color: black;
}

.catalog_list{
margin-bottom: 3px;
}


Осталась одна проблема: Как сделать чтобы перенос на новую колонку происходил только с заголовка первого уровня Каталога?
Сейчас отображается так:
Изображение
198 196 2013-06-11 07:53:16 13095
Описание проекта