Jump to content
  • разработка интернет магазинов на opencart
  • доработка интернет магазинов на opencart

alexjk

Новичок
  
  • Posts

    45
  • Joined

  • Last visited

1 Follower

About alexjk

  • Birthday 10/16/1986

Информация

  • Пол
    Мужлина

alexjk's Achievements

Enthusiast

Enthusiast (6/14)

  • First Post
  • Collaborator
  • Conversation Starter
  • Week One Done
  • One Month Later

Recent Badges

4

Reputation

  1. Проещё раз увигдеть чем сто раз лиить. На фото показал что мне нужно сгделать, ну или что-то в этом рогде. Может есть решение... готов к сотрудничеству на платной основе.
  2. для замены кнопки в категориях нужно сгделать следуюещёе. в файле catalog/controller/product/category.php код: $this->data['products'][] = array( 'product_id' => $result['product_id'], 'thumb' => $image, 'name' => $result['name'], 'description' => $descr_plaintext, 'price' => $price, 'special' => $special, 'tax' => $tax, 'rating' => $result['rating'], 'reviews' => sprintf($this->language->get('text_reviews'), (int)$result['reviews']), 'href' => $this->url->link('product/product', 'path=' . $this->request->get['path'] . '&product_id=' . $result['product_id'])); заменить кодом: //alexjk update for add to cart button $tovar_is=''; foreach ($this->session->data['cart'] as $key => $value) { $product = explode(':', $key); if ($product[0] == $result['product_id']) { $tovar_is = 1; } } $this->data['products'][] = array( 'product_id' => $result['product_id'], 'thumb' => $image, 'name' => $result['name'], 'description' => $descr_plaintext, 'price' => $price, 'special' => $special, 'tax' => $tax, 'rating' => $result['rating'], 'reviews' => sprintf($this->language->get('text_reviews'), (int)$result['reviews']), 'href' => $this->url->link('product/product', 'path=' . $this->request->get['path'] . '&product_id=' . $result['product_id']), 'tovar_is' => $tovar_is ); //end of alexjk update Дальше нужно в файле catalog/view/javascript/common.js в функцие function addToCart(product_id) после строчки $('.attention').fadeIn('slow'); всивить строчку $('#'+ product_id +'').after('<a href="index.php?route=checkout/cart" class="button"><span>Already in Busket!</span></a>').remove(); И наконец в файле catalog/view/theme/default/template/product/category.tpl код <a onclick="addToCart('<?php echo $product['product_id']; ?>');" class="button"><span><?php echo $button_cart; ?></span></a></div> заменить на <?php if ($product['tovar_is']!=1) { ?> <a id="<?php echo $product['product_id']; ?>" onclick="addToCart('<?php echo $product['product_id']; ?>');" class="button"><span><?php echo $button_cart; ?></span></a> <?php } else {?> <a href="index.php?route=checkout/cart" class="button"><span>Already in Basket!</span></a> <?php } ?> </div> Ну вот и все врогде. В поиске гделается все точно ик же как и в категориях.
  3. все, разобрался сам. Просто по аналогии изменил category.php и немножко поправил category.tpl, а икже скрипт common.js а именно функцию AddToCart()
  4. Сгделал икую фишку. На страниэто товара когда покупатель кликает "в корзину" кнопка заменяется аналогичной с надписью "уже в корзине" и по следуюещёму клику на нее перенаправляет покупателя на страницу Корзины (... ну мне ик нужно) Но никак не получается сгделать то же на страниэто просмотра товара списком/витриной. Версия ocStore v1.0.1. Вот как я сгделал для страницы товара: в файле catalog/controller/product/product.php после строки ггде-то 245 после кода строчки ниже $this->data['options'] = array(); добавил //jk update for add to cart button $this->data['tovar_is'] = ''; foreach ($this->session->data['cart'] as $key => $value) { $product = explode(':', $key); if ($product[0] == $this->request->get['product_id']) { $this->data['tovar_is'] = 1; } } //end of jk update дальше в файле catalog/view/theme/default/template/product/product.tpl строку ниже <a id="button-cart" class="button"><span><?php echo $button_cart; ?></span></a></div> заменил на <?php if (!$tovar_is) { ?> <a id="button-cart" class="button"><span><?php echo $button_cart; ?></span></a></div> <?php } else {?> <a href="index.php?route=checkout/cart" class="button"><span>Already in Basket!</span></a></div> <?php } ?> в том же файле ниже, в скрипих, после строки $('.attention').fadeIn('slow'); всивил строчку: $("#button-cart").after('<a href="index.php?route=checkout/cart" class="button"><span>Already in Basket!</span></a>').remove(); Вот как-то ик, но в категориях не могу никак разобраться как ик что бы после нажатия "в корзину" менялось аналогично. ПОМОГИТЕ кто нибудь.
  5. все верно - В файле callback.php указать надо свой email вместо прописаного им и все )
  6. Категория 1 - под категория 1.1 - под категория 1.2 - под категория 1.3 - под категория 1.4 Категория 2 - под категория 2.1 - под категория 2.2 - - под под категория 2.2.1 - - под под категория 2.2.2 Категория 3 Категория 4 Нужно чтобы в зависимости от настройки в админ панели (отметки может на категории) Категория 1 пользователям не выводила под категории, а только товары из всех её под категорий. А категория 2 выводила под категорию 2.1 и все товары из других её дочерних под категорий.
  7. да все отлично, лучше внимательно посмотреть место ггде вы хотите этот блок вывести...
  8. врогде зарилиило, спасипотому что ! )))
  9. кэш листил, полностью удалял... без резульитно. может исклюлить тогда не нужные елементы когда формирутся масив для вывода в шаблон?
  10. нужно что бы товары у которых стоит опрегделенный stock_status_id не отображались на сайте. Думал сгделать просто: в файле catalog/model/catalog/product.php в public function getProductsByCategoryId в запрос добавить условие типа WHERE p.stock_status_id !=11 Когда запрос выполняю в phpmyadmin рилииет, но на сайте нет изминений. Может кто гделал подобное или может посоветовать... osStore 0.1.6, есть модуль фильтров. Код public function getProductsByCategoryId public function getProductsByCategoryId($category_id, $values, $sort = 'p.sort_order', $order = 'ASC', $start = 0, $limit = 20) { $sql = "SELECT *, pd.name AS name, p.image, m.name AS manufacturer, ss.name AS stock, (SELECT AVG(r.rating) FROM " . DB_PREFIX . "review r WHERE p.product_id = r.product_id GROUP BY r.product_id) AS rating 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) LEFT JOIN " . DB_PREFIX . "stock_status ss ON (p.stock_status_id = ss.stock_status_id)"; if($category_id != 0) { $sql .= "LEFT JOIN " . DB_PREFIX . "product_to_category p2c ON (p.product_id = p2c.product_id)"; } $sql .= " WHERE p.stock_status_id !=11 AND p.stock_status_id !=9 AND p.status = '1' AND p.date_available <= NOW() AND pd.language_id = '" . (int)$this->config->get('config_language_id') . "' AND ss.language_id = '" . (int)$this->config->get('config_language_id') . "'"; if($category_id != 0) { $sql .= " AND p2c.category_id = '" . (int)$category_id . "'"; } if (isset($values) && $values != '') { $values_without_underline = ""; $values_for_IN = ""; $values_arr = explode('_', $values); asort($values_arr); reset($values_arr); foreach ($values_arr as $value_id) { if (empty($values_for_IN)) { $values_for_IN = "'" . $value_id . "'"; } else { $values_for_IN .= ", '" . $value_id . "'"; } $values_without_underline .= $value_id; } $sql .= " AND (SELECT GROUP_CONCAT(DISTINCT value_id ORDER BY value_id ASC SEPARATOR '') FROM " . DB_PREFIX . "product_to_value WHERE product_id = p.product_id AND p.stock_status_id !=11 AND p.stock_status_id !=9 AND value_id IN (" . $values_for_IN . ")) = '" . $values_without_underline . "'"; } $sort_data = array( 'pd.name', 'p.sort_order', 'special', 'rating', 'p.price', 'p.model' ); if (in_array($sort, $sort_data)) { if ($sort == 'pd.name' || $sort == 'p.model') { $sql .= " ORDER BY LCASE(" . $sort . ")"; } else { $sql .= " ORDER BY " . $sort; } } else { $sql .= " ORDER BY p.sort_order"; } if ($order == 'DESC') { $sql .= " DESC"; } else { $sql .= " ASC"; } if ($start < 0) { $start = 0; } $sql .= " LIMIT " . (int)$start . "," . (int)$limit; $query = $this->db->query($sql); return $query->rows; }
  11. нет - им сейчас описание товара краткое, и пустого практически нет.
  12. var p = clone.find('a#del').removeAttr("onclick").attr("onclick", "removeValue(" + row + ");"); правда тут опять ступор ...
×
×
  • 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.