-
Публікації
1 126 -
З нами
-
Відвідування
Тип публікації
Профілі
Форум
Маркетплейс
Статті
FAQ
Наші новини
Магазин
Блоги
module__dplus_manager
Повідомлення, опубліковані користувачем Marianna
-
-
ниче в конфигурации не нужно отключать, пусть магазин показывает все товары, но в
\catalog\model\catalog\product.php
в функции 60я гдето строка: public function getProducts($data = array()) ......
за ней ищите второй запрос $sql .= " WHERE pd.language_id = '" . (int)$this->config->get('config_language_id') ........
и в нем вместо p.status = '1' пишите p.status = '1' AND p.quantity > 0
тоже саоме нужно проделать в функции на ~476 строке public function getTotalProducts($data = array()) {
чтобы правильно считалось количество
после чего в списках товаров будут только товары с положительным количеством, разумеется в поиске и по прямой ссылке все также будет работать
не работает этот способ
-
А зачем? Это поле существует в таблице и никому не мешает
Возможно, оно еще участвует в поиске...
у меня лично ошибку писало из-за этого, удалила model = '" . $this->db->escape($data['model']) . "', и теперь ошибки нет
-
Пишу для версии 0.2.0
Чтобы совсем удалить поле model
admin/controller/catalog/product.php - найти: (1119-я строка)
if ((strlen(utf8_decode($this->request->post['model'])) < 1) || (strlen(utf8_decode($this->request->post['model'])) > 64)) { $this->error['model'] = $this->language->get('error_model'); }
Удалить или закомментироватьУбираем model со страницы редактирования товара в админке
admin/view/template/catalog/product_form.tpl - найти: (61-я строка)
<tr> <td><span class="required">*</span> <?php echo $entry_model; ?></td> <td><input type="text" name="model" value="<?php echo $model; ?>" /> <?php if ($error_model) { ?> <span class="error"><?php echo $error_model; ?></span> <?php } ?></td> </tr>
УдалитьУбираем вывод модели со страницы продукта
catalog/view/theme/ВАША ТЕМА/template/product/product.tpl - найти (31-я строка в стандартном шаблоне)
<tr> <td><b><?php echo $text_model; ?></b></td> <td><?php echo $model; ?></td> </tr>
УдалитьУбираем вывод модели со страницы категории
catalog/view/theme/ВАША ТЕМА/template/product/category.tpl - найти (53-я строка в стандартном шаблоне)
<span style="color: #999; font-size: 11px;"><?php echo $products[$j]['model']; ?></span><br />
УдалитьУбираем model со страницы корзины
catalog/view/theme/ВАША ТЕМА/template/checkout/cart.tpl - найти (25-я строка и 47-ая в стандартном шаблоне)
<th align="left"><?php echo $column_model; ?></th>
<td align="left" valign="top"><?php echo $product['model']; ?></td>
УдалитьУбираем model со страницы подтверждения заказа
catalog/view/theme/ВАША ТЕМА/template/checkout/confirm.tpl - найти (44-я строка и 56-ая в стандартном шаблоне)
<th align="left"><?php echo $column_model; ?></th>
<td align="left" valign="top"><?php echo $product['model']; ?></td>
УдалитьУбираем model со страницы в истории заказов пользователя
catalog/view/theme/ВАША ТЕМА/template/account/invoice.tpl - найти (54-я строка и 66-ая в стандартном шаблоне)
<th align="left"><?php echo $text_model; ?></th>
<td align="left" valign="top"><?php echo $product['model']; ?></td>
УдалитьУбираем model с письма, которое приходит пользователю после заказа
catalog/view/theme/ВАША ТЕМА/template/mail/order_confirm.tpl - найти (60-я строка и 72-ая в стандартном шаблоне)
<th align="left" style="width: 15%; padding: 0.3em; color: #FFFFFF;"><?php echo $column_model; ?></th>
<td align="left"><?php echo $product['model']; ?></td>
УдалитьВозможно, еще где-то model придется удалить - я написал те места, о которых вспомнил
Чтобы сделать поле model не обязательным к заполнению
admin/controller/catalog/product.php - найти: (1119-я строка)
if ((strlen(utf8_decode($this->request->post['model'])) < 1) || (strlen(utf8_decode($this->request->post['model'])) > 64)) { $this->error['model'] = $this->language->get('error_model'); }
Заменить наif (strlen(utf8_decode($this->request->post['model']) > 64) { $this->error['model'] = $this->language->get('error_model'); }
Но тогда, если model вы не заполните, то и выводится на страницы товара и категории будет пусто значение. Придется или вводить условие на вывод или убирать вывод. Короче, проще удалить поле совсемА что разве обращение к базе данных вырезать из модели не надо?
-
тема закрыта, вопрос частично решен
и как решили?
-
Я сделал это в модели. Мне надо что бы товары которых нет в наличии были внизу списка при любой сортировке.
catalog\model\catalog\product.php (187 line для OpenCart 1.5.6.1)
if (isset($data['sort']) && in_array($data['sort'], $sort_data)) { if ($data['sort'] == 'pd.name' || $data['sort'] == 'p.model') { $sql .= " ORDER BY LCASE(" . $data['sort'] . ")"; } elseif ($data['sort'] == 'p.price') { $sql .= " ORDER BY (CASE WHEN special IS NOT NULL THEN special WHEN discount IS NOT NULL THEN discount ELSE p.price END)"; } else { $sql .= " ORDER BY " . $data['sort']; } } else { $sql .= " ORDER BY p.sort_order"; }
меняем на
if (isset($data['sort']) && in_array($data['sort'], $sort_data)) { if ($data['sort'] == 'pd.name' || $data['sort'] == 'p.model') { $sql .= " ORDER BY (p.quantity>0) DESC, LCASE(" . $data['sort'] . ")"; } elseif ($data['sort'] == 'p.price') { $sql .= " ORDER BY (p.quantity>0) DESC, (CASE WHEN special IS NOT NULL THEN special WHEN discount IS NOT NULL THEN discount ELSE p.price END)"; } else { $sql .= " ORDER BY (p.quantity>0) DESC," . $data['sort']; } } else { $sql .= " ORDER BY (p.quantity>0) DESC, p.sort_order"; }
Так же я решил вообще не показывать в похожих продуты, которых нет в наличии. Для этого в функции getProductRelated добавляем условие: p.quantity > 0
При желании можно тоже отображать в конце по аналогии с категорией. Ну и тоже самое в бестселлерах, популярных, последних и т.п.
P.S. Не знаю насколько это решение правильное и красивое, но работает.
наконец рабочий вариант, который подошел и для фильтра про
-
а для товара такое есть?
-
вот нашел на забугорном сайте...работает на УРА через vqmod
hide_out_of_stock_products.xml
скрывает все продукты в витрине, которых нет на складе или кол-во ноль
создает пустые товары без названия фото и т.д. в списке категории :(
-
-
UPDATE `oc_product_option_value` SET subtract=1
-
Как сделать уже у существующих опций в магазине - вычитать со склада - на всех слово да? на некоторых стоит нет, но товара много, и в 6000 руками редактировать нереально
-
У меня тоже поле остается пустым при записи через админку. При этом в логах ошибки
PHP Notice: Undefined index: seo_title in /vqmod/vqcache/vq2-admin_model_catalog_product.php on line 160 PHP Notice: Undefined index: seo_h1 in /vqmod/vqcache/vq2-admin_model_catalog_product.php on line 160
Такие ошибки при добавлении seo_title и seo_h1 только для товаров. Для категорий все работает. В чем может быть причина? Как можно посмотреть какие действия выполняются при нажатии на кнопку Сохранить?
это из-за того что в старт посте речь идет о meta_title а модули и сборка окстор работает с ячейками под названием seo_title, то есть вместо meta нужно подставить seo.
-
Нужно написать или изменить уже любой имеющий модуль о поступлении товара "сообщить мне о поступлении", то есть появляется эта кнопка если у опции количество 0. Как раз реализацию для опции подобного я не видела. Напишите пожалуйста стоимость.
И еще нужно для опции возможность выбора из выпадающего списка непосредственно из самой категории, затем нажатии кнопки купить и попадании в корзину или на всплывающую, тоже интересует стоимость.
-
по дефоту сортировка по названию.
public function getZonesByCountryId($country_id) { $zone_data = $this->cache->get('zone.' . (int)$country_id); if (!$zone_data) { $query = $this->db->query("SELECT * FROM " . DB_PREFIX . "zone WHERE country_id = '" . (int)$country_id . "' AND status = '1' ORDER BY name"); $zone_data = $query->rows; $this->cache->set('zone.' . (int)$country_id, $zone_data); } return $zone_data; }
что бы определенный регион был первым в списке можно добавить его id в order таким образомORDER BY zone_id!=555, name
булевское выражение zone_id != 555 == true для всех id, кроме 555. false>true потому запись с id =555 будет первойне дошло как это правильно написать
https://opencartforum.com/topic/29801-%D1%81%D0%BE%D1%80%D1%82%D0%B8%D1%80%D0%BE%D0%B2%D0%BA%D0%B0-%D1%80%D0%B5%D0%B3%D0%B8%D0%BE%D0%BD%D0%BE%D0%B2-%D0%BF%D0%BE-%D1%81%D0%BE%D0%B1%D1%81%D1%82%D0%B2%D0%B5%D0%BD%D0%BD%D0%BE%D0%BC%D1%83-%D0%B6%D0%B5%D0%BB%D0%B0%D0%BD%D0%B8%D1%8E/ воспользовалась этим, но спасибо Фрилансеру тоже, погуглила его совет и нашла ту ссылку
-
Хорошо спасибо, но если мне нужно, несколько стран, видеть в списке первыми?
И где аналогичное произвести с регионами?
И к сожалению я не понял, куда последний пункт, прикручивать?
мне нужно сделать вверху один город, наверное может как-то по аналогии сортировки товара сделать
-
и еще добавил кусок кода для CKEDITOR
CKEDITOR.replace('description1<?php echo $language['language_id']; ?>', { language: '<?php echo $lang; ?>', filebrowserBrowseUrl: 'index.php?route=common/filemanager&token=<?php echo $token; ?>', filebrowserImageBrowseUrl: 'index.php?route=common/filemanager&token=<?php echo $token; ?>', filebrowserFlashBrowseUrl: 'index.php?route=common/filemanager&token=<?php echo $token; ?>', filebrowserUploadUrl: 'index.php?route=common/filemanager&token=<?php echo $token; ?>', filebrowserImageUploadUrl: 'index.php?route=common/filemanager&token=<?php echo $token; ?>', filebrowserFlashUploadUrl: 'index.php?route=common/filemanager&token=<?php echo $token; ?>' });
Забыли тут в теме для не знающих еще добавить, куда это добавлять.
з.ы добрый человек подсказал что в файл category_form.tpl
-
Спасибо большое, этот вариант подошел для версии 1.5.5.1.2 сборки оксторе.
-
я про то, если сайт Ваш. а с чужого сайта парсю исключительно content downloader. Выкачивает всё, в том числе и категории (в 99% случаев).
в каком видео он выкачивает категории?
-
есть бесплатный модуль импорт/экспорт эксель. при экспорте выгружаются все категории с ихними id. и потом прописать их не такая уж и большая проблема.
как я их выгружу или сайт конкурент с которого надо спарсить?
-
при установке, на странице модуля и удалении возникает ошибка:
Warning: mysql_query() [function.mysql-query]: Access denied for user ''@'localhost' (using password: NO) in /home/d/.../public_html/admin/model/catalog/coolfilter.php on line 219Warning: mysql_query() [function.mysql-query]: A link to the server could not be established in /home/d/.../public_html/admin/model/catalog/coolfilter.php on line 219Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in /home/d/.../public_html/admin/model/catalog/coolfilter.php on line 219Warning: Cannot modify header information - headers already sent by (output started at /home/d/.../public_html/admin/index.php:85) in /home/d/.../public_html/vqmod/vqcache/vq2-system_engine_controller.php on line 28Warning: Cannot modify header information - headers already sent by (output started at /home/d/.../public_html/admin/index.php:85) in /home/d/.../public_html/vqmod/vqcache/vq2-system_engine_controller.php on line 29
подскажите,как исправить?
тоже самое
-
Категории парсить не советую, это сделать не просто.
На стр Данные нужно все равно их прописать, т.е. предусмотреть, какие категории будут спарсены.
В общем, головняк :)
Лучше, вставить их в прайс руками и автоматом, создать стр. Данные.
вставить руками категории в прайс на более тысячи товара? О_о если ссылки можо взять из sitemap то категории никак.
-
как быть с парсингом категорий, нужно чтобы в прайсе уже была написана категория или ее тоже можно спарсить? что тогда нужно указать в категориях на вкладке данные?
-
может в конфиге лишний слеш?
-
Нужен человек, который работал ранее с модулем
Нужно настроить для 2-х поставщиков. Чтобы все корректно загружалось, парсилось, добавлялось.
Один уже на половину настроен.
Цена: 1000 рублей.
Здравствуйте! Могу помочь.
-
Шаблон выбран. будет оплачен или перерисован нами.
Нужен простой интернет магазин под ключ.
Требования:
- вменяемые сроков до 2 недель.
- наличие портфолио на ОС.
- исполнитель географически находится в Украине.
- акуратность, компетентность.
На ОС это первый проект, возможны уточнения и вопросы по ходу.
В дальнейшем по этому проекту исполнитель будет привлекаться к обслуживанию и модернизации.
Что именно нужно?
Модуль SQL менеджер SQL Buddy [Поддержка]
в Модули обмена данными
Опубліковано:
Warning: mysql_close(): 31 is not a valid MySQL-Link resource in /var/www/system/database/mysql.php on line 67