Поля в карточке товара

Y

yar.ko

Шопмейкер
#1
Здравствуйте, напишу коротко.
Очень много опций при заполнении товара, можно их как-то отключить? Модель, количество(если не заполняю, в событиях(колокольчик в админке) показывает, что его нет в наличии), производитель, артикулы, размеры и вес. Остальное, в принципе, можно игнорировать или выключить. Есть такая возможность? Благодарю
 
Baco

Baco

architect
#2
Здравствуйте, рассматривали в самом начале модификации сборки, хорошее замечание, так же предполагали упростить саму форму товара, если есть пример или пожелания по конкретике - примем во внимание, если нет - сделаем по своему усмотрению!?
 
OP
Y

yar.ko

Шопмейкер
Thread Starter #3
Я не знаю, возможно ли такое реализовать, но я вижу это как "страницу настройки карты товара" с названиями полей и чекбоксами. Задачи и товары разные бывают, поэтому абсолютно любой может настроить под себя. Естественно, должна быть "защита от глупого человека", поэтому основные поля(как я вижу) как "название продукта", "цена", "фото", "описание", "сео урл", "статус товара вкл/выкл", "категория/род. страницы", "ключевые слова", "короткое описание для сео" должны быть.
 
Симпатії: Baco
S

SlaSoft

Maestro
#4
Есть несколько но

1. Можно создать Модуль управления отображением карточки товара
2. Можно нарисовать свою упрощенную форму, и подкючать ее через события, но может возникнуть такая ситуация, что понадобится доп поле, и.. упсс. все пропало

Максимум - отключить валидацию модели
 
Симпатії: Baco
nuller

nuller

TeamLead
#5
а почему не сделать модулем, кто хочет - тот себе установил и настроил, и кстати, хорошая идея, которую написал @SlaSoft - использовать свое представление для карточки в форме редактирования и как написал @yar.ko - отдельную страницу по настройкам, на которой и карта товара, и бренд и опции, категории можно бы было настроить, я щас заканчиваю новостной модуль писать, ох долго с ним сижу, @ALarik помогает в некоторых местах, не обещаю что возьмусь, там много надо сделать, но иметь такой настроечный модуль было бы круто.
 
Baco

Baco

architect
#6
какой то бы пример\прототип, по которому хотим видеть реализацию, хотя бы схематично, иначе сделаем по своему усмотрению.
 
S

SlaSoft

Maestro
#7
какой то бы пример\прототип, по которому хотим видеть реализацию, хотя бы схематично, иначе сделаем по своему усмотрению.
Сделать управление выводом в карточку товара в первый (основной таб)
Где указать какие поля там выводить c порядком вывода и места

Языковые составляющие, как определяющие
Затем цена, статус, url
Перед выводом сортировать по проядку, и выводить
Выводить "стандартным" блоком, принятым в ОС, чтобы в случае привязки не сломать

Вешаем событие на load->view

Код:
        $result = $this->registry->get('event')->trigger('view/' . $trigger . '/before', array(&$route, &$data, &$template));
        
        // Make sure its only the last event that returns an output if required.
        if ($result && !$result instanceof Exception) {
            $output = $result;
        } else {
            $template = new Template($this->registry->get('config')->get('template_engine'));
                
            foreach ($data as $key => $value) {
                $template->set($key, $value);
            }

            $output = $template->render($this->registry->get('config')->get('template_directory') . $route, $this->registry->get('config')->get('template_cache'));       
        }
Где
$result = $this->registry->get('event') - уже отрендеренный свой шаблон

Кроме того добавить параметр - показывать основной, показывать быстрый шаблон

Таким образом, не понадобится никаких других доработок в виде отдельного меню

Состояние шаблона можно запоминать в куках, в сессиях - где удобно.
 
OP
Y

yar.ko

Шопмейкер
Thread Starter #8
Кроме того добавить параметр - показывать основной, показывать быстрый шаблон

Таким образом, не понадобится никаких других доработок в виде отдельного меню
Но вы же сами написали " и подкючать ее через события, но может возникнуть такая ситуация, что понадобится доп поле, и.. упсс. все пропало"
Фактически, просто будет два варианта: либо быстрый шаблон, либо полный
 
S

SlaSoft

Maestro
#9
Но вы же сами написали " и подкючать ее через события, но может возникнуть такая ситуация,
Это повлияет только на краткую форму

Но если форма сделана по согласно codestyle то внести изменения в кастомную форму не составит труда, тем более, что контроллер используется один
 
OP
Y

yar.ko

Шопмейкер
Thread Starter #10
Тогда лучше так и сделать, оставить только базовые поля. Чем проще, тем лучше. Однако, кому не будет хватать 1-2 полей, придется пользоваться полной версией..
 
Симпатії: Baco
nuller

nuller

TeamLead
#11
Сделать управление выводом в карточку товара в первый (основной таб)
Где указать какие поля там выводить c порядком вывода и места

Языковые составляющие, как определяющие
Затем цена, статус, url
Перед выводом сортировать по проядку, и выводить
Выводить "стандартным" блоком, принятым в ОС, чтобы в случае привязки не сломать

Вешаем событие на load->view

Код:
        $result = $this->registry->get('event')->trigger('view/' . $trigger . '/before', array(&$route, &$data, &$template));
       
        // Make sure its only the last event that returns an output if required.
        if ($result && !$result instanceof Exception) {
            $output = $result;
        } else {
            $template = new Template($this->registry->get('config')->get('template_engine'));
               
            foreach ($data as $key => $value) {
                $template->set($key, $value);
            }

            $output = $template->render($this->registry->get('config')->get('template_directory') . $route, $this->registry->get('config')->get('template_cache'));      
        }
Где
$result = $this->registry->get('event') - уже отрендеренный свой шаблон

Кроме того добавить параметр - показывать основной, показывать быстрый шаблон

Таким образом, не понадобится никаких других доработок в виде отдельного меню

Состояние шаблона можно запоминать в куках, в сессиях - где удобно.
а можно поподробнее, а то я ничего не понял, а самому интересно разобрать все эти моменты и сделать что то классное!
например я отрисую простенькую форму на твиге или тпл, где будет минимум полей самых необходимых, как мне это реализовать через логику событий?
 
yura_co

yura_co

master
#12
Моё понимание вопроса:
Можем просто скрыть ненужные поля.
Делается просто добавлением класса hidden в ненужные поля.
Для этого идем в /admin/view/template/catalog/product_form.twig
Ищем ненужное поле и скрываем.
На примере поля "Артикль"
Ищем в файле кусок:
Код:
<div class="form-group">

                <label class="col-sm-2 control-label" for="input-sku"><span data-toggle="tooltip" title="{{ help_sku }}">{{ entry_sku }}</span></label>

                <div class="col-sm-10">

                  <input type="text" name="sku" value="{{ sku }}" placeholder="{{ entry_sku }}" id="input-sku" class="form-control" />
далее просто добавляем класс hidden, получаем код:

Код:
<div class="form-group hidden">

                <label class="col-sm-2 control-label" for="input-sku"><span data-toggle="tooltip" title="{{ help_sku }}">{{ entry_sku }}</span></label>

                <div class="col-sm-10">

                  <input type="text" name="sku" value="{{ sku }}" placeholder="{{ entry_sku }}" id="input-sku" class="form-control" />
Всё!
 
OP
Y

yar.ko

Шопмейкер
Thread Starter #13
Можем просто скрыть ненужные поля.
Делается просто добавлением класса hidden в ненужные поля.
Да, просто, но не для все же так просто, "пересічний користувач" точно такое не сделает
 
yura_co

yura_co

master
#14
Да, просто, но не для все же так просто, "пересічний користувач" точно такое не сделает
Я і є пересічний користувач. насправді нічого складного та навіть якщо самому не справитись (не знаю по яких причинах), є завжди той хто допоможе і не думаю що за таку роботу хтось попросить грошей. це реально хвилина часу.
Якщо буде потрібно, зроблю коротеньке обучаюче відео як це зробити в збірці Brocart
 
Останнє редагування:
S

SlaSoft

Maestro
#15
например я отрисую простенькую форму на твиге или тпл, где будет минимум полей самых необходимых,
Не совсем так
Форма должна быть полная

Но первая вкладка - максимально фуцнкциональная

Можно, конечно и скрывать поля

И кнопка - показать скрытые поля

Но сейчас речь идет о макс удобстве


Вот если вы делает, а это 10% пользователей, каталог, то вам нужен только сеофункционал

И лишние табы просто мешают
Так вот их можно "спрятать"
Оставить

Основное и изображения - чтобы не делать простынь

А все сео - название тайтл описания и, например статус перенести в основной таб

Т.е. в любом случае начинать надо с формы управления формой

И только потом.. заниматься выводом формы

Т.е.
Сначала.. Интерфейс, а потом мясо

Хотя я предпочитаю мясо, а потом интерфейс

Но не в данном случае
 
nuller

nuller

TeamLead
#16
есть предложение - навешать селекторы на поля формы и добавить блок управления, который даст возможность ненужные поля прямо в форме включать или отключать?
 
Зверху