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

фильтр товаров в админке [Поддержка]


freelancer

Recommended Posts

я вам могу помочь советом. переходите на ocstore последней версии. сейчас этот переход стоит в р-не $300 насколько мне известно

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

Не проблема,конечно же установлю! А вдруг олень какой себе сей  модуль  прикрутит!? Будет потом разговоров что кнопка Изменить пропала)

 

Кстати проблема в очень длинном названии   подкатегории была! А ежели у кого название подкатегорий из нескольких предложений, вообще только это поле останется!?? 

Том, пусть я олень, но помогите плиз!

Понимаю, что нужно копать admin/view/stylesheet/stylesheet.css

Но мне кажется, что большинство колонок описаны одним и тем же классом left.

А мне бы нужно каждую колонку по-разному, например модель, кол-во, цена - поуже, а имя и, тем более, категории - фиксированной ширины с переносом слов. 

Для меня проблема актуальна - очень длинные категории и названия товаров.

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


я вам могу помочь советом. переходите на ocstore последней версии. сейчас этот переход стоит в р-не $300 насколько мне известно

 

Последняя сборка еще очень сырая, я бы не стал обновятся только ради Вашего фильтра.

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


Том, пусть я олень, но помогите плиз!

Понимаю, что нужно копать admin/view/stylesheet/stylesheet.css

Но мне кажется, что большинство колонок описаны одним и тем же классом left.

А мне бы нужно каждую колонку по-разному, например модель, кол-во, цена - поуже, а имя и, тем более, категории - фиксированной ширины с переносом слов. 

Для меня проблема актуальна - очень длинные категории и названия товаров.

 

Давно дело было))) Насколько мне не изменяет память я установил значения "min-width".

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

стилями установите ширину колонки категорий

Помогите, пожалуйста - не получается.

Там же элемент select, и с длинными именами категорий.... 

Нужно стайлщит править? Но где конкретно и что написать?

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


у кого 1.5.5 или 1.5.6

добавьте методы в ModelCatalogProductAjax,

ну и model_catalog_category заменить на model_catalog_product_ajax

    public function getPath($category_id) {
        $query = $this->db->query("SELECT name, parent_id FROM " . DB_PREFIX . "category c LEFT JOIN " . DB_PREFIX . "category_description cd ON (c.category_id = cd.category_id) WHERE c.category_id = '" . (int)$category_id . "' AND cd.language_id = '" . (int)$this->config->get('config_language_id') . "' ORDER BY c.sort_order, cd.name ASC");
        
        if ($query->row['parent_id']) {
            return $this->getPath($query->row['parent_id'], $this->config->get('config_language_id')) . $this->language->get('text_separator') . $query->row['name'];
        } else {
            return $query->row['name'];
        }
    }
    
    public function getCategories($parent_id = 0) {
        $category_data = $this->cache->get('category.' . (int)$this->config->get('config_language_id') . '.' . (int)$parent_id);
    
        if (!$category_data) {
            $category_data = array();
        
            $query = $this->db->query("SELECT * FROM " . DB_PREFIX . "category c LEFT JOIN " . DB_PREFIX . "category_description cd ON (c.category_id = cd.category_id) WHERE c.parent_id = '" . (int)$parent_id . "' AND cd.language_id = '" . (int)$this->config->get('config_language_id') . "' ORDER BY c.sort_order, cd.name ASC");
        
            foreach ($query->rows as $result) {

                $category_data[] = array(
                    'category_id' => $result['category_id'],
                    'name'        => $this->getPath($result['category_id'], $this->config->get('config_language_id')),
                    'status'        => $result['status'],
                    'sort_order'  => $result['sort_order']
                );
            
                $category_data = array_merge($category_data, $this->getCategories($result['category_id']));
            }    
    
            $this->cache->set('category.' . (int)$this->config->get('config_language_id') . '.' . (int)$parent_id, $category_data);
        }
        
        return $category_data;
    }
Надіслати
Поділитися на інших сайтах

  • 4 weeks later...

а артикул это что за поле?

вот кстати минусы непонятных сборок, понять друг друга не можем

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

а артикул это что за поле?

вот кстати минусы непонятных сборок, понять друг друга не можем

я имею ввиду,чтоб   вместо "Код товара"(как на картинке)( у Вас это поле "Model") фильтр выводил значение артикула..

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


А у меня встречный вопрос как туда добавить код товара?У меня OcStore 1.5.5.1.1 очень нужная вещь при большом количестве товара где названия могут или совпадать или быть неправильными а все крутится вокруг кода товара (sku) и артикула производителя , у меня это (mpn)
Может можно как-то через vqmod добавить эти два поля для фильтрации? Или с редактированием файлов системы...

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


  • 2 weeks later...

 

у кого 1.5.5 или 1.5.6

добавьте методы в ModelCatalogProductAjax,

ну и model_catalog_category заменить на model_catalog_product_ajax

    public function getPath($category_id) {        $query = $this->db->query("SELECT name, parent_id FROM " . DB_PREFIX . "category c LEFT JOIN " . DB_PREFIX . "category_description cd ON (c.category_id = cd.category_id) WHERE c.category_id = '" . (int)$category_id . "' AND cd.language_id = '" . (int)$this->config->get('config_language_id') . "' ORDER BY c.sort_order, cd.name ASC");                if ($query->row['parent_id']) {            return $this->getPath($query->row['parent_id'], $this->config->get('config_language_id')) . $this->language->get('text_separator') . $query->row['name'];        } else {            return $query->row['name'];        }    }        public function getCategories($parent_id = 0) {        $category_data = $this->cache->get('category.' . (int)$this->config->get('config_language_id') . '.' . (int)$parent_id);            if (!$category_data) {            $category_data = array();                    $query = $this->db->query("SELECT * FROM " . DB_PREFIX . "category c LEFT JOIN " . DB_PREFIX . "category_description cd ON (c.category_id = cd.category_id) WHERE c.parent_id = '" . (int)$parent_id . "' AND cd.language_id = '" . (int)$this->config->get('config_language_id') . "' ORDER BY c.sort_order, cd.name ASC");                    foreach ($query->rows as $result) {                $category_data[] = array(                    'category_id' => $result['category_id'],                    'name'        => $this->getPath($result['category_id'], $this->config->get('config_language_id')),                    'status'        => $result['status'],                    'sort_order'  => $result['sort_order']                );                            $category_data = array_merge($category_data, $this->getCategories($result['category_id']));            }                    $this->cache->set('category.' . (int)$this->config->get('config_language_id') . '.' . (int)$parent_id, $category_data);        }                return $category_data;    }

Вроде все добавил как написано, но путь все равно не запоминается. Подскажите, у кого-то заработало после этих изменений? Версия 1.5.5.1...

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


Вот чо пишет на 1.5.5.1

Notice: Error: Unknown column 'main_category' in 'where clause'
Error No: 1054
SELECT c.*, cd.name FROM oc_product_to_category c INNER JOIN oc_category_description cd ON c.category_id = cd.category_id WHERE product_id = '69' AND language_id = '2' AND main_category = '0' in/home/g/gsa3dbhk/shop.4brewers.ru/public_html/system/database/mysql.php on line 50

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


  • 2 weeks later...

 

у кого 1.5.5 или 1.5.6

добавьте методы в ModelCatalogProductAjax,

ну и model_catalog_category заменить на model_catalog_product_ajax

    public function getPath($category_id) {
        $query = $this->db->query("SELECT name, parent_id FROM " . DB_PREFIX . "category c LEFT JOIN " . DB_PREFIX . "category_description cd ON (c.category_id = cd.category_id) WHERE c.category_id = '" . (int)$category_id . "' AND cd.language_id = '" . (int)$this->config->get('config_language_id') . "' ORDER BY c.sort_order, cd.name ASC");
        
        if ($query->row['parent_id']) {
            return $this->getPath($query->row['parent_id'], $this->config->get('config_language_id')) . $this->language->get('text_separator') . $query->row['name'];
        } else {
            return $query->row['name'];
        }
    }
    
    public function getCategories($parent_id = 0) {
        $category_data = $this->cache->get('category.' . (int)$this->config->get('config_language_id') . '.' . (int)$parent_id);
    
        if (!$category_data) {
            $category_data = array();
        
            $query = $this->db->query("SELECT * FROM " . DB_PREFIX . "category c LEFT JOIN " . DB_PREFIX . "category_description cd ON (c.category_id = cd.category_id) WHERE c.parent_id = '" . (int)$parent_id . "' AND cd.language_id = '" . (int)$this->config->get('config_language_id') . "' ORDER BY c.sort_order, cd.name ASC");
        
            foreach ($query->rows as $result) {

                $category_data[] = array(
                    'category_id' => $result['category_id'],
                    'name'        => $this->getPath($result['category_id'], $this->config->get('config_language_id')),
                    'status'        => $result['status'],
                    'sort_order'  => $result['sort_order']
                );
            
                $category_data = array_merge($category_data, $this->getCategories($result['category_id']));
            }    
    
            $this->cache->set('category.' . (int)$this->config->get('config_language_id') . '.' . (int)$parent_id, $category_data);
        }
        
        return $category_data;
    }

Все сделал как Вы сказали, у меня версия 1.5.6. Когда выбираю категорию, фильтр ничего не находит. Не знаю в чем проблема, на локальном все работает, хотя там версия 1.5.4.  Вот скриншоты.

post-675878-0-71508100-1386759313_thumb.png

post-675878-0-53070300-1386759323_thumb.png

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


  • 2 weeks later...

Не проблема,конечно же установлю! А вдруг олень какой себе сей  модуль  прикрутит!? Будет потом разговоров что кнопка Изменить пропала)

 

Кстати проблема в очень длинном названии   подкатегории была! А ежели у кого название подкатегорий из нескольких предложений, вообще только это поле останется!?? 

Я! Я этот олень...  :) Так и подумал, что "Усе пропало шеф".  Через секунд 30 догадался. Спасибо, что задали вопрос насчет стилей.

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


  • 3 weeks later...

Позвольте вопрос, для чего в раздаче файл "productajax_v2_vqmod.xml"?

Если его кинуть в "/vqmod/xml/", то исчезает отображение товаров в админке. У меня версия ocStore 1.5.5.1.1, показалось, что поиск остался прежним. Но самое важное мне необходимо чтобы появился столбец "SKU или код поставщика:"? "Код товара" тоже пусть останется. У меня это разные данные, хотя они и привязаны друг к другу.

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


freelancer, спасибо. Очень удобный модуль, значительно облегчает жизнь. За то что бесплатно - спасибо вдвойне. Успехов в работе!

У меня Опенкарт 1.5.5.1 - с корректировками для этой версии, о которых шла речь выше в этой ветке, все работает отлично!

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


freelancer, спасибо за модуль.

 

Заметил одну ошибку. После установки модуля перестали отображаться акционные цены.

Без модуля в списке товаров видно у каких товаров есть акции (старая цена и новая), а после установки видна только основная цена.

 

Сравнил код /admin/controller/catalog/product_ajax.php и /admin/controller/catalog/product.php, в строке проверки акции есть различия (условие прямообратное)

 

product_ajax.php

if (($product_special['date_start'] == '0000-00-00' || $product_special['date_start'] > date('Y-m-d')) && ($product_special['date_end'] == '0000-00-00' || $product_special['date_end'] < date('Y-m-d'))) {

product.php

if (($product_special['date_start'] == '0000-00-00' || $product_special['date_start'] < date('Y-m-d')) && ($product_special['date_end'] == '0000-00-00' || $product_special['date_end'] > date('Y-m-d'))) {

Если поправить как было в product.php, то все работает как раньше.

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


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

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

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

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

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

Вхід

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

Вхід зараз
×
×
  • Створити...

Important Information

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