Guest Posted May 31, 2013 Share Posted May 31, 2013 Как в категории у каждого товара вывести цифру количества рекомендуемых товаров данного товара? Link to comment Share on other sites More sharing options...
cmd Posted May 31, 2013 Share Posted May 31, 2013 рекомендуемых товаров данного товара :? О чем речь? Каждому товару присвоены связи с другими товарами и Вы хотите посчитать количество связей для каждого конкретного товара? Link to comment Share on other sites More sharing options... Guest Posted May 31, 2013 Share Posted May 31, 2013 рекомендуемых товаров данного товара :? О чем речь? К товару присвоена связь с другими товарами и Вы хотите посчитать количество связей для каждого товара? На странице категории у каждого товара вывести число рекомендуемых товаров данного товара. Мне кажется верно изъяснился Link to comment Share on other sites More sharing options... cmd Posted May 31, 2013 Share Posted May 31, 2013 Ага. Понял. Звучит очень непрактично, но задача интересная. Ща напишу решение... 10 минут...) Link to comment Share on other sites More sharing options... Guest Posted May 31, 2013 Share Posted May 31, 2013 мне кажется нужно подсчет рекомендуемых делать при выводе в цикле товаров на странице категории, и в его контроллере Ага. Понял. Звучит очень непрактично, но задача интересная. Ща напишу решение... 10 минут...) Link to comment Share on other sites More sharing options... cmd Posted May 31, 2013 Share Posted May 31, 2013 В контрллере категории catalog\controller\product\category.php Есть строка $results = $this->model_catalog_product->getProducts($data); Поэтому залазим в контроллер catalog\model\catalog\product.php и находим метод getProducts(). Там мы видим SQL запрос. Переписываем его. $sql = "SELECT p.product_id, (SELECT AVG(rating) AS total FROM " . DB_PREFIX . "review r1 WHERE r1.product_id = p.product_id AND r1.status = '1' GROUP BY r1.product_id) AS rating, (SELECT COUNT(*) FROM " . DB_PREFIX . "product_related pr WHERE pr.product_id = p.product_id) AS related, (SELECT price FROM " . DB_PREFIX . "product_discount pd2 WHERE pd2.product_id = p.product_id AND pd2.customer_group_id = '" . (int)$customer_group_id . "' AND pd2.quantity = '1' AND ((pd2.date_start = '0000-00-00' OR pd2.date_start < NOW()) AND (pd2.date_end = '0000-00-00' OR pd2.date_end > NOW())) ORDER BY pd2.priority ASC, pd2.price ASC LIMIT 1) AS discount, (SELECT price FROM " . DB_PREFIX . "product_special ps WHERE ps.product_id = p.product_id AND ps.customer_group_id = '" . (int)$customer_group_id . "' AND ((ps.date_start = '0000-00-00' OR ps.date_start < NOW()) AND (ps.date_end = '0000-00-00' OR ps.date_end > NOW())) ORDER BY ps.priority ASC, ps.price ASC LIMIT 1) AS special"; Все... Дальше не интересно. В файле catalog\view\theme\ваш_шаблон\template\product\category.tpl теперь доступна переменная $product['related'], которая содержит числовое значение. P.S. Сам не проверял. UPDATED: Кажется я фигню написал. Там ниже вызов в цикле: foreach ($query->rows as $result) { $product_data[$result['product_id']] = $this->getProduct($result['product_id']); } О, чудесный OpenCart! О, божественная архитектура! Значит так... Забыли про getProducts. Вместо того, чтобы редактировать метод getProducts нужно редактировать getProduct по аналогии т.е. $query = $this->db->query("SELECT DISTINCT *, pd.name AS name, p.image, m.name AS manufacturer, (SELECT price FROM " . DB_PREFIX . "product_discount pd2 WHERE pd2.product_id = p.product_id AND pd2.customer_group_id = '" . (int)$customer_group_id . "' AND pd2.quantity = '1' AND ((pd2.date_start = '0000-00-00' OR pd2.date_start < NOW()) AND (pd2.date_end = '0000-00-00' OR pd2.date_end > NOW())) ORDER BY pd2.priority ASC, pd2.price ASC LIMIT 1) AS discount, (SELECT COUNT(*) FROM " . DB_PREFIX . "product_related pr WHERE pr.product_id = p.product_id) AS related, (SELECT price FROM " . DB_PREFIX . "product_special ps WHERE ps.product_id = p.product_id AND ps.customer_group_id = '" . (int)$customer_group_id . "' AND ((ps.date_start = '0000-00-00' OR ps.date_start < NOW()) AND (ps.date_end = '0000-00-00' OR ps.date_end > NOW())) ORDER BY ps.priority ASC, ps.price ASC LIMIT 1) AS special, (SELECT points FROM " . DB_PREFIX . "product_reward pr WHERE pr.product_id = p.product_id AND customer_group_id = '" . (int)$customer_group_id . "') AS reward, (SELECT ss.name FROM " . DB_PREFIX . "stock_status ss WHERE ss.stock_status_id = p.stock_status_id AND ss.language_id = '" . (int)$this->config->get('config_language_id') . "') AS stock_status, (SELECT wcd.unit FROM " . DB_PREFIX . "weight_class_description wcd WHERE p.weight_class_id = wcd.weight_class_id AND wcd.language_id = '" . (int)$this->config->get('config_language_id') . "') AS weight_class, (SELECT lcd.unit FROM " . DB_PREFIX . "length_class_description lcd WHERE p.length_class_id = lcd.length_class_id AND lcd.language_id = '" . (int)$this->config->get('config_language_id') . "') AS length_class, (SELECT AVG(rating) AS total FROM " . DB_PREFIX . "review r1 WHERE r1.product_id = p.product_id AND r1.status = '1' GROUP BY r1.product_id) AS rating, (SELECT COUNT(*) AS total FROM " . DB_PREFIX . "review r2 WHERE r2.product_id = p.product_id AND r2.status = '1' GROUP BY r2.product_id) AS reviews, p.sort_order FROM " . DB_PREFIX . "product p LEFT JOIN " . DB_PREFIX . "product_description pd ON (p.product_id = pd.product_id) LEFT JOIN " . DB_PREFIX . "product_to_store p2s ON (p.product_id = p2s.product_id) LEFT JOIN " . DB_PREFIX . "manufacturer m ON (p.manufacturer_id = m.manufacturer_id) WHERE p.product_id = '" . (int)$product_id . "' AND pd.language_id = '" . (int)$this->config->get('config_language_id') . "' AND p.status = '1' AND p.date_available <= NOW() AND p2s.store_id = '" . (int)$this->config->get('config_store_id') . "'"); UPDATE 2: В этом прекрасном полотне надо добавить if ($query->num_rows) { return array( 'product_id' => $query->row['product_id'], 'related' => $query->row['related'], // вот это добавлено 'name' => $query->row['name'], 'description' => $query->row['description'], 'meta_description' => $query->row['meta_description'], 'meta_keyword' => $query->row['meta_keyword'], 'tag' => $query->row['tag'], 'model' => $query->row['model'], 'sku' => $query->row['sku'], 'upc' => $query->row['upc'], 'ean' => $query->row['ean'], 'jan' => $query->row['jan'], 'isbn' => $query->row['isbn'], 'mpn' => $query->row['mpn'], 'location' => $query->row['location'], 'quantity' => $query->row['quantity'], 'stock_status' => $query->row['stock_status'], 'image' => $query->row['image'], 'manufacturer_id' => $query->row['manufacturer_id'], 'manufacturer' => $query->row['manufacturer'], 'price' => ($query->row['discount'] ? $query->row['discount'] : $query->row['price']), 'special' => $query->row['special'], 'reward' => $query->row['reward'], 'points' => $query->row['points'], 'tax_class_id' => $query->row['tax_class_id'], 'date_available' => $query->row['date_available'], 'weight' => $query->row['weight'], 'weight_class_id' => $query->row['weight_class_id'], 'length' => $query->row['length'], 'width' => $query->row['width'], 'height' => $query->row['height'], 'length_class_id' => $query->row['length_class_id'], 'subtract' => $query->row['subtract'], 'rating' => round($query->row['rating']), 'reviews' => $query->row['reviews'] ? $query->row['reviews'] : 0, 'minimum' => $query->row['minimum'], 'sort_order' => $query->row['sort_order'], 'status' => $query->row['status'], 'date_added' => $query->row['date_added'], 'date_modified' => $query->row['date_modified'], 'viewed' => $query->row['viewed'] ); Link to comment Share on other sites More sharing options... Guest Posted May 31, 2013 Share Posted May 31, 2013 не понял, то что написали не работает? Link to comment Share on other sites More sharing options... Guest Posted May 31, 2013 Share Posted May 31, 2013 UPDATE 2: это в каком файле и строке? Link to comment Share on other sites More sharing options... Guest Posted May 31, 2013 Share Posted May 31, 2013 версия 1.5.3.1 Link to comment Share on other sites More sharing options... Guest Posted May 31, 2013 Share Posted May 31, 2013 public function getProduct($product_id) { if ($this->customer->isLogged()) { $customer_group_id = $this->customer->getCustomerGroupId(); } else { $customer_group_id = $this->config->get('config_customer_group_id'); } //$query = $this->db->query("SELECT DISTINCT *, pd.name AS name, p.image, m.name AS manufacturer, (SELECT price FROM " . DB_PREFIX . "product_discount pd2 WHERE pd2.product_id = p.product_id AND pd2.customer_group_id = '" . (int)$customer_group_id . "' AND pd2.quantity = '1' AND ((pd2.date_start = '0000-00-00' OR pd2.date_start < NOW()) AND (pd2.date_end = '0000-00-00' OR pd2.date_end > NOW())) ORDER BY pd2.priority ASC, pd2.price ASC LIMIT 1) AS discount, (SELECT price FROM " . DB_PREFIX . "product_special ps WHERE ps.product_id = p.product_id AND ps.customer_group_id = '" . (int)$customer_group_id . "' AND ((ps.date_start = '0000-00-00' OR ps.date_start < NOW()) AND (ps.date_end = '0000-00-00' OR ps.date_end > NOW())) ORDER BY ps.priority ASC, ps.price ASC LIMIT 1) AS special, (SELECT points FROM " . DB_PREFIX . "product_reward pr WHERE pr.product_id = p.product_id AND customer_group_id = '" . (int)$customer_group_id . "') AS reward, (SELECT ss.name FROM " . DB_PREFIX . "stock_status ss WHERE ss.stock_status_id = p.stock_status_id AND ss.language_id = '" . (int)$this->config->get('config_language_id') . "') AS stock_status, (SELECT wcd.unit FROM " . DB_PREFIX . "weight_class_description wcd WHERE p.weight_class_id = wcd.weight_class_id AND wcd.language_id = '" . (int)$this->config->get('config_language_id') . "') AS weight_class, (SELECT lcd.unit FROM " . DB_PREFIX . "length_class_description lcd WHERE p.length_class_id = lcd.length_class_id AND lcd.language_id = '" . (int)$this->config->get('config_language_id') . "') AS length_class, (SELECT AVG(rating) AS total FROM " . DB_PREFIX . "review r1 WHERE r1.product_id = p.product_id AND r1.status = '1' GROUP BY r1.product_id) AS rating, (SELECT COUNT(*) AS total FROM " . DB_PREFIX . "review r2 WHERE r2.product_id = p.product_id AND r2.status = '1' GROUP BY r2.product_id) AS reviews, p.sort_order FROM " . DB_PREFIX . "product p LEFT JOIN " . DB_PREFIX . "product_description pd ON (p.product_id = pd.product_id) LEFT JOIN " . DB_PREFIX . "product_to_store p2s ON (p.product_id = p2s.product_id) LEFT JOIN " . DB_PREFIX . "manufacturer m ON (p.manufacturer_id = m.manufacturer_id) WHERE p.product_id = '" . (int)$product_id . "' AND pd.language_id = '" . (int)$this->config->get('config_language_id') . "' AND p.status = '1' AND p.date_available <= NOW() AND p2s.store_id = '" . (int)$this->config->get('config_store_id') . "'"); $query = $this->db->query("SELECT DISTINCT *, pd.name AS name, p.image, m.name AS manufacturer, (SELECT price FROM " . DB_PREFIX . "product_discount pd2 WHERE pd2.product_id = p.product_id AND pd2.customer_group_id = '" . (int)$customer_group_id . "' AND pd2.quantity = '1' AND ((pd2.date_start = '0000-00-00' OR pd2.date_start < NOW()) AND (pd2.date_end = '0000-00-00' OR pd2.date_end > NOW())) ORDER BY pd2.priority ASC, pd2.price ASC LIMIT 1) AS discount, (SELECT COUNT(*) FROM " . DB_PREFIX . "product_related pr WHERE pr.product_id = p.product_id) AS related, (SELECT price FROM " . DB_PREFIX . "product_special ps WHERE ps.product_id = p.product_id AND ps.customer_group_id = '" . (int)$customer_group_id . "' AND ((ps.date_start = '0000-00-00' OR ps.date_start < NOW()) AND (ps.date_end = '0000-00-00' OR ps.date_end > NOW())) ORDER BY ps.priority ASC, ps.price ASC LIMIT 1) AS special, (SELECT points FROM " . DB_PREFIX . "product_reward pr WHERE pr.product_id = p.product_id AND customer_group_id = '" . (int)$customer_group_id . "') AS reward, (SELECT ss.name FROM " . DB_PREFIX . "stock_status ss WHERE ss.stock_status_id = p.stock_status_id AND ss.language_id = '" . (int)$this->config->get('config_language_id') . "') AS stock_status, (SELECT wcd.unit FROM " . DB_PREFIX . "weight_class_description wcd WHERE p.weight_class_id = wcd.weight_class_id AND wcd.language_id = '" . (int)$this->config->get('config_language_id') . "') AS weight_class, (SELECT lcd.unit FROM " . DB_PREFIX . "length_class_description lcd WHERE p.length_class_id = lcd.length_class_id AND lcd.language_id = '" . (int)$this->config->get('config_language_id') . "') AS length_class, (SELECT AVG(rating) AS total FROM " . DB_PREFIX . "review r1 WHERE r1.product_id = p.product_id AND r1.status = '1' GROUP BY r1.product_id) AS rating, (SELECT COUNT(*) AS total FROM " . DB_PREFIX . "review r2 WHERE r2.product_id = p.product_id AND r2.status = '1' GROUP BY r2.product_id) AS reviews, p.sort_order FROM " . DB_PREFIX . "product p LEFT JOIN " . DB_PREFIX . "product_description pd ON (p.product_id = pd.product_id) LEFT JOIN " . DB_PREFIX . "product_to_store p2s ON (p.product_id = p2s.product_id) LEFT JOIN " . DB_PREFIX . "manufacturer m ON (p.manufacturer_id = m.manufacturer_id) WHERE p.product_id = '" . (int)$product_id . "' AND pd.language_id = '" . (int)$this->config->get('config_language_id') . "' AND p.status = '1' AND p.date_available <= NOW() AND p2s.store_id = '" . (int)$this->config->get('config_store_id') . "'"); if ($query->num_rows) { $query->row['price'] = ($query->row['discount'] ? $query->row['discount'] : $query->row['price']); $query->row['rating'] = (int)$query->row['rating']; $query->row['related'] = (int)$query->row['related']; return $query->row; } else { return false; } } Link to comment Share on other sites More sharing options... cmd Posted May 31, 2013 Share Posted May 31, 2013 saveplanet, работает? Вот и славно. А я уже хотел отругать за вопрос "в какой строке?". Link to comment Share on other sites More sharing options... Guest Posted May 31, 2013 Share Posted May 31, 2013 Я редактировал только catalog\model\catalog\product.php выше код в шаблоне category.tpl так <?php echo $product['related']; ?> Ничего не выводится, только сообщение об ошибке, нотис Link to comment Share on other sites More sharing options... cmd Posted May 31, 2013 Share Posted May 31, 2013 Я редактировал только catalog\model\catalog\product.php Все верно. Ничего не выводится, только сообщение об ошибке, нотис Ну, если нет ошибки SQL, то данные из базы забираются. А все остальное, как я уже говорил, не интересно. Ищите где проблема. Первая моя догадка в том, что Вы делаете echo $product['related']; за пределами цикла foreach... Link to comment Share on other sites More sharing options... Guest Posted May 31, 2013 Share Posted May 31, 2013 Я редактировал только catalog\model\catalog\product.php Все верно. >Ничего не выводится, только сообщение об ошибке, нотис Ну, если нет ошибки SQL, то данные из базы забираются. А все остальное, как я уже говорил, не интересно. Ищите где проблема. Первая моя догадка в том, что Вы делаете echo $product['related']; за пределами цикла foreach... Как раз в цикле выводится. Готов отблагодарить за помощь, деньгами :) за решение Link to comment Share on other sites More sharing options... Guest Posted May 31, 2013 Share Posted May 31, 2013 мне кажется дело в запросе Link to comment Share on other sites More sharing options... cmd Posted May 31, 2013 Share Posted May 31, 2013 мне кажется дело в запросе Так сделайте print_r() и посмотрите. Link to comment Share on other sites More sharing options... Guest Posted May 31, 2013 Share Posted May 31, 2013 в шаблоне? мне кажется дело в запросе Так сделайте print_r() и посмотрите. Link to comment Share on other sites More sharing options... Guest Posted May 31, 2013 Share Posted May 31, 2013 также <?php $test=$product['related']; ?> <?php print_r($test); ?> Notice: Undefined index: related in /home/domaain.tld/public_html/catalog/view/theme/default/template/product/category.tpl on line 43 Link to comment Share on other sites More sharing options... Guest Posted June 3, 2013 Share Posted June 3, 2013 Поступил проще, при запросе insert или update рекомендуемых посчитал в цикле простым счетчиком и записал кол-во в таблицу product :) считать на ходу каждый раз во фронтенде не правильно мне кажется, тем более лишний запрос Link to comment Share on other sites More sharing options... Create an account or sign in to comment You need to be a member in order to leave a comment Create an account Sign up for a new account in our community. It's easy! Register a new account Sign in Already have an account? Sign in here. Sign In Now Share More sharing options... Followers 0 Go to topic listing Similar Content Как вывести количество товара(на складе) в корзину симплы? By annnn, December 17, 2022 2 replies 191 views annnn December 17, 2022 Количество акционного товара By Seofisher, January 10, 2022 1 reply 272 views Verzun Monday at 03:17 PM Изменить количество всех товаров By wizand1, March 15, 2018 5 replies 890 views nikoshot January 17 Как вывести рейтинг в категорию By CongoG, February 22, 2014 рейтинг отзывы (and 1 more) Tagged with: рейтинг отзывы в категории 18 replies 8,369 views ZloyNoDobriy December 6, 2022 Инверсия обработки количества товаров By arromanus, January 20 1 reply 120 views PaulKravchenko January 21 Recently Browsing 0 members No registered users viewing this page. Последние темы Последние дополнения Последние новости All Activity Home Поддержка и ответы на вопросы Помощь программистам и разработчикам В категории у товара вывести количество рекомендуемых товаров Покупателям Оплата дополнений физическими лицами Оплата дополнений юридическими лицами Политика возвратов Разработчикам Регламент размещения дополнений Регламент продаж и поддержки дополнений Виртуальный аккаунт автора Политика продвижения объявлений API каталога дополнений Урегулирование споров по авторским правам Полезная информация Публичная оферта Политика возвратов Политика конфиденциальности Платежная политика Политика Передачи Персональных Данных Политика прозрачности Последние дополнения Chameleon - Responsive & Multipurpose Opencart Template + Quick Start By 29aleksey Wayforpay API оплата для Opencart 2.3, 3.x By bogdan281989 TgMarket - Модуль интернет магазина в телеграмме. By Rassol2 ShowCase – Responsive / Multipurpose Opencart Template By octemplates Telnotification By Yevhenii_7777 × Existing user? Sign In Sign Up Shopping section Back Purchased extensions Invoices Whishlist Alternative Contacts Forums News ocStore Back Official site Demo ocStore 3.0.3.2 Demo ocStore 2.3.0.2.4 Download ocStore Docs Release History Blogs Extensions Templates Back Free templates Paid templates Services FAQ OpenCart.Pro Back Demo Buy Compare × Create New... Important Information On our site, cookies are used and personal data is processed to improve the user interface. To find out what and what personal data we are processing, please go to the link. If you click "I agree," it means that you understand and accept all the conditions specified in this Privacy Notice. I accept
Guest Posted May 31, 2013 Share Posted May 31, 2013 рекомендуемых товаров данного товара :? О чем речь? К товару присвоена связь с другими товарами и Вы хотите посчитать количество связей для каждого товара? На странице категории у каждого товара вывести число рекомендуемых товаров данного товара. Мне кажется верно изъяснился Link to comment Share on other sites More sharing options...
cmd Posted May 31, 2013 Share Posted May 31, 2013 Ага. Понял. Звучит очень непрактично, но задача интересная. Ща напишу решение... 10 минут...) Link to comment Share on other sites More sharing options... Guest Posted May 31, 2013 Share Posted May 31, 2013 мне кажется нужно подсчет рекомендуемых делать при выводе в цикле товаров на странице категории, и в его контроллере Ага. Понял. Звучит очень непрактично, но задача интересная. Ща напишу решение... 10 минут...) Link to comment Share on other sites More sharing options... cmd Posted May 31, 2013 Share Posted May 31, 2013 В контрллере категории catalog\controller\product\category.php Есть строка $results = $this->model_catalog_product->getProducts($data); Поэтому залазим в контроллер catalog\model\catalog\product.php и находим метод getProducts(). Там мы видим SQL запрос. Переписываем его. $sql = "SELECT p.product_id, (SELECT AVG(rating) AS total FROM " . DB_PREFIX . "review r1 WHERE r1.product_id = p.product_id AND r1.status = '1' GROUP BY r1.product_id) AS rating, (SELECT COUNT(*) FROM " . DB_PREFIX . "product_related pr WHERE pr.product_id = p.product_id) AS related, (SELECT price FROM " . DB_PREFIX . "product_discount pd2 WHERE pd2.product_id = p.product_id AND pd2.customer_group_id = '" . (int)$customer_group_id . "' AND pd2.quantity = '1' AND ((pd2.date_start = '0000-00-00' OR pd2.date_start < NOW()) AND (pd2.date_end = '0000-00-00' OR pd2.date_end > NOW())) ORDER BY pd2.priority ASC, pd2.price ASC LIMIT 1) AS discount, (SELECT price FROM " . DB_PREFIX . "product_special ps WHERE ps.product_id = p.product_id AND ps.customer_group_id = '" . (int)$customer_group_id . "' AND ((ps.date_start = '0000-00-00' OR ps.date_start < NOW()) AND (ps.date_end = '0000-00-00' OR ps.date_end > NOW())) ORDER BY ps.priority ASC, ps.price ASC LIMIT 1) AS special"; Все... Дальше не интересно. В файле catalog\view\theme\ваш_шаблон\template\product\category.tpl теперь доступна переменная $product['related'], которая содержит числовое значение. P.S. Сам не проверял. UPDATED: Кажется я фигню написал. Там ниже вызов в цикле: foreach ($query->rows as $result) { $product_data[$result['product_id']] = $this->getProduct($result['product_id']); } О, чудесный OpenCart! О, божественная архитектура! Значит так... Забыли про getProducts. Вместо того, чтобы редактировать метод getProducts нужно редактировать getProduct по аналогии т.е. $query = $this->db->query("SELECT DISTINCT *, pd.name AS name, p.image, m.name AS manufacturer, (SELECT price FROM " . DB_PREFIX . "product_discount pd2 WHERE pd2.product_id = p.product_id AND pd2.customer_group_id = '" . (int)$customer_group_id . "' AND pd2.quantity = '1' AND ((pd2.date_start = '0000-00-00' OR pd2.date_start < NOW()) AND (pd2.date_end = '0000-00-00' OR pd2.date_end > NOW())) ORDER BY pd2.priority ASC, pd2.price ASC LIMIT 1) AS discount, (SELECT COUNT(*) FROM " . DB_PREFIX . "product_related pr WHERE pr.product_id = p.product_id) AS related, (SELECT price FROM " . DB_PREFIX . "product_special ps WHERE ps.product_id = p.product_id AND ps.customer_group_id = '" . (int)$customer_group_id . "' AND ((ps.date_start = '0000-00-00' OR ps.date_start < NOW()) AND (ps.date_end = '0000-00-00' OR ps.date_end > NOW())) ORDER BY ps.priority ASC, ps.price ASC LIMIT 1) AS special, (SELECT points FROM " . DB_PREFIX . "product_reward pr WHERE pr.product_id = p.product_id AND customer_group_id = '" . (int)$customer_group_id . "') AS reward, (SELECT ss.name FROM " . DB_PREFIX . "stock_status ss WHERE ss.stock_status_id = p.stock_status_id AND ss.language_id = '" . (int)$this->config->get('config_language_id') . "') AS stock_status, (SELECT wcd.unit FROM " . DB_PREFIX . "weight_class_description wcd WHERE p.weight_class_id = wcd.weight_class_id AND wcd.language_id = '" . (int)$this->config->get('config_language_id') . "') AS weight_class, (SELECT lcd.unit FROM " . DB_PREFIX . "length_class_description lcd WHERE p.length_class_id = lcd.length_class_id AND lcd.language_id = '" . (int)$this->config->get('config_language_id') . "') AS length_class, (SELECT AVG(rating) AS total FROM " . DB_PREFIX . "review r1 WHERE r1.product_id = p.product_id AND r1.status = '1' GROUP BY r1.product_id) AS rating, (SELECT COUNT(*) AS total FROM " . DB_PREFIX . "review r2 WHERE r2.product_id = p.product_id AND r2.status = '1' GROUP BY r2.product_id) AS reviews, p.sort_order FROM " . DB_PREFIX . "product p LEFT JOIN " . DB_PREFIX . "product_description pd ON (p.product_id = pd.product_id) LEFT JOIN " . DB_PREFIX . "product_to_store p2s ON (p.product_id = p2s.product_id) LEFT JOIN " . DB_PREFIX . "manufacturer m ON (p.manufacturer_id = m.manufacturer_id) WHERE p.product_id = '" . (int)$product_id . "' AND pd.language_id = '" . (int)$this->config->get('config_language_id') . "' AND p.status = '1' AND p.date_available <= NOW() AND p2s.store_id = '" . (int)$this->config->get('config_store_id') . "'"); UPDATE 2: В этом прекрасном полотне надо добавить if ($query->num_rows) { return array( 'product_id' => $query->row['product_id'], 'related' => $query->row['related'], // вот это добавлено 'name' => $query->row['name'], 'description' => $query->row['description'], 'meta_description' => $query->row['meta_description'], 'meta_keyword' => $query->row['meta_keyword'], 'tag' => $query->row['tag'], 'model' => $query->row['model'], 'sku' => $query->row['sku'], 'upc' => $query->row['upc'], 'ean' => $query->row['ean'], 'jan' => $query->row['jan'], 'isbn' => $query->row['isbn'], 'mpn' => $query->row['mpn'], 'location' => $query->row['location'], 'quantity' => $query->row['quantity'], 'stock_status' => $query->row['stock_status'], 'image' => $query->row['image'], 'manufacturer_id' => $query->row['manufacturer_id'], 'manufacturer' => $query->row['manufacturer'], 'price' => ($query->row['discount'] ? $query->row['discount'] : $query->row['price']), 'special' => $query->row['special'], 'reward' => $query->row['reward'], 'points' => $query->row['points'], 'tax_class_id' => $query->row['tax_class_id'], 'date_available' => $query->row['date_available'], 'weight' => $query->row['weight'], 'weight_class_id' => $query->row['weight_class_id'], 'length' => $query->row['length'], 'width' => $query->row['width'], 'height' => $query->row['height'], 'length_class_id' => $query->row['length_class_id'], 'subtract' => $query->row['subtract'], 'rating' => round($query->row['rating']), 'reviews' => $query->row['reviews'] ? $query->row['reviews'] : 0, 'minimum' => $query->row['minimum'], 'sort_order' => $query->row['sort_order'], 'status' => $query->row['status'], 'date_added' => $query->row['date_added'], 'date_modified' => $query->row['date_modified'], 'viewed' => $query->row['viewed'] ); Link to comment Share on other sites More sharing options... Guest Posted May 31, 2013 Share Posted May 31, 2013 не понял, то что написали не работает? Link to comment Share on other sites More sharing options... Guest Posted May 31, 2013 Share Posted May 31, 2013 UPDATE 2: это в каком файле и строке? Link to comment Share on other sites More sharing options... Guest Posted May 31, 2013 Share Posted May 31, 2013 версия 1.5.3.1 Link to comment Share on other sites More sharing options... Guest Posted May 31, 2013 Share Posted May 31, 2013 public function getProduct($product_id) { if ($this->customer->isLogged()) { $customer_group_id = $this->customer->getCustomerGroupId(); } else { $customer_group_id = $this->config->get('config_customer_group_id'); } //$query = $this->db->query("SELECT DISTINCT *, pd.name AS name, p.image, m.name AS manufacturer, (SELECT price FROM " . DB_PREFIX . "product_discount pd2 WHERE pd2.product_id = p.product_id AND pd2.customer_group_id = '" . (int)$customer_group_id . "' AND pd2.quantity = '1' AND ((pd2.date_start = '0000-00-00' OR pd2.date_start < NOW()) AND (pd2.date_end = '0000-00-00' OR pd2.date_end > NOW())) ORDER BY pd2.priority ASC, pd2.price ASC LIMIT 1) AS discount, (SELECT price FROM " . DB_PREFIX . "product_special ps WHERE ps.product_id = p.product_id AND ps.customer_group_id = '" . (int)$customer_group_id . "' AND ((ps.date_start = '0000-00-00' OR ps.date_start < NOW()) AND (ps.date_end = '0000-00-00' OR ps.date_end > NOW())) ORDER BY ps.priority ASC, ps.price ASC LIMIT 1) AS special, (SELECT points FROM " . DB_PREFIX . "product_reward pr WHERE pr.product_id = p.product_id AND customer_group_id = '" . (int)$customer_group_id . "') AS reward, (SELECT ss.name FROM " . DB_PREFIX . "stock_status ss WHERE ss.stock_status_id = p.stock_status_id AND ss.language_id = '" . (int)$this->config->get('config_language_id') . "') AS stock_status, (SELECT wcd.unit FROM " . DB_PREFIX . "weight_class_description wcd WHERE p.weight_class_id = wcd.weight_class_id AND wcd.language_id = '" . (int)$this->config->get('config_language_id') . "') AS weight_class, (SELECT lcd.unit FROM " . DB_PREFIX . "length_class_description lcd WHERE p.length_class_id = lcd.length_class_id AND lcd.language_id = '" . (int)$this->config->get('config_language_id') . "') AS length_class, (SELECT AVG(rating) AS total FROM " . DB_PREFIX . "review r1 WHERE r1.product_id = p.product_id AND r1.status = '1' GROUP BY r1.product_id) AS rating, (SELECT COUNT(*) AS total FROM " . DB_PREFIX . "review r2 WHERE r2.product_id = p.product_id AND r2.status = '1' GROUP BY r2.product_id) AS reviews, p.sort_order FROM " . DB_PREFIX . "product p LEFT JOIN " . DB_PREFIX . "product_description pd ON (p.product_id = pd.product_id) LEFT JOIN " . DB_PREFIX . "product_to_store p2s ON (p.product_id = p2s.product_id) LEFT JOIN " . DB_PREFIX . "manufacturer m ON (p.manufacturer_id = m.manufacturer_id) WHERE p.product_id = '" . (int)$product_id . "' AND pd.language_id = '" . (int)$this->config->get('config_language_id') . "' AND p.status = '1' AND p.date_available <= NOW() AND p2s.store_id = '" . (int)$this->config->get('config_store_id') . "'"); $query = $this->db->query("SELECT DISTINCT *, pd.name AS name, p.image, m.name AS manufacturer, (SELECT price FROM " . DB_PREFIX . "product_discount pd2 WHERE pd2.product_id = p.product_id AND pd2.customer_group_id = '" . (int)$customer_group_id . "' AND pd2.quantity = '1' AND ((pd2.date_start = '0000-00-00' OR pd2.date_start < NOW()) AND (pd2.date_end = '0000-00-00' OR pd2.date_end > NOW())) ORDER BY pd2.priority ASC, pd2.price ASC LIMIT 1) AS discount, (SELECT COUNT(*) FROM " . DB_PREFIX . "product_related pr WHERE pr.product_id = p.product_id) AS related, (SELECT price FROM " . DB_PREFIX . "product_special ps WHERE ps.product_id = p.product_id AND ps.customer_group_id = '" . (int)$customer_group_id . "' AND ((ps.date_start = '0000-00-00' OR ps.date_start < NOW()) AND (ps.date_end = '0000-00-00' OR ps.date_end > NOW())) ORDER BY ps.priority ASC, ps.price ASC LIMIT 1) AS special, (SELECT points FROM " . DB_PREFIX . "product_reward pr WHERE pr.product_id = p.product_id AND customer_group_id = '" . (int)$customer_group_id . "') AS reward, (SELECT ss.name FROM " . DB_PREFIX . "stock_status ss WHERE ss.stock_status_id = p.stock_status_id AND ss.language_id = '" . (int)$this->config->get('config_language_id') . "') AS stock_status, (SELECT wcd.unit FROM " . DB_PREFIX . "weight_class_description wcd WHERE p.weight_class_id = wcd.weight_class_id AND wcd.language_id = '" . (int)$this->config->get('config_language_id') . "') AS weight_class, (SELECT lcd.unit FROM " . DB_PREFIX . "length_class_description lcd WHERE p.length_class_id = lcd.length_class_id AND lcd.language_id = '" . (int)$this->config->get('config_language_id') . "') AS length_class, (SELECT AVG(rating) AS total FROM " . DB_PREFIX . "review r1 WHERE r1.product_id = p.product_id AND r1.status = '1' GROUP BY r1.product_id) AS rating, (SELECT COUNT(*) AS total FROM " . DB_PREFIX . "review r2 WHERE r2.product_id = p.product_id AND r2.status = '1' GROUP BY r2.product_id) AS reviews, p.sort_order FROM " . DB_PREFIX . "product p LEFT JOIN " . DB_PREFIX . "product_description pd ON (p.product_id = pd.product_id) LEFT JOIN " . DB_PREFIX . "product_to_store p2s ON (p.product_id = p2s.product_id) LEFT JOIN " . DB_PREFIX . "manufacturer m ON (p.manufacturer_id = m.manufacturer_id) WHERE p.product_id = '" . (int)$product_id . "' AND pd.language_id = '" . (int)$this->config->get('config_language_id') . "' AND p.status = '1' AND p.date_available <= NOW() AND p2s.store_id = '" . (int)$this->config->get('config_store_id') . "'"); if ($query->num_rows) { $query->row['price'] = ($query->row['discount'] ? $query->row['discount'] : $query->row['price']); $query->row['rating'] = (int)$query->row['rating']; $query->row['related'] = (int)$query->row['related']; return $query->row; } else { return false; } } Link to comment Share on other sites More sharing options... cmd Posted May 31, 2013 Share Posted May 31, 2013 saveplanet, работает? Вот и славно. А я уже хотел отругать за вопрос "в какой строке?". Link to comment Share on other sites More sharing options... Guest Posted May 31, 2013 Share Posted May 31, 2013 Я редактировал только catalog\model\catalog\product.php выше код в шаблоне category.tpl так <?php echo $product['related']; ?> Ничего не выводится, только сообщение об ошибке, нотис Link to comment Share on other sites More sharing options... cmd Posted May 31, 2013 Share Posted May 31, 2013 Я редактировал только catalog\model\catalog\product.php Все верно. Ничего не выводится, только сообщение об ошибке, нотис Ну, если нет ошибки SQL, то данные из базы забираются. А все остальное, как я уже говорил, не интересно. Ищите где проблема. Первая моя догадка в том, что Вы делаете echo $product['related']; за пределами цикла foreach... Link to comment Share on other sites More sharing options... Guest Posted May 31, 2013 Share Posted May 31, 2013 Я редактировал только catalog\model\catalog\product.php Все верно. >Ничего не выводится, только сообщение об ошибке, нотис Ну, если нет ошибки SQL, то данные из базы забираются. А все остальное, как я уже говорил, не интересно. Ищите где проблема. Первая моя догадка в том, что Вы делаете echo $product['related']; за пределами цикла foreach... Как раз в цикле выводится. Готов отблагодарить за помощь, деньгами :) за решение Link to comment Share on other sites More sharing options... Guest Posted May 31, 2013 Share Posted May 31, 2013 мне кажется дело в запросе Link to comment Share on other sites More sharing options... cmd Posted May 31, 2013 Share Posted May 31, 2013 мне кажется дело в запросе Так сделайте print_r() и посмотрите. Link to comment Share on other sites More sharing options... Guest Posted May 31, 2013 Share Posted May 31, 2013 в шаблоне? мне кажется дело в запросе Так сделайте print_r() и посмотрите. Link to comment Share on other sites More sharing options... Guest Posted May 31, 2013 Share Posted May 31, 2013 также <?php $test=$product['related']; ?> <?php print_r($test); ?> Notice: Undefined index: related in /home/domaain.tld/public_html/catalog/view/theme/default/template/product/category.tpl on line 43 Link to comment Share on other sites More sharing options... Guest Posted June 3, 2013 Share Posted June 3, 2013 Поступил проще, при запросе insert или update рекомендуемых посчитал в цикле простым счетчиком и записал кол-во в таблицу product :) считать на ходу каждый раз во фронтенде не правильно мне кажется, тем более лишний запрос Link to comment Share on other sites More sharing options... Create an account or sign in to comment You need to be a member in order to leave a comment Create an account Sign up for a new account in our community. It's easy! Register a new account Sign in Already have an account? Sign in here. Sign In Now Share More sharing options... Followers 0 Go to topic listing Similar Content Как вывести количество товара(на складе) в корзину симплы? By annnn, December 17, 2022 2 replies 191 views annnn December 17, 2022 Количество акционного товара By Seofisher, January 10, 2022 1 reply 272 views Verzun Monday at 03:17 PM Изменить количество всех товаров By wizand1, March 15, 2018 5 replies 890 views nikoshot January 17 Как вывести рейтинг в категорию By CongoG, February 22, 2014 рейтинг отзывы (and 1 more) Tagged with: рейтинг отзывы в категории 18 replies 8,369 views ZloyNoDobriy December 6, 2022 Инверсия обработки количества товаров By arromanus, January 20 1 reply 120 views PaulKravchenko January 21 Recently Browsing 0 members No registered users viewing this page. Последние темы Последние дополнения Последние новости All Activity Home Поддержка и ответы на вопросы Помощь программистам и разработчикам В категории у товара вывести количество рекомендуемых товаров Покупателям Оплата дополнений физическими лицами Оплата дополнений юридическими лицами Политика возвратов Разработчикам Регламент размещения дополнений Регламент продаж и поддержки дополнений Виртуальный аккаунт автора Политика продвижения объявлений API каталога дополнений Урегулирование споров по авторским правам Полезная информация Публичная оферта Политика возвратов Политика конфиденциальности Платежная политика Политика Передачи Персональных Данных Политика прозрачности Последние дополнения Chameleon - Responsive & Multipurpose Opencart Template + Quick Start By 29aleksey Wayforpay API оплата для Opencart 2.3, 3.x By bogdan281989 TgMarket - Модуль интернет магазина в телеграмме. By Rassol2 ShowCase – Responsive / Multipurpose Opencart Template By octemplates Telnotification By Yevhenii_7777 × Existing user? Sign In Sign Up Shopping section Back Purchased extensions Invoices Whishlist Alternative Contacts Forums News ocStore Back Official site Demo ocStore 3.0.3.2 Demo ocStore 2.3.0.2.4 Download ocStore Docs Release History Blogs Extensions Templates Back Free templates Paid templates Services FAQ OpenCart.Pro Back Demo Buy Compare × Create New... Important Information On our site, cookies are used and personal data is processed to improve the user interface. To find out what and what personal data we are processing, please go to the link. If you click "I agree," it means that you understand and accept all the conditions specified in this Privacy Notice. I accept
Guest Posted May 31, 2013 Share Posted May 31, 2013 мне кажется нужно подсчет рекомендуемых делать при выводе в цикле товаров на странице категории, и в его контроллере Ага. Понял. Звучит очень непрактично, но задача интересная. Ща напишу решение... 10 минут...) Link to comment Share on other sites More sharing options...
cmd Posted May 31, 2013 Share Posted May 31, 2013 В контрллере категории catalog\controller\product\category.php Есть строка $results = $this->model_catalog_product->getProducts($data); Поэтому залазим в контроллер catalog\model\catalog\product.php и находим метод getProducts(). Там мы видим SQL запрос. Переписываем его. $sql = "SELECT p.product_id, (SELECT AVG(rating) AS total FROM " . DB_PREFIX . "review r1 WHERE r1.product_id = p.product_id AND r1.status = '1' GROUP BY r1.product_id) AS rating, (SELECT COUNT(*) FROM " . DB_PREFIX . "product_related pr WHERE pr.product_id = p.product_id) AS related, (SELECT price FROM " . DB_PREFIX . "product_discount pd2 WHERE pd2.product_id = p.product_id AND pd2.customer_group_id = '" . (int)$customer_group_id . "' AND pd2.quantity = '1' AND ((pd2.date_start = '0000-00-00' OR pd2.date_start < NOW()) AND (pd2.date_end = '0000-00-00' OR pd2.date_end > NOW())) ORDER BY pd2.priority ASC, pd2.price ASC LIMIT 1) AS discount, (SELECT price FROM " . DB_PREFIX . "product_special ps WHERE ps.product_id = p.product_id AND ps.customer_group_id = '" . (int)$customer_group_id . "' AND ((ps.date_start = '0000-00-00' OR ps.date_start < NOW()) AND (ps.date_end = '0000-00-00' OR ps.date_end > NOW())) ORDER BY ps.priority ASC, ps.price ASC LIMIT 1) AS special"; Все... Дальше не интересно. В файле catalog\view\theme\ваш_шаблон\template\product\category.tpl теперь доступна переменная $product['related'], которая содержит числовое значение. P.S. Сам не проверял. UPDATED: Кажется я фигню написал. Там ниже вызов в цикле: foreach ($query->rows as $result) { $product_data[$result['product_id']] = $this->getProduct($result['product_id']); } О, чудесный OpenCart! О, божественная архитектура! Значит так... Забыли про getProducts. Вместо того, чтобы редактировать метод getProducts нужно редактировать getProduct по аналогии т.е. $query = $this->db->query("SELECT DISTINCT *, pd.name AS name, p.image, m.name AS manufacturer, (SELECT price FROM " . DB_PREFIX . "product_discount pd2 WHERE pd2.product_id = p.product_id AND pd2.customer_group_id = '" . (int)$customer_group_id . "' AND pd2.quantity = '1' AND ((pd2.date_start = '0000-00-00' OR pd2.date_start < NOW()) AND (pd2.date_end = '0000-00-00' OR pd2.date_end > NOW())) ORDER BY pd2.priority ASC, pd2.price ASC LIMIT 1) AS discount, (SELECT COUNT(*) FROM " . DB_PREFIX . "product_related pr WHERE pr.product_id = p.product_id) AS related, (SELECT price FROM " . DB_PREFIX . "product_special ps WHERE ps.product_id = p.product_id AND ps.customer_group_id = '" . (int)$customer_group_id . "' AND ((ps.date_start = '0000-00-00' OR ps.date_start < NOW()) AND (ps.date_end = '0000-00-00' OR ps.date_end > NOW())) ORDER BY ps.priority ASC, ps.price ASC LIMIT 1) AS special, (SELECT points FROM " . DB_PREFIX . "product_reward pr WHERE pr.product_id = p.product_id AND customer_group_id = '" . (int)$customer_group_id . "') AS reward, (SELECT ss.name FROM " . DB_PREFIX . "stock_status ss WHERE ss.stock_status_id = p.stock_status_id AND ss.language_id = '" . (int)$this->config->get('config_language_id') . "') AS stock_status, (SELECT wcd.unit FROM " . DB_PREFIX . "weight_class_description wcd WHERE p.weight_class_id = wcd.weight_class_id AND wcd.language_id = '" . (int)$this->config->get('config_language_id') . "') AS weight_class, (SELECT lcd.unit FROM " . DB_PREFIX . "length_class_description lcd WHERE p.length_class_id = lcd.length_class_id AND lcd.language_id = '" . (int)$this->config->get('config_language_id') . "') AS length_class, (SELECT AVG(rating) AS total FROM " . DB_PREFIX . "review r1 WHERE r1.product_id = p.product_id AND r1.status = '1' GROUP BY r1.product_id) AS rating, (SELECT COUNT(*) AS total FROM " . DB_PREFIX . "review r2 WHERE r2.product_id = p.product_id AND r2.status = '1' GROUP BY r2.product_id) AS reviews, p.sort_order FROM " . DB_PREFIX . "product p LEFT JOIN " . DB_PREFIX . "product_description pd ON (p.product_id = pd.product_id) LEFT JOIN " . DB_PREFIX . "product_to_store p2s ON (p.product_id = p2s.product_id) LEFT JOIN " . DB_PREFIX . "manufacturer m ON (p.manufacturer_id = m.manufacturer_id) WHERE p.product_id = '" . (int)$product_id . "' AND pd.language_id = '" . (int)$this->config->get('config_language_id') . "' AND p.status = '1' AND p.date_available <= NOW() AND p2s.store_id = '" . (int)$this->config->get('config_store_id') . "'"); UPDATE 2: В этом прекрасном полотне надо добавить if ($query->num_rows) { return array( 'product_id' => $query->row['product_id'], 'related' => $query->row['related'], // вот это добавлено 'name' => $query->row['name'], 'description' => $query->row['description'], 'meta_description' => $query->row['meta_description'], 'meta_keyword' => $query->row['meta_keyword'], 'tag' => $query->row['tag'], 'model' => $query->row['model'], 'sku' => $query->row['sku'], 'upc' => $query->row['upc'], 'ean' => $query->row['ean'], 'jan' => $query->row['jan'], 'isbn' => $query->row['isbn'], 'mpn' => $query->row['mpn'], 'location' => $query->row['location'], 'quantity' => $query->row['quantity'], 'stock_status' => $query->row['stock_status'], 'image' => $query->row['image'], 'manufacturer_id' => $query->row['manufacturer_id'], 'manufacturer' => $query->row['manufacturer'], 'price' => ($query->row['discount'] ? $query->row['discount'] : $query->row['price']), 'special' => $query->row['special'], 'reward' => $query->row['reward'], 'points' => $query->row['points'], 'tax_class_id' => $query->row['tax_class_id'], 'date_available' => $query->row['date_available'], 'weight' => $query->row['weight'], 'weight_class_id' => $query->row['weight_class_id'], 'length' => $query->row['length'], 'width' => $query->row['width'], 'height' => $query->row['height'], 'length_class_id' => $query->row['length_class_id'], 'subtract' => $query->row['subtract'], 'rating' => round($query->row['rating']), 'reviews' => $query->row['reviews'] ? $query->row['reviews'] : 0, 'minimum' => $query->row['minimum'], 'sort_order' => $query->row['sort_order'], 'status' => $query->row['status'], 'date_added' => $query->row['date_added'], 'date_modified' => $query->row['date_modified'], 'viewed' => $query->row['viewed'] ); Link to comment Share on other sites More sharing options... Guest Posted May 31, 2013 Share Posted May 31, 2013 не понял, то что написали не работает? Link to comment Share on other sites More sharing options... Guest Posted May 31, 2013 Share Posted May 31, 2013 UPDATE 2: это в каком файле и строке? Link to comment Share on other sites More sharing options... Guest Posted May 31, 2013 Share Posted May 31, 2013 версия 1.5.3.1 Link to comment Share on other sites More sharing options... Guest Posted May 31, 2013 Share Posted May 31, 2013 public function getProduct($product_id) { if ($this->customer->isLogged()) { $customer_group_id = $this->customer->getCustomerGroupId(); } else { $customer_group_id = $this->config->get('config_customer_group_id'); } //$query = $this->db->query("SELECT DISTINCT *, pd.name AS name, p.image, m.name AS manufacturer, (SELECT price FROM " . DB_PREFIX . "product_discount pd2 WHERE pd2.product_id = p.product_id AND pd2.customer_group_id = '" . (int)$customer_group_id . "' AND pd2.quantity = '1' AND ((pd2.date_start = '0000-00-00' OR pd2.date_start < NOW()) AND (pd2.date_end = '0000-00-00' OR pd2.date_end > NOW())) ORDER BY pd2.priority ASC, pd2.price ASC LIMIT 1) AS discount, (SELECT price FROM " . DB_PREFIX . "product_special ps WHERE ps.product_id = p.product_id AND ps.customer_group_id = '" . (int)$customer_group_id . "' AND ((ps.date_start = '0000-00-00' OR ps.date_start < NOW()) AND (ps.date_end = '0000-00-00' OR ps.date_end > NOW())) ORDER BY ps.priority ASC, ps.price ASC LIMIT 1) AS special, (SELECT points FROM " . DB_PREFIX . "product_reward pr WHERE pr.product_id = p.product_id AND customer_group_id = '" . (int)$customer_group_id . "') AS reward, (SELECT ss.name FROM " . DB_PREFIX . "stock_status ss WHERE ss.stock_status_id = p.stock_status_id AND ss.language_id = '" . (int)$this->config->get('config_language_id') . "') AS stock_status, (SELECT wcd.unit FROM " . DB_PREFIX . "weight_class_description wcd WHERE p.weight_class_id = wcd.weight_class_id AND wcd.language_id = '" . (int)$this->config->get('config_language_id') . "') AS weight_class, (SELECT lcd.unit FROM " . DB_PREFIX . "length_class_description lcd WHERE p.length_class_id = lcd.length_class_id AND lcd.language_id = '" . (int)$this->config->get('config_language_id') . "') AS length_class, (SELECT AVG(rating) AS total FROM " . DB_PREFIX . "review r1 WHERE r1.product_id = p.product_id AND r1.status = '1' GROUP BY r1.product_id) AS rating, (SELECT COUNT(*) AS total FROM " . DB_PREFIX . "review r2 WHERE r2.product_id = p.product_id AND r2.status = '1' GROUP BY r2.product_id) AS reviews, p.sort_order FROM " . DB_PREFIX . "product p LEFT JOIN " . DB_PREFIX . "product_description pd ON (p.product_id = pd.product_id) LEFT JOIN " . DB_PREFIX . "product_to_store p2s ON (p.product_id = p2s.product_id) LEFT JOIN " . DB_PREFIX . "manufacturer m ON (p.manufacturer_id = m.manufacturer_id) WHERE p.product_id = '" . (int)$product_id . "' AND pd.language_id = '" . (int)$this->config->get('config_language_id') . "' AND p.status = '1' AND p.date_available <= NOW() AND p2s.store_id = '" . (int)$this->config->get('config_store_id') . "'"); $query = $this->db->query("SELECT DISTINCT *, pd.name AS name, p.image, m.name AS manufacturer, (SELECT price FROM " . DB_PREFIX . "product_discount pd2 WHERE pd2.product_id = p.product_id AND pd2.customer_group_id = '" . (int)$customer_group_id . "' AND pd2.quantity = '1' AND ((pd2.date_start = '0000-00-00' OR pd2.date_start < NOW()) AND (pd2.date_end = '0000-00-00' OR pd2.date_end > NOW())) ORDER BY pd2.priority ASC, pd2.price ASC LIMIT 1) AS discount, (SELECT COUNT(*) FROM " . DB_PREFIX . "product_related pr WHERE pr.product_id = p.product_id) AS related, (SELECT price FROM " . DB_PREFIX . "product_special ps WHERE ps.product_id = p.product_id AND ps.customer_group_id = '" . (int)$customer_group_id . "' AND ((ps.date_start = '0000-00-00' OR ps.date_start < NOW()) AND (ps.date_end = '0000-00-00' OR ps.date_end > NOW())) ORDER BY ps.priority ASC, ps.price ASC LIMIT 1) AS special, (SELECT points FROM " . DB_PREFIX . "product_reward pr WHERE pr.product_id = p.product_id AND customer_group_id = '" . (int)$customer_group_id . "') AS reward, (SELECT ss.name FROM " . DB_PREFIX . "stock_status ss WHERE ss.stock_status_id = p.stock_status_id AND ss.language_id = '" . (int)$this->config->get('config_language_id') . "') AS stock_status, (SELECT wcd.unit FROM " . DB_PREFIX . "weight_class_description wcd WHERE p.weight_class_id = wcd.weight_class_id AND wcd.language_id = '" . (int)$this->config->get('config_language_id') . "') AS weight_class, (SELECT lcd.unit FROM " . DB_PREFIX . "length_class_description lcd WHERE p.length_class_id = lcd.length_class_id AND lcd.language_id = '" . (int)$this->config->get('config_language_id') . "') AS length_class, (SELECT AVG(rating) AS total FROM " . DB_PREFIX . "review r1 WHERE r1.product_id = p.product_id AND r1.status = '1' GROUP BY r1.product_id) AS rating, (SELECT COUNT(*) AS total FROM " . DB_PREFIX . "review r2 WHERE r2.product_id = p.product_id AND r2.status = '1' GROUP BY r2.product_id) AS reviews, p.sort_order FROM " . DB_PREFIX . "product p LEFT JOIN " . DB_PREFIX . "product_description pd ON (p.product_id = pd.product_id) LEFT JOIN " . DB_PREFIX . "product_to_store p2s ON (p.product_id = p2s.product_id) LEFT JOIN " . DB_PREFIX . "manufacturer m ON (p.manufacturer_id = m.manufacturer_id) WHERE p.product_id = '" . (int)$product_id . "' AND pd.language_id = '" . (int)$this->config->get('config_language_id') . "' AND p.status = '1' AND p.date_available <= NOW() AND p2s.store_id = '" . (int)$this->config->get('config_store_id') . "'"); if ($query->num_rows) { $query->row['price'] = ($query->row['discount'] ? $query->row['discount'] : $query->row['price']); $query->row['rating'] = (int)$query->row['rating']; $query->row['related'] = (int)$query->row['related']; return $query->row; } else { return false; } } Link to comment Share on other sites More sharing options... cmd Posted May 31, 2013 Share Posted May 31, 2013 saveplanet, работает? Вот и славно. А я уже хотел отругать за вопрос "в какой строке?". Link to comment Share on other sites More sharing options... Guest Posted May 31, 2013 Share Posted May 31, 2013 Я редактировал только catalog\model\catalog\product.php выше код в шаблоне category.tpl так <?php echo $product['related']; ?> Ничего не выводится, только сообщение об ошибке, нотис Link to comment Share on other sites More sharing options... cmd Posted May 31, 2013 Share Posted May 31, 2013 Я редактировал только catalog\model\catalog\product.php Все верно. Ничего не выводится, только сообщение об ошибке, нотис Ну, если нет ошибки SQL, то данные из базы забираются. А все остальное, как я уже говорил, не интересно. Ищите где проблема. Первая моя догадка в том, что Вы делаете echo $product['related']; за пределами цикла foreach... Link to comment Share on other sites More sharing options... Guest Posted May 31, 2013 Share Posted May 31, 2013 Я редактировал только catalog\model\catalog\product.php Все верно. >Ничего не выводится, только сообщение об ошибке, нотис Ну, если нет ошибки SQL, то данные из базы забираются. А все остальное, как я уже говорил, не интересно. Ищите где проблема. Первая моя догадка в том, что Вы делаете echo $product['related']; за пределами цикла foreach... Как раз в цикле выводится. Готов отблагодарить за помощь, деньгами :) за решение Link to comment Share on other sites More sharing options... Guest Posted May 31, 2013 Share Posted May 31, 2013 мне кажется дело в запросе Link to comment Share on other sites More sharing options... cmd Posted May 31, 2013 Share Posted May 31, 2013 мне кажется дело в запросе Так сделайте print_r() и посмотрите. Link to comment Share on other sites More sharing options... Guest Posted May 31, 2013 Share Posted May 31, 2013 в шаблоне? мне кажется дело в запросе Так сделайте print_r() и посмотрите. Link to comment Share on other sites More sharing options... Guest Posted May 31, 2013 Share Posted May 31, 2013 также <?php $test=$product['related']; ?> <?php print_r($test); ?> Notice: Undefined index: related in /home/domaain.tld/public_html/catalog/view/theme/default/template/product/category.tpl on line 43 Link to comment Share on other sites More sharing options... Guest Posted June 3, 2013 Share Posted June 3, 2013 Поступил проще, при запросе insert или update рекомендуемых посчитал в цикле простым счетчиком и записал кол-во в таблицу product :) считать на ходу каждый раз во фронтенде не правильно мне кажется, тем более лишний запрос Link to comment Share on other sites More sharing options... Create an account or sign in to comment You need to be a member in order to leave a comment Create an account Sign up for a new account in our community. It's easy! Register a new account Sign in Already have an account? Sign in here. Sign In Now Share More sharing options... Followers 0 Go to topic listing Similar Content Как вывести количество товара(на складе) в корзину симплы? By annnn, December 17, 2022 2 replies 191 views annnn December 17, 2022 Количество акционного товара By Seofisher, January 10, 2022 1 reply 272 views Verzun Monday at 03:17 PM Изменить количество всех товаров By wizand1, March 15, 2018 5 replies 890 views nikoshot January 17 Как вывести рейтинг в категорию By CongoG, February 22, 2014 рейтинг отзывы (and 1 more) Tagged with: рейтинг отзывы в категории 18 replies 8,369 views ZloyNoDobriy December 6, 2022 Инверсия обработки количества товаров By arromanus, January 20 1 reply 120 views PaulKravchenko January 21 Recently Browsing 0 members No registered users viewing this page. Последние темы Последние дополнения Последние новости All Activity Home Поддержка и ответы на вопросы Помощь программистам и разработчикам В категории у товара вывести количество рекомендуемых товаров Покупателям Оплата дополнений физическими лицами Оплата дополнений юридическими лицами Политика возвратов Разработчикам Регламент размещения дополнений Регламент продаж и поддержки дополнений Виртуальный аккаунт автора Политика продвижения объявлений API каталога дополнений Урегулирование споров по авторским правам Полезная информация Публичная оферта Политика возвратов Политика конфиденциальности Платежная политика Политика Передачи Персональных Данных Политика прозрачности Последние дополнения Chameleon - Responsive & Multipurpose Opencart Template + Quick Start By 29aleksey Wayforpay API оплата для Opencart 2.3, 3.x By bogdan281989 TgMarket - Модуль интернет магазина в телеграмме. By Rassol2 ShowCase – Responsive / Multipurpose Opencart Template By octemplates Telnotification By Yevhenii_7777
Guest Posted May 31, 2013 Share Posted May 31, 2013 не понял, то что написали не работает? Link to comment Share on other sites More sharing options...
Guest Posted May 31, 2013 Share Posted May 31, 2013 UPDATE 2: это в каком файле и строке? Link to comment Share on other sites More sharing options...
Guest Posted May 31, 2013 Share Posted May 31, 2013 версия 1.5.3.1 Link to comment Share on other sites More sharing options...
Guest Posted May 31, 2013 Share Posted May 31, 2013 public function getProduct($product_id) { if ($this->customer->isLogged()) { $customer_group_id = $this->customer->getCustomerGroupId(); } else { $customer_group_id = $this->config->get('config_customer_group_id'); } //$query = $this->db->query("SELECT DISTINCT *, pd.name AS name, p.image, m.name AS manufacturer, (SELECT price FROM " . DB_PREFIX . "product_discount pd2 WHERE pd2.product_id = p.product_id AND pd2.customer_group_id = '" . (int)$customer_group_id . "' AND pd2.quantity = '1' AND ((pd2.date_start = '0000-00-00' OR pd2.date_start < NOW()) AND (pd2.date_end = '0000-00-00' OR pd2.date_end > NOW())) ORDER BY pd2.priority ASC, pd2.price ASC LIMIT 1) AS discount, (SELECT price FROM " . DB_PREFIX . "product_special ps WHERE ps.product_id = p.product_id AND ps.customer_group_id = '" . (int)$customer_group_id . "' AND ((ps.date_start = '0000-00-00' OR ps.date_start < NOW()) AND (ps.date_end = '0000-00-00' OR ps.date_end > NOW())) ORDER BY ps.priority ASC, ps.price ASC LIMIT 1) AS special, (SELECT points FROM " . DB_PREFIX . "product_reward pr WHERE pr.product_id = p.product_id AND customer_group_id = '" . (int)$customer_group_id . "') AS reward, (SELECT ss.name FROM " . DB_PREFIX . "stock_status ss WHERE ss.stock_status_id = p.stock_status_id AND ss.language_id = '" . (int)$this->config->get('config_language_id') . "') AS stock_status, (SELECT wcd.unit FROM " . DB_PREFIX . "weight_class_description wcd WHERE p.weight_class_id = wcd.weight_class_id AND wcd.language_id = '" . (int)$this->config->get('config_language_id') . "') AS weight_class, (SELECT lcd.unit FROM " . DB_PREFIX . "length_class_description lcd WHERE p.length_class_id = lcd.length_class_id AND lcd.language_id = '" . (int)$this->config->get('config_language_id') . "') AS length_class, (SELECT AVG(rating) AS total FROM " . DB_PREFIX . "review r1 WHERE r1.product_id = p.product_id AND r1.status = '1' GROUP BY r1.product_id) AS rating, (SELECT COUNT(*) AS total FROM " . DB_PREFIX . "review r2 WHERE r2.product_id = p.product_id AND r2.status = '1' GROUP BY r2.product_id) AS reviews, p.sort_order FROM " . DB_PREFIX . "product p LEFT JOIN " . DB_PREFIX . "product_description pd ON (p.product_id = pd.product_id) LEFT JOIN " . DB_PREFIX . "product_to_store p2s ON (p.product_id = p2s.product_id) LEFT JOIN " . DB_PREFIX . "manufacturer m ON (p.manufacturer_id = m.manufacturer_id) WHERE p.product_id = '" . (int)$product_id . "' AND pd.language_id = '" . (int)$this->config->get('config_language_id') . "' AND p.status = '1' AND p.date_available <= NOW() AND p2s.store_id = '" . (int)$this->config->get('config_store_id') . "'"); $query = $this->db->query("SELECT DISTINCT *, pd.name AS name, p.image, m.name AS manufacturer, (SELECT price FROM " . DB_PREFIX . "product_discount pd2 WHERE pd2.product_id = p.product_id AND pd2.customer_group_id = '" . (int)$customer_group_id . "' AND pd2.quantity = '1' AND ((pd2.date_start = '0000-00-00' OR pd2.date_start < NOW()) AND (pd2.date_end = '0000-00-00' OR pd2.date_end > NOW())) ORDER BY pd2.priority ASC, pd2.price ASC LIMIT 1) AS discount, (SELECT COUNT(*) FROM " . DB_PREFIX . "product_related pr WHERE pr.product_id = p.product_id) AS related, (SELECT price FROM " . DB_PREFIX . "product_special ps WHERE ps.product_id = p.product_id AND ps.customer_group_id = '" . (int)$customer_group_id . "' AND ((ps.date_start = '0000-00-00' OR ps.date_start < NOW()) AND (ps.date_end = '0000-00-00' OR ps.date_end > NOW())) ORDER BY ps.priority ASC, ps.price ASC LIMIT 1) AS special, (SELECT points FROM " . DB_PREFIX . "product_reward pr WHERE pr.product_id = p.product_id AND customer_group_id = '" . (int)$customer_group_id . "') AS reward, (SELECT ss.name FROM " . DB_PREFIX . "stock_status ss WHERE ss.stock_status_id = p.stock_status_id AND ss.language_id = '" . (int)$this->config->get('config_language_id') . "') AS stock_status, (SELECT wcd.unit FROM " . DB_PREFIX . "weight_class_description wcd WHERE p.weight_class_id = wcd.weight_class_id AND wcd.language_id = '" . (int)$this->config->get('config_language_id') . "') AS weight_class, (SELECT lcd.unit FROM " . DB_PREFIX . "length_class_description lcd WHERE p.length_class_id = lcd.length_class_id AND lcd.language_id = '" . (int)$this->config->get('config_language_id') . "') AS length_class, (SELECT AVG(rating) AS total FROM " . DB_PREFIX . "review r1 WHERE r1.product_id = p.product_id AND r1.status = '1' GROUP BY r1.product_id) AS rating, (SELECT COUNT(*) AS total FROM " . DB_PREFIX . "review r2 WHERE r2.product_id = p.product_id AND r2.status = '1' GROUP BY r2.product_id) AS reviews, p.sort_order FROM " . DB_PREFIX . "product p LEFT JOIN " . DB_PREFIX . "product_description pd ON (p.product_id = pd.product_id) LEFT JOIN " . DB_PREFIX . "product_to_store p2s ON (p.product_id = p2s.product_id) LEFT JOIN " . DB_PREFIX . "manufacturer m ON (p.manufacturer_id = m.manufacturer_id) WHERE p.product_id = '" . (int)$product_id . "' AND pd.language_id = '" . (int)$this->config->get('config_language_id') . "' AND p.status = '1' AND p.date_available <= NOW() AND p2s.store_id = '" . (int)$this->config->get('config_store_id') . "'"); if ($query->num_rows) { $query->row['price'] = ($query->row['discount'] ? $query->row['discount'] : $query->row['price']); $query->row['rating'] = (int)$query->row['rating']; $query->row['related'] = (int)$query->row['related']; return $query->row; } else { return false; } } Link to comment Share on other sites More sharing options...
cmd Posted May 31, 2013 Share Posted May 31, 2013 saveplanet, работает? Вот и славно. А я уже хотел отругать за вопрос "в какой строке?". Link to comment Share on other sites More sharing options... Guest Posted May 31, 2013 Share Posted May 31, 2013 Я редактировал только catalog\model\catalog\product.php выше код в шаблоне category.tpl так <?php echo $product['related']; ?> Ничего не выводится, только сообщение об ошибке, нотис Link to comment Share on other sites More sharing options... cmd Posted May 31, 2013 Share Posted May 31, 2013 Я редактировал только catalog\model\catalog\product.php Все верно. Ничего не выводится, только сообщение об ошибке, нотис Ну, если нет ошибки SQL, то данные из базы забираются. А все остальное, как я уже говорил, не интересно. Ищите где проблема. Первая моя догадка в том, что Вы делаете echo $product['related']; за пределами цикла foreach... Link to comment Share on other sites More sharing options... Guest Posted May 31, 2013 Share Posted May 31, 2013 Я редактировал только catalog\model\catalog\product.php Все верно. >Ничего не выводится, только сообщение об ошибке, нотис Ну, если нет ошибки SQL, то данные из базы забираются. А все остальное, как я уже говорил, не интересно. Ищите где проблема. Первая моя догадка в том, что Вы делаете echo $product['related']; за пределами цикла foreach... Как раз в цикле выводится. Готов отблагодарить за помощь, деньгами :) за решение Link to comment Share on other sites More sharing options... Guest Posted May 31, 2013 Share Posted May 31, 2013 мне кажется дело в запросе Link to comment Share on other sites More sharing options... cmd Posted May 31, 2013 Share Posted May 31, 2013 мне кажется дело в запросе Так сделайте print_r() и посмотрите. Link to comment Share on other sites More sharing options... Guest Posted May 31, 2013 Share Posted May 31, 2013 в шаблоне? мне кажется дело в запросе Так сделайте print_r() и посмотрите. Link to comment Share on other sites More sharing options... Guest Posted May 31, 2013 Share Posted May 31, 2013 также <?php $test=$product['related']; ?> <?php print_r($test); ?> Notice: Undefined index: related in /home/domaain.tld/public_html/catalog/view/theme/default/template/product/category.tpl on line 43 Link to comment Share on other sites More sharing options... Guest Posted June 3, 2013 Share Posted June 3, 2013 Поступил проще, при запросе insert или update рекомендуемых посчитал в цикле простым счетчиком и записал кол-во в таблицу product :) считать на ходу каждый раз во фронтенде не правильно мне кажется, тем более лишний запрос Link to comment Share on other sites More sharing options... Create an account or sign in to comment You need to be a member in order to leave a comment Create an account Sign up for a new account in our community. It's easy! Register a new account Sign in Already have an account? Sign in here. Sign In Now Share More sharing options... Followers 0 Go to topic listing Similar Content Как вывести количество товара(на складе) в корзину симплы? By annnn, December 17, 2022 2 replies 191 views annnn December 17, 2022 Количество акционного товара By Seofisher, January 10, 2022 1 reply 272 views Verzun Monday at 03:17 PM Изменить количество всех товаров By wizand1, March 15, 2018 5 replies 890 views nikoshot January 17 Как вывести рейтинг в категорию By CongoG, February 22, 2014 рейтинг отзывы (and 1 more) Tagged with: рейтинг отзывы в категории 18 replies 8,369 views ZloyNoDobriy December 6, 2022 Инверсия обработки количества товаров By arromanus, January 20 1 reply 120 views PaulKravchenko January 21 Recently Browsing 0 members No registered users viewing this page. Последние темы Последние дополнения Последние новости All Activity Home Поддержка и ответы на вопросы Помощь программистам и разработчикам В категории у товара вывести количество рекомендуемых товаров
Guest Posted May 31, 2013 Share Posted May 31, 2013 Я редактировал только catalog\model\catalog\product.php выше код в шаблоне category.tpl так <?php echo $product['related']; ?> Ничего не выводится, только сообщение об ошибке, нотис Link to comment Share on other sites More sharing options...
cmd Posted May 31, 2013 Share Posted May 31, 2013 Я редактировал только catalog\model\catalog\product.php Все верно. Ничего не выводится, только сообщение об ошибке, нотис Ну, если нет ошибки SQL, то данные из базы забираются. А все остальное, как я уже говорил, не интересно. Ищите где проблема. Первая моя догадка в том, что Вы делаете echo $product['related']; за пределами цикла foreach... Link to comment Share on other sites More sharing options... Guest Posted May 31, 2013 Share Posted May 31, 2013 Я редактировал только catalog\model\catalog\product.php Все верно. >Ничего не выводится, только сообщение об ошибке, нотис Ну, если нет ошибки SQL, то данные из базы забираются. А все остальное, как я уже говорил, не интересно. Ищите где проблема. Первая моя догадка в том, что Вы делаете echo $product['related']; за пределами цикла foreach... Как раз в цикле выводится. Готов отблагодарить за помощь, деньгами :) за решение Link to comment Share on other sites More sharing options... Guest Posted May 31, 2013 Share Posted May 31, 2013 мне кажется дело в запросе Link to comment Share on other sites More sharing options... cmd Posted May 31, 2013 Share Posted May 31, 2013 мне кажется дело в запросе Так сделайте print_r() и посмотрите. Link to comment Share on other sites More sharing options... Guest Posted May 31, 2013 Share Posted May 31, 2013 в шаблоне? мне кажется дело в запросе Так сделайте print_r() и посмотрите. Link to comment Share on other sites More sharing options... Guest Posted May 31, 2013 Share Posted May 31, 2013 также <?php $test=$product['related']; ?> <?php print_r($test); ?> Notice: Undefined index: related in /home/domaain.tld/public_html/catalog/view/theme/default/template/product/category.tpl on line 43 Link to comment Share on other sites More sharing options... Guest Posted June 3, 2013 Share Posted June 3, 2013 Поступил проще, при запросе insert или update рекомендуемых посчитал в цикле простым счетчиком и записал кол-во в таблицу product :) считать на ходу каждый раз во фронтенде не правильно мне кажется, тем более лишний запрос Link to comment Share on other sites More sharing options... Create an account or sign in to comment You need to be a member in order to leave a comment Create an account Sign up for a new account in our community. It's easy! Register a new account Sign in Already have an account? Sign in here. Sign In Now Share More sharing options... Followers 0 Go to topic listing Similar Content Как вывести количество товара(на складе) в корзину симплы? By annnn, December 17, 2022 2 replies 191 views annnn December 17, 2022 Количество акционного товара By Seofisher, January 10, 2022 1 reply 272 views Verzun Monday at 03:17 PM Изменить количество всех товаров By wizand1, March 15, 2018 5 replies 890 views nikoshot January 17 Как вывести рейтинг в категорию By CongoG, February 22, 2014 рейтинг отзывы (and 1 more) Tagged with: рейтинг отзывы в категории 18 replies 8,369 views ZloyNoDobriy December 6, 2022 Инверсия обработки количества товаров By arromanus, January 20 1 reply 120 views PaulKravchenko January 21 Recently Browsing 0 members No registered users viewing this page.
Guest Posted May 31, 2013 Share Posted May 31, 2013 Я редактировал только catalog\model\catalog\product.php Все верно. >Ничего не выводится, только сообщение об ошибке, нотис Ну, если нет ошибки SQL, то данные из базы забираются. А все остальное, как я уже говорил, не интересно. Ищите где проблема. Первая моя догадка в том, что Вы делаете echo $product['related']; за пределами цикла foreach... Как раз в цикле выводится. Готов отблагодарить за помощь, деньгами :) за решение Link to comment Share on other sites More sharing options...
Guest Posted May 31, 2013 Share Posted May 31, 2013 мне кажется дело в запросе Link to comment Share on other sites More sharing options...
cmd Posted May 31, 2013 Share Posted May 31, 2013 мне кажется дело в запросе Так сделайте print_r() и посмотрите. Link to comment Share on other sites More sharing options... Guest Posted May 31, 2013 Share Posted May 31, 2013 в шаблоне? мне кажется дело в запросе Так сделайте print_r() и посмотрите. Link to comment Share on other sites More sharing options... Guest Posted May 31, 2013 Share Posted May 31, 2013 также <?php $test=$product['related']; ?> <?php print_r($test); ?> Notice: Undefined index: related in /home/domaain.tld/public_html/catalog/view/theme/default/template/product/category.tpl on line 43 Link to comment Share on other sites More sharing options... Guest Posted June 3, 2013 Share Posted June 3, 2013 Поступил проще, при запросе insert или update рекомендуемых посчитал в цикле простым счетчиком и записал кол-во в таблицу product :) считать на ходу каждый раз во фронтенде не правильно мне кажется, тем более лишний запрос Link to comment Share on other sites More sharing options... Create an account or sign in to comment You need to be a member in order to leave a comment Create an account Sign up for a new account in our community. It's easy! Register a new account Sign in Already have an account? Sign in here. Sign In Now Share More sharing options... Followers 0
Guest Posted May 31, 2013 Share Posted May 31, 2013 в шаблоне? мне кажется дело в запросе Так сделайте print_r() и посмотрите. Link to comment Share on other sites More sharing options...
Guest Posted May 31, 2013 Share Posted May 31, 2013 также <?php $test=$product['related']; ?> <?php print_r($test); ?> Notice: Undefined index: related in /home/domaain.tld/public_html/catalog/view/theme/default/template/product/category.tpl on line 43 Link to comment Share on other sites More sharing options...
Guest Posted June 3, 2013 Share Posted June 3, 2013 Поступил проще, при запросе insert или update рекомендуемых посчитал в цикле простым счетчиком и записал кол-во в таблицу product :) считать на ходу каждый раз во фронтенде не правильно мне кажется, тем более лишний запрос Link to comment Share on other sites More sharing options...
Recommended Posts