|
|
16.02.2015, 09:38
|
|
zhenya_mzmo
Зарегистрирован: 2006-11-08
Сообщений: 40
|
Здравствуйте, есть вопрос.
Создаю компонент каталога продукции, возникла трудность.
Сам каталог выглядит, грубо говоря, списком.
Трудность состоит в "Отображение объекта:", так как некоторые виды продукции ведут на просто описание продукта, а некоторые на еще список продукции (например, раздел Продукция - Лабораторное оборудование), и уже потом на описание самого продукта.
Я смогла реализовать "список продуктов - описание каждого", как реализовать "список - список - описание", не знаю, какую-то выборку надо прописать видимо в "отображении объекта".
Создала 2 шаблона для этого компонента с продукцией, один с выводом списка и описанием каждого товара (список - продукт), и второй сразу с описанием продукта.
Как понимаю, теперь мне в системных настройках надо прописать какую-то выборку, не могу сообразить как. Нужно ли пользовательские настройки сюда приурочить? Например, чтоб добавляя продукт, редактор указывал, что этот продукт (вентиляция к примеру) будет списком (кондиционеры, распределители...) с помощью выбора пользовательской настройки логического типа.
Но не получается, я правильно делаю? Подскажите что нужно прописать в системных настройках.
Запуталась абсолютно, вот примерная схема как должно все выглядеть:
korvin
|
|
|
16.02.2015, 12:18
|
|
zhenya_mzmo
Зарегистрирован: 2006-11-08
Сообщений: 40
|
Создала логическую переменную Products_product, в "Отображении объекта" написала, но ничего не получилось, при переходе просто пустая страница
Код:<?= ($f_Products_product==1?"<?= nc_objects_list(896,824, "nc_ctpl=527",true) ?>":"<?= nc_objects_list(896,824, “nc_ctpl=529",true) ?>")?>
korvin
|
|
|
16.02.2015, 13:12
|
|
Nexwich
Панасин Александр
Зарегистрирован: 2011-04-05
Сообщений: 1037
|
Судя по схеме вам нужны дочернии товары?
Для этого есть поле Parent_Message_ID. Запишите в него номер родительского объекта и далее дело в шляпе. Выборки, циклы не чего сложного.
Вариантов вывода масса. Для примера я привел простой на мой взгляд.
Вывод объектов. Пример.
Код:Список объектов
<a href='<?=$fullLink?>'><?=$f_Name?></a>
Полное отображение
<?
// Запрос получения дочернего элемента
$Parent = $nc_core->db->get_var("SELECT Message_ID FROM Message".$classID." WHERE Parent_Message_ID=".$f_RowID." LIMIT 1", ARRAY_A );
//Если дочерние элементы есть
if($Parent) echo nc_objects_list($sub,$cc,"Message_ID=".$f_RowID."",true);
// Иначе полное отображение
else {
?>
Разметка полного отображения объекта
<? } ?>
Системные настройки
<?
// Если передан параметр то отобразить только дочерние объекты
if($Message_ID){
$ignore_sub = $ignore_cc = $ignore_parent = 1;
$query_where = "a.Checked=1 AND a.Parent_Message_ID=".$Message_ID."";
}
?>
Модуль "Почтовые уведомления" – настройка email уведомлений на вашем сайте без программирования. Бесплатно. http://netcat.ru/products/CatStore/solution_242.html
|
|
|
17.02.2015, 13:02
|
|
zhenya_mzmo
Зарегистрирован: 2006-11-08
Сообщений: 40
|
Александр, я пока еще только начинаю, не очень поняла это:
Цитата:Для этого есть поле Parent_Message_ID. Запишите в него номер родительского объекта и далее дело в шляпе.
Где это поле, и куда записать?
Это интернет-магазин? У нас версия Corporate, там он не предусмотрен вроде бы.
korvin
|
|
|
17.02.2015, 16:55
|
|
Nexwich
Панасин Александр
Зарегистрирован: 2011-04-05
Сообщений: 1037
|
Это колонка в бд и она есть во всех компонентах. Разве я упомянул Модули? От куда такая мысль?
Чтобы записать в это поле что то, достаточно передать в форму добавления номер <input name='f_Parent_Sub_ID' value=''> Если вы генерируете это форму то уведите это поле во всех формах
Чтобы не усложнять теорией
В объекте в админке добавьте ссылку вида
Код:<a onclick="parent.nc_form('/netcat/add.php?inside_admin=1&cc=<?=$cc?>&f_Parent_Sub_ID=<?=$f_RowID?>')">Добавить дочерний элемент</a>
Ссылка вызовет форму добавления в которую будет передан параметр с номером родительского элемента. Вам остается только заполнить доступные поля.
По умолчанию объект не будет показан так как дочерние изначально скрыты.
Изучайте системные настройки компонентов
Если вы захотите вывести объекты в админке (воспользуйтесь таблицей для администратора (не факт что она умеет) используйте выше описанный метод
Если что то не понятно то на форуме разжевать будет очень трудно.
Модуль "Почтовые уведомления" – настройка email уведомлений на вашем сайте без программирования. Бесплатно. http://netcat.ru/products/CatStore/solution_242.html
|
|
|
18.02.2015, 13:15
|
|
zhenya_mzmo
Зарегистрирован: 2006-11-08
Сообщений: 40
|
Ох ох ох )))
Кароче,с первым вашим сообщением разобралась, вставила все куда надо.
Со вторым сообщением сложнее. Я правильно поняла, что мне в компоненте нужно сгенерировать форму добавления, туда вставить:
Цитата:<input name='f_Parent_Sub_ID' value=''>
Если так, то сделала.
Вот теперь не могу разобраться, что значит:
Цитата:В объекте в админке добавьте ссылку вида
Код:Код:
<a onclick="parent.nc_form('/netcat/add.php?inside_admin=1&cc=<?=$cc?>&f_Parent_Sub_ID=".$f_RowID."')">Добавить дочерний элемент</a>
Это в "объект в списке"? Если да, то не получилось(((( происходит переход просто в админку системы, форма добавления никакая не открывается
Вот
korvin
|
|
|
19.02.2015, 11:50
|
|
Игорь
Игорь Мишарин
Зарегистрирован: 2011-11-20
Сообщений: 482
|
Просто закралась небольшая ошибка))
Код:<a onclick="parent.nc_form('/netcat/add.php?inside_admin=1&cc=<?=$cc?>&f_Parent_Sub_ID=<?=$f_RowID;?>')">Добавить дочерний элемент</a>
Stark
|
|
|
19.02.2015, 14:11
|
|
Nexwich
Панасин Александр
Зарегистрирован: 2011-04-05
Сообщений: 1037
|
Спасибо за ошибку.
Если бы вы читали повнимательнее и глядели бы повнимательнее то увидели бы что поле по умолчанию присутствует в форме добавления.
Код:<input name='f_Parent_Sub_ID' value=''>
А код приведенный мною только пример причем не целый.
Модуль "Почтовые уведомления" – настройка email уведомлений на вашем сайте без программирования. Бесплатно. http://netcat.ru/products/CatStore/solution_242.html
|
|
|
20.02.2015, 06:57
|
|
zhenya_mzmo
Зарегистрирован: 2006-11-08
Сообщений: 40
|
Спасибо Вам, Александр. Я поняла, что он не полный))) добавила что мне нужно было, то есть как будет список выводится а как полное отображение. После исправления ошибки, на которую указал Игорь, таки все заработало!!!
Я, конечно, еще корректирую внешний вид)))
Вы не первый раз меня выручаете, направляете куда следует
korvin
|