Вход для клиентов и партнеров
в начало сайта
Партнерская программаОнлайн демоСкачатьКарта сайта
 

Регламент
Документация
Часто задаваемые вопросы (FAQ)
Решения типовых вопросов
Форум поддержки
Библиотека разработчика

Посмотрите демо-ролики и убедитесь в том, что "Twilight CMS" очень удобна в управлении, понятна и проста.

Бесплатно скачайте "Twilight.Basic", установите на своем компьютере и изучите систему более детально.

Если вам нужно установить "Twilight CMS" на существующий сайт или разработать новый - обращайтесь в отдел интеграции.

 

Ваше имя
Ваш Email
Вопрос
Twilight.basic
  • Узнайте больше
  • Сравните версии
  • Twilight.selection
  • Узнайте больше
  • Сравните версии
  • Twilight.evolution
  • Узнайте больше
  • Сравните версии
  •  
    Главная // Форум поддержки

    Сборка сайта / Планируемые изменения и доработки / Связь товар-аксессуар (+)

    есть новые сообщения  Время:   08.08.05 23:45
    Денис Скажите, серьезной ли доработки потребует следующий функционал:
    Есть некий товар. Есть список аксессуаров к нему. Нужно сделать интерфейс администратора (чтобы можно было связывать товары и аксессуары) и вывод на сайте.
    есть новые сообщения  Время:   09.08.05 08:03
    Олег Никитин В принципе, такой функционал реализовать несложно:
    1. В рамках сущности описывающей товар определяем максимально возможное количество полей, которые будут содержать идентификаторы аксессуаров (например 5). Переменное число сделать сложнее, поэтому пусть часть полей в админзоне будут просто не заполнены. В базе этих полей все равно не будет.
    2. Начиная с версии 4.14 (которая сейчас в тестировании) появился тип поля cnid (catalog node id). Установим для полей из п.1 тип cnid. В более ранних версиях можно и самому сделать такой кастомный тип поля, но придется разбираться в устройстве админзоны.
    3. В админзоне появится возможность выбирать любой элемент каталога (любой товар или услугу) и в редактируемое поле (из п.1) можно будет вставлять его идентификатор.
    4. В шаблоне оформления элемента каталога (в Templates/catalog_items_design.xml) в том месте где нужно Вы сможете формировать на аксессуары ссылки вида /catalog/?iid=$Attribute:accessory1$. Нужно использовать конструкцию с использованием ключа condition для того, чтобы не получалось пустых ссылок. Чтобы достать из базы свойства аксессуара, (например, чтобы внутри ссылки писать не "Аксессуар 1" а его реальное название) можно воспользоваться макросом , используя таблицу с товарами как справочник и отфильтровав нужный товар по id. Для этого нужно сделать специальный шаблон для использовании в макроподстановке $News$. Например, в этом шаблоне можно сформировать ссылки на детальные описания аксессуаров.
    Сама итоговая подстановка получается примерно такая:

    Для данного примера в дизайне новостей в файле template_news.xml в секцию accessory_link_design нужно зашить что-то типа <A HREF="/catalog/?iid=$Attribute:id$" title="$Attribute:title$">$Attribute:title$</A>.
    В данном примере catalogitems и catalog - названия хранилищ для элементов и структуры каталога по умолчанию. Если Вы их переопределили, соответственно и в примере их надо поменять.
    В общем, с точки зрения фронтзоны и управления все достаточно просто. Другой вопрос, что данный механизм подходит только для редактирования товаров без частой перепривязки аксессуаров. В притивном случае, основной проблемой будет являться необходимость ручного поддержания целостности ссылок на аксессуары во всем каталоге. Если привязка и "отвязка" происходят очень часто - менеджер сойдет с ума. Тут нужен более удобный механизм, который будет жестко подогнан под конкретную задачу. Мы видим себе такой инструмент как отдельную программу (скорее всего Win32 приложение), облегчающую не столько процесс привязки-"отвязки" товаров, сколько позволяющий вести аудит дерева и связей в целом.
    В общем-то, эта проблема очень похожа на головную боль системных администраторов, которые управляют правами доступа к файловой системе (ACL) в Windows. Если один раз аккуратно расставить их и потом почти не трогать - проблем почти нет. А если нужно часто изменять, или чего хуже за кем-то другим доработать существующее дерево прав - приходится хранить в голове все дерево директорий, параметры наследования прав, роли и самих пользователей. А это сложно без удобного специализированного инструмента.
    есть новые сообщения  Время:   19.02.08 23:55
    roman Круто!
    а это не будет тормозить сильно систему? На каждой странице каталога бдует дополнительный макрос News. Он же заново будет лезть в тот же самый файл, что и CatalogList.
    есть новые сообщения  Время:   19.02.08 23:57
    Anonymous может можно использовать для скорости DataField + сущность с cnid?
    есть новые сообщения  Время:   20.02.08 00:03
    Служба поддержки Тормозить не будет. А если включено кэширование так и вообще это будет все равно.
    в общем случае немного медленнее чем , т.к. если в рисуются несколько атрибутов за один раз, то вызов нескольких - несколько обращений к базе. Хотя при небольшом числе запросов это не страшно, следует избегать лишнего числа .

    Но вообще, это сообщение было датировано 2005 годом. С тех пор в системе появились связанные списки и другие инструменты, которые можно комбинировать для решения различных задач.

    есть новые сообщения  Время:   20.02.08 00:12
    roman <A HREF="/catalog/?iid=$Attribute:aksess$"></A>

    Попробовал вот так. Ну ваще. Так всё просто. Респект разработчикам. Просто нет слов. Супер!


    Ваше имя:

    Email:

    Сообщение:

    Прислать оповещение на email, если мне ответят

     
    © 2003-17 Страта Технологии (создание сайтов, разработка cms), Twilight CMS in english.
    Наш адрес: Москва, пр. Маршала Жукова д.51
    Тел.: (495) 222-6436, E-mail: , карта сайта, условия использования информации о CMS
    Звоните через Skype:  

    Реклама: