Jump to content

Дополнительные поля для товара [support]


Go to solution Solved by Blast,

Recommended Posts

  • Solution

Дополнительные поля для товара

Просмотр файла

Модификатор добавляет дополнительное поле с названием ean2 в форму редактирования/добавления товара

на фронте в карточке товара также можно использовать {{ ean2 }}

 

Добавлен второй модификатор, добавляющий поле Дополнительное описание - description2. Сохраняет данные с привязкой к языку и имеет визуальный редактор.

на фронте в карточке товара также можно использовать {{ description2 }}

 

sql-запросы для добавления полей в БД внутри модификаторов в виде камента. Их выполнить через phpmyadmin.

 

Установка:

1. Выполнить запрос в phpmyadmin. Запрос написан внутри файла в виде комментария ALTER TABLE ...

Если имена таблиц начинаются не со стандартного oc_ то изменить текст запроса подставив свой префикс.

2. Файлы модификаторов залить в папку /system и обновить модификаторы в админке в разделе Дополнения / Модификаторы

 

 

 

Link to comment
Share on other sites

  • 10 months later...

Добрый день)
получил следующую ошибку)
Notice: Undefined index: description2 in /home/t/trial2/1begovoy.ru/storage/modification/catalog/model/catalog/product.php on line 49Notice: Undefined index: description2 in /home/t/trial2/1begovoy.ru/storage/modification/catalog/model/catalog/product.php on line 52Notice: Undefined index: box_description in /home/t/trial2/1begovoy.ru/storage/modification/catalog/model/catalog/product.php on line 65

Link to comment
Share on other sites

В 28.03.2024 в 15:23, bren0r сказал:

Добрый день)
получил следующую ошибку)
Notice: Undefined index: description2 in /home/t/trial2/1begovoy.ru/storage/modification/catalog/model/catalog/product.php on line 49Notice: Undefined index: description2 in /home/t/trial2/1begovoy.ru/storage/modification/catalog/model/catalog/product.php on line 52Notice: Undefined index: box_description in /home/t/trial2/1begovoy.ru/storage/modification/catalog/model/catalog/product.php on line 65

добрый день.

в инструкции написано, что нужно выполнить в phpmyadmin sql-запрос, записанный в файле модификатора в виде комментария. вы его выполнили?

Link to comment
Share on other sites

В 28.03.2024 в 16:34, Blast сказал:

добрый день.

в инструкции написано, что нужно выполнить в phpmyadmin sql-запрос, записанный в файле модификатора в виде комментария. вы его выполнили?

да, сделал откат и поле появилось)
только вот при сохранении товара выдает вот это)
Fatal error: Uncaught Exception: Error: Column 'description2' specified twice
Error No: 1110
INSERT INTO oc_product_description SET product_id = '1691', language_id = '1', name = 'MARQ Adventurer (Gen 2)', description = '<div style="text-align: center;"><strong><span style="font-size:24px;"> MARQ ADVENTURER </span></strong><br />\r\n<br />\r\n<span style="font-size:16px;">ВЫ ИССЛЕДУЕТЕ НЕИЗВЕДАННЫЕ ТЕРРИТОРИИ. РАЗДВИГАЕТЕ ГРАНИЦЫ И НАРУШАЕТЕ ОГРАНИЧЕНИЯ. ВЫ ТРЕБУЕТЕ САМОГО ЛУЧШЕГО. ВАМ НУЖНЫ СОВРЕМЕННЫЕ ИНСТРУМЕНТАЛЬНЫЕ ЧАСЫ, ОТРАЖАЮЩИЕ ВАШУ СТРАСТЬ К ПРИКЛЮЧЕНИЯМ.</span></div>\r\n<br />\r\n<br />\r\n<!-- media-yootube -->\r\n<div style="text-align: center"><iframe allow="accelerometer; autoplay; clipboard-write; en in /home/t/trial2/1begovoy.ru/public_html/system/library/db/mysqli.php on line 40

Link to comment
Share on other sites

В 28.03.2024 в 16:38, bren0r сказал:

да, сделал откат и поле появилось)
только вот при сохранении товара выдает вот это)
Fatal error: Uncaught Exception: Error: Column 'description2' specified twice
Error No: 1110
INSERT INTO oc_product_description SET product_id = '1691', language_id = '1', name = 'MARQ Adventurer (Gen 2)', description = '<div style="text-align: center;"><strong><span style="font-size:24px;"> MARQ ADVENTURER </span></strong><br />\r\n<br />\r\n<span style="font-size:16px;">ВЫ ИССЛЕДУЕТЕ НЕИЗВЕДАННЫЕ ТЕРРИТОРИИ. РАЗДВИГАЕТЕ ГРАНИЦЫ И НАРУШАЕТЕ ОГРАНИЧЕНИЯ. ВЫ ТРЕБУЕТЕ САМОГО ЛУЧШЕГО. ВАМ НУЖНЫ СОВРЕМЕННЫЕ ИНСТРУМЕНТАЛЬНЫЕ ЧАСЫ, ОТРАЖАЮЩИЕ ВАШУ СТРАСТЬ К ПРИКЛЮЧЕНИЯМ.</span></div>\r\n<br />\r\n<br />\r\n<!-- media-yootube -->\r\n<div style="text-align: center"><iframe allow="accelerometer; autoplay; clipboard-write; en in /home/t/trial2/1begovoy.ru/public_html/system/library/db/mysqli.php on line 40

какой откат?

теперь у вас 2 раза указывается поле при сохранении. либо 2 раза модификатор загрузили, либо у вас уже было поле description2, добавленное ранее либо другим модификатором, либо наживую в код.

если первый вариант, то строго следуйте инструкции и все получится.

если второй вариант, то откройте файл модификатора текстовым редактором и замените все слова "description2" на например "description3" и повторите шаги инструкции

Link to comment
Share on other sites

В 28.03.2024 в 17:05, bren0r сказал:

просто не до конца было понятно, что делать вот с эим)
image.thumb.png.1c73f989aa763158d6ccfd93fd3757c9.png

С этим ничего делать не надо

 

В 28.03.2024 в 17:16, bren0r сказал:

Сделал, все работает)
Большое спасибо. У меня еще к вам вопрос. У нас в качестве шаблона установлен lightshop. Для вывода этого блока нужно копаться уже в шаблоне лайтшопа?

 

Да, вам нужно в catalog/view/theme/lightshop/template/product/product.twig в любом месте, где хотите выводить этот текст, добавить просто {{ description2 }}

Link to comment
Share on other sites

В 28.03.2024 в 19:00, Blast сказал:

С этим ничего делать не надо

 

Да, вам нужно в catalog/view/theme/lightshop/template/product/product.twig в любом месте, где хотите выводить этот текст, добавить просто {{ description2 }}

извините за навязчивость)
но имеем вот такоеimage.thumb.jpeg.5bf19873179a56b1250a0e27f22cbdb9.jpeg

а как можно вывести это мини описание так же, как и родное описание)
шаблон его почему-то не отрисовывает(

 

Link to comment
Share on other sites

  • 1 month later...

Добрый день!
Захотели добавить еще одно "кастомное поле", но встретили ошибку вот такого рода:
"Notice: Undefined index: description3 in /home/t/trial2/1begovoy.ru/storage/modification/admin/model/catalog/product.php on line 209Warning: Cannot modify header information - headers already sent by (output started at /home/t/trial2/1begovoy.ru/public_html/admin/controller/startup/error.php:34) in /home/t/trial2/1begovoy.ru/storage/modification/system/library/response.php on line 36"
Подскажите, можно ли как-то добавить 3 поле с описанием?
P.S название переменных было заменено на description3. В самом модификаторе пытался вставить и после поля description и description2. Запрос в бд делал так же после столбца description, description2 ничего не помогло(

Link to comment
Share on other sites

В 13.05.2024 в 12:17, bren0r сказал:

Добрый день!
Захотели добавить еще одно "кастомное поле", но встретили ошибку вот такого рода:
"Notice: Undefined index: description3 in /home/t/trial2/1begovoy.ru/storage/modification/admin/model/catalog/product.php on line 209Warning: Cannot modify header information - headers already sent by (output started at /home/t/trial2/1begovoy.ru/public_html/admin/controller/startup/error.php:34) in /home/t/trial2/1begovoy.ru/storage/modification/system/library/response.php on line 36"
Подскажите, можно ли как-то добавить 3 поле с описанием?
P.S название переменных было заменено на description3. В самом модификаторе пытался вставить и после поля description и description2. Запрос в бд делал так же после столбца description, description2 ничего не помогло(

добрый день.

если скопировать модификатор и заменить все description2 на description3 и в том числе в sql-запросе, то все должно работать без проблем

Link to comment
Share on other sites

В 13.05.2024 в 12:26, Blast сказал:

добрый день.

если скопировать модификатор и заменить все description2 на description3 и в том числе в sql-запросе, то все должно работать без проблем

так и сделал, но получаю ошибку такого рода(
 

Link to comment
Share on other sites

В 13.05.2024 в 12:33, bren0r сказал:

так и сделал, но получаю ошибку такого рода(
 

приложите модификатор, посмотрю. от названия поля ничего не зависит. скорее всего просто не везде заменили

Link to comment
Share on other sites

В 13.05.2024 в 12:42, Blast сказал:

приложите модификатор, посмотрю. от названия поля ничего не зависит. скорее всего просто не везде заменили

Сделал еще раз с самого начала. Все вроде работает. Ну так относительно)
Теперь поле комплектация дублируется)
 

1.JPG

Link to comment
Share on other sites

замените в обоих модификаторах строку

<search regex="true"><![CDATA[~(<div class="form-group">([\s]*)<label class="col-sm-2 control-label" for="input-description)~imsu]]></search>

на

<search regex="true"><![CDATA[~(<div class="form-group">([\s]*)<label class="col-sm-2 control-label" for="input-description\{\{ language\.language_id \}\})~imsu]]></search>

 

Link to comment
Share on other sites

В 13.05.2024 в 13:12, Blast сказал:

замените в обоих модификаторах строку

<search regex="true"><![CDATA[~(<div class="form-group">([\s]*)<label class="col-sm-2 control-label" for="input-description)~imsu]]></search>

на

<search regex="true"><![CDATA[~(<div class="form-group">([\s]*)<label class="col-sm-2 control-label" for="input-description\{\{ language\.language_id \}\})~imsu]]></search>

 

сейчас попробую

Link to comment
Share on other sites

В 13.05.2024 в 13:12, Blast сказал:

замените в обоих модификаторах строку

<search regex="true"><![CDATA[~(<div class="form-group">([\s]*)<label class="col-sm-2 control-label" for="input-description)~imsu]]></search>

на

<search regex="true"><![CDATA[~(<div class="form-group">([\s]*)<label class="col-sm-2 control-label" for="input-description\{\{ language\.language_id \}\})~imsu]]></search>

 

все работает отлично!
спасибо вам

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...