|
|
28.01.2010, 11:20
|
|
Гость
Гость
|
Есть задача что бы пункты в меню могли иметь альтернативные название.
Не понимаю как надо написать что бы работало.
Есть доп. поле altname, и если оно заполнено, то в навигации название раздела должно браться из этого поля, если не заполнено, то название раздела берется из поля по умолчанию.
Пытался сделать так:
Код:$browse_sub[0][prefix] = "";global $browse_sub;$result.="";
....
$browse_sub[0][unactive] = "<p><a href=%URL>".($data[$i][altname]!=0?"true":"false")."</a></p>";
....
В общем когда написано так, то всегда высвечивает false
$data[$i][altname] выдает altname[Array]
Если писать везде %altname и %NAME то вообще всё перестает работать.
Подскажите плз как правильно надо написать такое условие в навигации?
|
|
|
28.01.2010, 12:10
|
|
DiGGy
DiGGy
Зарегистрирован: 2005-04-04
Сообщений: 1546
|
уберите !=0
Temet nosce...
|
|
|
28.01.2010, 12:24
|
|
Гость
Гость
|
Спсб
Вот так получилось всё отлично
Код:".($data[$i][altname]?"%altname":"%NAME")."
|
|
|
08.04.2010, 13:39
|
|
Гость
Гость
|
Пытаюсь воспользоваться приведенным примером и ничего не выходит. Выводятся только системные названия разделов. Мало того, пытаюсь скопировать пример из руководства:
Цитата:Например:
$browse_sub[0][unactive] = "<li>
<a href=".$data[$i][Hidden_URL].">".$data[$i][Subdivision_Name]."</a></li>";
равносильно записи
$browse_sub[0][unactive] = "<li><a href=%URL>%NAME</a></li>";
В шаблонах вывода навигации пишу так:
Код:$browse_path[active_link] = "<a href=".$data[$i][Hidden_URL].">".$data[$i][Subdivision_Name]."</a>";
$browse_path[unactive] = "<a href=".$data[$i][Hidden_URL].">".$data[$i][Subdivision_Name]."</a>";
$browse_path[active] = "<a href=".$data[$i][Hidden_URL].">".$data[$i][Subdivision_Name]."</a>";
$browse_path[divider] = " / ";
В header встаиваю функцию ...".s_browse_path($browse_path)."... и на выходе получаю лишь:
Код:<a href=></a> / <a href=></a> / <a href=></a>
При этом с макропеременными %URL и %NAME все работает. Что я не так делаю и как получить доступ к дополнительным полям?
|
|
|
08.04.2010, 14:23
|
|
Гость
Гость
|
В дополнение к предыдущему. Делаю так:
Код:$browse_path[suffix] = isset($data)?"TRUE":"FALSE";
Возвращает "FALSE". Это ограничение демо-версии?
|
|
|
08.04.2010, 14:26
|
|
DiGGy
DiGGy
Зарегистрирован: 2005-04-04
Сообщений: 1546
|
Для ф-ии s_browse_path указанное выше решение применить нельзя, потому что в ней доступны лишь два поля Subdivision_Name, Hidden_URL.
Тут можно использовать как минимум 2 варианта:
1. С помощью ф-ии s_browse_sub, указав шаблоны вывода типа:
Код:
$browse_map[prefix] = "/";
$browse_map[active] = "<a href=%URL>".$data[$i][Subdivision_Name]."</a>".s_browse_sub($data[$i][Subdivision_ID],$browse_template)."";
$browse_map[suffix] = "</ul>";
2. Либо ручками сформировать при помощи обработки массива $parent_sub_tree
Temet nosce...
|
|
|
08.04.2010, 14:32
|
|
malich
Андрей Малков
Зарегистрирован: 2005-08-09
Сообщений: 522
|
да действительно в s_browse_path массива $data нет.
чтобы получить доступ к
воспользуйтесь другой функцией вывода навигации где есть $data
s_browse_level
s_browse_sub
и т.д.
|