Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

Доп. поле для общей опции


Recommended Posts

Всем привет, стоит такая задача
Хочу добавить поле дополнительное в опции

После поля "Порядок сортування" ( в прикрепленном)

 

Подскажите пожалуйста, как правильно добавлять
Файлы знаю, нужно править

 

/admin/view/template/catalog/option.php
/admin/controller/catalog/option.php

/admin/model/catalog/option.php

 

/catalog/view/template/catalog/option.php
/catalog/controller/catalog/option.php

/catalog/model/catalog/option.php

 

Но вот не могу связать админку с базой, поле создал, но в базу не пишет, и если напрямую записать в базу, то в админке не отображается
Стоит Opencart 3.0.2.0

Опції - Google Chrome 17.08.2020 15_51_35.png

Надіслати
Поділитися на інших сайтах


Получилось сделать, тему можно закрывать.

Если кому будет интересно или может просто пригодится

 

Создаем столбец в таблице такой строчкой

ALTER TABLE  'product'  ADD  'your_field name' VARCHAR (250) NOT NULL AFTER 'model';


в файле /admin/view/template/catalog/option_form.php добавляем код

<!-- Custom field for option START -->
            
            <div class="form-group">
              <label class="col-sm-2 control-label" for="input-ds-option">{{ entry_ds_option }}</label>
              <div class="col-sm-10">
                <input type="text" name="ds_option" value="{{ ds_option }}" placeholder="{{ entry_ds_option_2 }}" id="input-ds-option" class="form-control" />
              </div>
            </div>
            
<!-- Custom field for option END -->

Далее в /admin/controller/catalog/option.php в цикле foreach ($results as $result) {

вставляем 'ds_option' => $result['ds_option'], (примерно 179 строка)

 

Потом в этом же файле (примерно 338 строка)

		if (isset($this->request->post['ds_option'])) {
			$data['ds_option'] = $this->request->post['ds_option'];
		} elseif (!empty($option_info)) {
			$data['ds_option'] = $option_info['ds_option'];
		} else {
			$data['ds_option'] = '';
		}

 

Далее в модели /admin/model/catalog/option.php

 

В функции addOption вставляем ds_option = '" . $this->db->escape($data['ds_option']) . "' 

После sort_order = '" . (int)$data['sort_order'] . "'

 

Все должно работать)

Змінено користувачем uamassimo
Надіслати
Поділитися на інших сайтах


Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз
  • Зараз на сторінці   0 користувачів

    • Ні користувачів, які переглядиють цю сторінку
×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.