Делаем проще «ввод атрибутов товаров» в админке для OpenCart v.1.5.1
- Stats: 3214 0
- Author: admin
- Category: Статті
- Comments: Комментариев нет

В данной статье рассказывается как облегчить ввод атрибутов товара.В OpenCart 1.5.1.х не совсем удобный способ ввода атрибутов товаров, потому что если их хотя бы десяток, то начинаешь забывать их названия, путаться или пытаешься вспомнить, как этот атрибут вы назвали ранее. Кабель? Шнур питания? Длина шнура? Или еще как-то? По умолчанию в админке сделан поиск по «началу» названий (и в связях товаров, и в атрибутах, и в рекомендуемых, и т.д.). Это неудобно. Ниже рассказывается как облегчить ввод атрибутов товара.
И так когда мы сделаем небольшие изменения в двух файлах, то при редактировании или добавлении продукта при вводе в поле атрибута точки «.» появится список всех атрибутов и администратору достаточно будет выбрать нужный.
Что нужно сделать:
1. Открыть файл admin/controller/catalog/attribute.php
Найти в самом конце примерно в 435 строке следующий код:
$sort_order = array ();
foreach ($json as $key => $value) {
$sort_order[$key] = $value['name'];
}
array_multisort ($sort_order, SORT_ASC, $json);
Если у вас присутствует данный код, то переходим к пункту 2:
Если код отсутствует, тогда его нужно добавить выше этой строки:
Все зависит от используемой версии OpenCart.
2. Открыть файл admin/model/catalog/attribute.php
Найти примерно в 37 строке следующий код:
$sql .= « AND LCASE (ad.name) LIKE '» . $this->db->escape (mb_strtolower ($data['filter_name'], 'UTF-8')) . «%'»;
}
Заменить найденное следующим кодом:
if ( $data['filter_name'] == '.' )
$sql .= « AND LCASE (ad.name) LIKE '%'»;
else
$sql .= « AND LCASE (ad.name) LIKE '%» . $this->db->escape (mb_strtolower ($data['filter_name'], 'UTF-8')) . «%'»;
}
Отправить ответ