-
Posts
1,097 -
Joined
-
Last visited
Content Type
Profiles
Forums
Marketplace
Articles
FAQ
Our New
Store
Blogs
module__dplus_manager
Everything posted by niger
-
290грн самий дешевий. І його для маленького інтернет-магазину вистачить 100%
-
У гугл серч консоль подивився.
-
$this->load->model('catalog/category'); $this->load->model('catalog/product'); if (isset($this->request->get['product_id'])) { $product_id = (int)$this->request->get['product_id']; $categories = $this->model_catalog_product->getCategories($product_id); if ($categories) { $category_id = $categories[0]['category_id']; // берем першу категорію товара // Получаем товары из этой категории $filter_data = array( 'filter_category_id' => $category_id, 'start' => 0, 'limit' => 10 // Кількість товарів для виводу ); $products = $this->model_catalog_product->getProducts($filter_data); $data['related_products'] = array(); foreach ($products as $result) { if ($result['product_id'] != $product_id) { // Виключаємо наш товар $data['related_products'][] = array( 'product_id' => $result['product_id'], 'thumb' => $this->model_tool_image->resize($result['image'], 200, 200), 'name' => $result['name'], 'price' => $this->currency->format($this->tax->calculate($result['price'], $result['tax_class_id'], $this->config->get('config_tax'))), 'href' => $this->url->link('product/product', 'product_id=' . $result['product_id']) ); } } } } <?php if (!empty($related_products)) { ?> <h3>Товари із цієй категорії</h3> <div class="row"> <?php foreach ($related_products as $product) { ?> <div class="product-layout col-lg-3 col-md-3 col-sm-6 col-xs-12"> <div class="product-thumb"> <div class="image"> <a href="<?php echo $product['href']; ?>"> <img src="<?php echo $product['thumb']; ?>" alt="<?php echo $product['name']; ?>" title="<?php echo $product['name']; ?>" class="img-responsive" /> </a> </div> <div class="caption"> <h4><a href="<?php echo $product['href']; ?>"><?php echo $product['name']; ?></a></h4> <p class="price"><?php echo $product['price']; ?></p> </div> </div> </div> <?php } ?> </div> <?php } ?> Якось так здається має бути Перше це в контролер продукту додати треба, друге у вьюшку
-
Одне діло робити модуль за $13 який хоча б комусь треба окрім однієї людини, а для одного то хоча б 25 треба. Бо треба окрім запросу зробити controller та View, а там саме гидке буде - це не так, це посунь, це погано видно, ой, а зроби щоб якщо два товари, то щоб виводило хто купував обидва, за останній місяць, за три дні, а хто купував місяць тому, а цього місяця не купував. Доступи не ті дали, не то знайшли, недостатньо прав. А це все час.
-
Зайшов у себе подивився - 90к пише серпстат. Але в мене немає навіть 70 категорії. СЕО ключ це те, по яким запросим вас взагалі ранжує пошукова система. Тобто у вас навіть на 1 товар може бути 10 а то і більше ключів. І це тільки для однієї мови. Типу такого Товар Товар доставка Товар ціна Товар вартість Товар купити Купити товар Купити товар в Києві Купити товар Львів Товар продаж і т.п Я відкрив у Search console Результати пошуку Там клацнув на сторінку товара і на нього веде 201 ключ. Інша сторінка товару 389 ключів - і це лише для однієї мови Ось як приклад частка маленька ключів для одного товару вид_товару товар цена товар купить товар цена за одиниця_виміру товар цена вид_товару товар купить товар товар купить днепр товар купить вид_товару товар вид_товару товар купить купить вид_товару товар в украине купить товар украина цена товара в украине товар купить украина цена вид_товару товар вид_товару товар цена за одиниця_виміру вид_товару товар фото цена вид_товару товар цена украина товар вид_товару купить товар одиниця_виміру цена товар вид_товару вид_товару товар фото товар купить киев товар вид_товару цена сколько стоит вид_товару товар вид_товару цена сколько стоит товар цена товара купить вид_товару вид_товару товар стоимость вид_товару товар цена за одиниця_виміру вид_товару цена украина вид_товару товар фото в упаковке купить товар в украине
-
Стал долго грузится в категориях сайт
niger replied to Alexlife's topic in Opencart 3.x: Setting and optimization
сам по собі він прилягти в один день не міг. Єдине що відразу кидається в очі - це помилка 504. Скоріш за все у вас або модуль, або тема, чи якесь рішення кублене - і воно ходить до власника модуля/теми із запитом, чи можете ви користуватися, і ось той сервер не може відповісти, а тому 504. Чи у вас є якийсь сервіс на сайті, який бере данні з іншого серверу, а той не відповідає - і тому 504 отримуєте ви. Шукайте у вихідних зʼєднаннях, хто і куди ходить. -
А звідки ви знаєте, без аналізу конкурента, що в нього 170к ключових слів?
-
так легше зробити. А варіантів дуже багато.
-
Можно кнопку "Заказать" переделать через языковые файлы и контроллер на "Посетить сайт" и вешать на нее разные линки на сайты. А можно ее убрать и эти ссылки указывать в опциях, и выводить вместо этой кнопки подменив в контроллере
-
Какую версию OpenCart выбрать?
niger replied to torsar's topic in Opencart 4.x: Installing and updating
Сьогодні в 4 додали OCMOD Version Release Notes 4.1.0.0 ADDED OCMOD back!! French language Blog system UPDATED order editor. normalised the ordered editor system. FIXED Subscription system Please read release notes for full list https://github.com/opencart/opencart/releases/tag/4.1.0.0 -
Ви самі відповіли на своє питання. При імпорту вибірковому все ок - тобто памʼяті вистачає, а при повному не вистачає. Звідси робиться простий та логічний висновок - або робити імпорт\експорт частковими партіями, або збільшувати ліміт памʼяті, який скоріш за все вже максимум для звичайного віртуального хостингу. Тож або переписуйте модуль, щоб він робив чанками імпорт\експорт, або самі розбивайте на 2,3,4....n частки файли, та імпортуйте частками.
-
Самая низкая и самая большая цена товара в категории
niger replied to AlexMax13's topic in Opencart 3.x: General questions
$data['minPrice'] = $data['maxPrice'] = 0; if ($this->ocfilter->api->isSelected()) { $this->load->model('extension/module/ocfilter'); $price_range = $this->model_extension_module_ocfilter->getPriceSliderRange($this->ocfilter->filter->getFilterModelData()); if (($price_range['min'] + $price_range['max']) > 0) { $data['minPrice'] = $price_range['min']; $data['maxPrice'] = $price_range['max']; } } else { $data['minPrice'] = $this->currency->format($this->model_catalog_category->getMinPrice($category_id), $this->session->data['currency'],'',false); $data['maxPrice'] = $this->currency->format($this->model_catalog_category->getMaxPrice($category_id), $this->session->data['currency'],'',false); } А це в контролері, якщо ми юзаємо фільтрацію ocfilter то беремо з нього. якщо без фільтрації, то беремо із отих методів в моделі що вище для них кинув запит у базу -
Самая низкая и самая большая цена товара в категории
niger replied to AlexMax13's topic in Opencart 3.x: General questions
$sql = "SELECT MIN(p.price) AS minprice FROM " . DB_PREFIX . "product p LEFT JOIN " . DB_PREFIX . "product_to_category pc ON (p.product_id = pc.product_id) LEFT JOIN " . DB_PREFIX . "category_path cp ON (cp.category_id = pc.category_id) WHERE cp.path_id = '" . (int)$category_id . "' AND p.status = '1'"; $sql = "SELECT MIN(p.price) AS minprice FROM " . DB_PREFIX . "product p LEFT JOIN " . DB_PREFIX . "product_to_category pc ON (p.product_id = pc.product_id) WHERE pc.category_id = '" . (int)$category_id . "' AND p.status = '1'"; $sql = "SELECT MAX(p.price) AS maxprice FROM " . DB_PREFIX . "product p LEFT JOIN " . DB_PREFIX . "product_to_category pc ON (p.product_id = pc.product_id) LEFT JOIN " . DB_PREFIX . "category_path cp ON (cp.category_id = pc.category_id) WHERE cp.path_id = '" . (int)$category_id . "' AND p.status = '1'"; $sql = "SELECT MAX(p.price) AS maxprice FROM " . DB_PREFIX . "product p LEFT JOIN " . DB_PREFIX . "product_to_category pc ON (p.product_id = pc.product_id) WHERE pc.category_id = '" . (int)$category_id . "' AND p.status = '1'"; Це як приклад запит в базу в моделі із субкатегоріями, та без. -
якщо встановлен Simple подивіться там.
-
Как подключить к корзине возможность оплаты через Nova Pay
niger replied to Kovast's topic in Opencart 3.x: Extension search
гарно, навіть дуже, на словах це монобанк? хоча мені здається навіть в монобанку немає 15 000 професіоналів у ФінТеч в Україні Увесь скрін якщо хтось на сайті виправить -
Як на мене не має бути розповсюдження модуля із посиланням у файлі. Людина купляє тут модуль і вважає що його промодерували тут модери і дозволили його розмістити, бо файли модуля перевірили, і тому ти завантажуєш тут всі необхідні файли, а так виходить - тобі дають посилання, а там через пару днів вже гівно яке ламає сайт, і ніхто не перевіряв, що там зараз знаходиться, лише під час допущення до розміщення, або хтось заволодів доменом і там підкинув вірусів.
-
Ні, але це завжди буде питання вартості захисту, та скільки платять за парсинг чи за спам форми. Ці боти, які заповнюють форми, вимикаються за допомоги рекаптчі у більшості випадків. Також можна пару поведінок додати - форма не може відправитись без івенту її відкрити, клік по кнопці, ще сюди ж, форма не викликається першим заходом\запитом(як вище писали, повинна бути кука, або класти в localstorage), також форма не відправляється миттєво, а 10+ секунд людині треба якнайменше щоб її заповнити. Ну і ще можна додати динамічні назви полів, та пару "схованих", якщо хоча б одне із "схованих" відправляється - то теж в ліс.
-
Цьому є докази, ви особисто обходили та використовували ці методи обходу, чи читали десь в інтернетах від скріпт-кіддіс, або може вам хтось про це розказав?
-
Сортування категорій в адмінці картки товарів
niger replied to NataliVar's topic in Opencart 3.x: Setting and optimization
admin model catalog category getAllCategories -
Нужна помощь в скидках на колилчество товара в корзине
niger replied to OMGsite's topic in Opencart 3.x: Sandbox
Чи можна ось так зібрати ocmod, але треба перевірити <?xml version="1.0" encoding="utf-8"?> <modification> <name>Quantity Based Cart Discount</name> <code>quantity_based_cart_discount</code> <version>1.0</version> <author>niger</author> <link>https://www.example.com</link> <file path="catalog/model/checkout/cart.php"> <operation> <search position="after"><![CDATA[ $products = $this->getProducts(); ]]></search> <add><![CDATA[ $total_quantity = 0; foreach ($products as $product) { $total_quantity += $product['quantity']; } if ($total_quantity >= 4) { $discount_quantity_percentage = 0.30; } elseif ($total_quantity == 3) { $discount_quantity_percentage = 0.25; } elseif ($total_quantity == 2) { $discount_quantity_percentage = 0.15; } elseif ($total_quantity == 1) { $discount_quantity_percentage = 0.05; } else { $discount_quantity_percentage = 0; } if ($discount_percentage > 0) { $total = $total - ($total * $discount_quantity_percentage); $total_data[] = array( 'code' => 'quantity_discount', 'title' => 'Знижка за кількість товарів (' . ($discount_quantity_percentage * 100) . '%)', 'text' => '-' . $this->currency->format($this->tax->calculate($total * $discount_quantity_percentage, 0, $this->config->get('config_tax'))), 'value' => $total * $discount_quantity_percentage, 'sort_order' => 1 ); } ]]></add> </operation> </file> <file path="catalog/view/theme/*/template/checkout/cart.twig"> <operation> <search position="before"><![CDATA[ </tbody> ]]></search> <add><![CDATA[ {% if quantity_discount %} <tr> <td colspan="4" class="text-right"><strong>Знижка за кількість товарів</strong></td> <td class="text-right">-{{ quantity_discount }}</td> </tr> {% endif %} ]]></add> </operation> </file> <file path="catalog/view/theme/default/template/checkout/confirm.twig"> <operation> <search position="before"><![CDATA[ </tbody> ]]></search> <add><![CDATA[ {% if quantity_discount %} <tr> <td colspan="4" class="text-right"><strong>Знижка за кількість товарів</strong></td> <td class="text-right" style="color: red;">-{{ quantity_discount }}</td> </tr> {% endif %} ]]></add> </operation> </file> <file path="catalog/controller/checkout/cart.php"> <operation> <search position="after"><![CDATA[ $data['products'] = array(); ]]></search> <add><![CDATA[ $data['quantity_discount'] = ''; if (isset($total_data)) { foreach ($total_data as $total_line) { if ($total_line['code'] == 'quantity_discount') { $data['quantity_discount'] = $total_line['text']; } } } ]]></add> </operation> </file> <file path="catalog/controller/checkout/confirm.php"> <operation> <search position="after"><![CDATA[ $data['totals'] = array(); ]]></search> <add><![CDATA[ $data['quantity_discount'] = ''; if (isset($totals)) { foreach ($totals as $total_line) { if ($total_line['code'] == 'quantity_discount') { $data['quantity_discount'] = $total_line['text']; } } } ]]></add> </operation> </file> </modification> -
так він там і раніше зʼявився.
- 32 replies
-
- загрука
- загрузка yml
-
(and 30 more)
Tagged with:
- загрука
- загрузка yml
- загрузка товаров
- импорт товаров
- экспорт товаров
- парсинг сайтов
- excel
- xls
- xlsx
- csv
- yml
- xml
- word
- наполнение товаром
- import
- export
- parsing
- массовый редактор
- chat gpt
- переводчик описаний товаров
- перевод
- автоматический импорт
- автоматизация
- автоматическая выгрузка товаров
- автоматическое обновление
- автоматическое заполнение
- автоматическое заполнение seo url
- наполнение магазина
- поставщики
- фид
- фид для гугл
- фид товаров
-
@Support ви би не могли десь виправити, і таке писати ВЕЛИКИМИ літерами, біля кнопки придбання. Бо ось тут пишуть Оновлення на рік, і доступ можна продовжити за 30 доларів. А автор пише, що через рік клієнт вже не зможе користуватися Тож це не покупка модуля, а оренда.
- 32 replies
-
- 2
-
-
- загрука
- загрузка yml
-
(and 30 more)
Tagged with:
- загрука
- загрузка yml
- загрузка товаров
- импорт товаров
- экспорт товаров
- парсинг сайтов
- excel
- xls
- xlsx
- csv
- yml
- xml
- word
- наполнение товаром
- import
- export
- parsing
- массовый редактор
- chat gpt
- переводчик описаний товаров
- перевод
- автоматический импорт
- автоматизация
- автоматическая выгрузка товаров
- автоматическое обновление
- автоматическое заполнение
- автоматическое заполнение seo url
- наполнение магазина
- поставщики
- фид
- фид для гугл
- фид товаров