Регистрация
Регистрируясь, вы подтверждаете свое согласие с соглашением об использовании персональных данных.
Восстановление пароля

rus-eng вывод пути к разделу на сайте

Страницы: 1  |  2
06.06.2007, 17:29
malich
Андрей Малков

Зарегистрирован:
2005-08-09
Сообщений: 522

Добрый день, на сайте 2 языка: русский и английский.
В системных таблицах - настройках разделов добавлено поле: EngName - Название раздела на Английском

на самом сайте выбираем что выводить следующей конструкцией:
Код:
".opt_case($lang=='En', '%EngName', '%NAME')."


в меню все хорошо работает, а вот в шаблоне вывода пути до раздела на сайте:
Код:
$browse_path[unactive] = "<a href=%URL>".opt_case($lang=='En', '%EngName', '%NAME')."</a>";


Названия на русском выводятся на ура, а вот английские названия выдают "%EngName"

Подскажите как нужно сделать?
06.06.2007, 18:24
h/z

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

экранируйте пхп код, чтобы он обрабатывался после текстовых замен
Код:
$browse_path[unactive] = "<a href=%URL>".opt_case($lang=='En', '%EngName', '%NAME')."</a>";
06.06.2007, 18:55
malich
Андрей Малков

Зарегистрирован:
2005-08-09
Сообщений: 522

При таком варианте отображается только русские названия, даже при щелчке на английскую версию
06.06.2007, 19:00
malich
Андрей Малков

Зарегистрирован:
2005-08-09
Сообщений: 522

malich писал(а):
При таком варианте отображается только русские названия, даже при щелчке на английскую версию


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

такое чувство что он не может найти поле EngName
06.06.2007, 19:17
h/z

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

посмотрел в исходнике, мне кажется такая конструкция должна сработать

Код:
$browse_path[unactive] = "<a href=%URL>".opt_case($lang=='En', '$parent_sub_tree[$i][EngName]', '%NAME')."</a>";
06.06.2007, 19:31
zhilin
Жилин А.С.

Зарегистрирован:
2007-02-14
Сообщений: 108

Сталкивался с этим при разработке англ. версии.
Пришлось пару строк внести в файл s_browse.inc.php
Уважаемые разработчики - просьба внесити эту возможность в обновление!!!
07.06.2007, 08:31
Гость
Гость

Вот еще вопрос.. английская версия работает все нормально..
но системные сообщения (Некорректно заполнено поле и.т.д.) выводятся русские
07.06.2007, 12:19
h/z

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

создайте два сайта (каталога) и каждому выставьте свой язык. создав поддомены для языков
www.site.ru
eng.site.ru

два дерева нужно будет создавать в ручную, так же как и записи на каждом сайте..

сквозное переключение между языками (сайтами) будет возможно просто подменой домена в ссылке.

2 Artos
вносить ничего не стоит.. нужно лишь документацию полнее делать. когда возникают непонятности с работой функций проще в код посмотреть (благо он открытый) и увидеть какие же на самом деле там переменные используются.
07.06.2007, 12:46
malich
Андрей Малков

Зарегистрирован:
2005-08-09
Сообщений: 522

нет не работает - в ответ вместо имен выдает Array[EngName]
07.06.2007, 13:05
malich
Андрей Малков

Зарегистрирован:
2005-08-09
Сообщений: 522

malich писал(а):
нет не работает - в ответ вместо имен выдает Array[EngName]
, видимо потому что мы используем эту конструкцию в шаблоне вывода навигации
07.06.2007, 13:28
h/z

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

Array[EngName] - это означает что обработалась только первая часть ($parent_sub_tree[$i])

попробуйте
Код:
$browse_path[unactive] = "<a href=%URL>".opt_case($lang=='En', '".$parent_sub_tree[$i][EngName]."', '%NAME')."</a>";


198 196 2007-06-07 17:29:18 9018
Страницы: 1  |  2
Описание проекта