Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
  • Sign Up

Как сделать список в каталоге такого вида?


Recommended Posts

Здравствуйте, подскажите, пожалуйста, мне надо перенести кол-во и кнопку добавить в корзину отсюда http://demo.opencart.com/index.php?route=product/product&path=18&product_id=46, сюда http://demo.opencart.com/index.php?route=product/category&path=18. То есть в итоге я хочу получить, список такого вида, как во вложении?

post-864-1293741791,9004_thumb.jpg

Edited by afwollis
поправил ссылки
Link to post
Share on other sites

Мне тоже очень нужно такой способ вывода товара.Кто умеет, сделайте пойжалусто!

Link to post
Share on other sites

Чтобы получить список такого вида, при выводе категории

post-864-1293741791,9586_thumb.png

Находим, в файле category.tpl строку,

<table class="listp"><?php for ($i = 0; $i < sizeof($products); $i = $i + 4) { ?>
это начинается вывод товаров, заменяем все это дело на

<table class="listp">		<tr>			<td class="listp1">Наименование </td>			<td class="listp2">Артикул</td>			<td class="listp3">Цена</td>			<td class="listp4">Кол-во</td>			<td> </td>		</tr>		<?php for ($i = 0; $i < sizeof($products); $i = $i + 4) { ?>			<?php for ($j = $i; $j < ($i + 4); $j++) { ?>				<tr>					<?php if (isset($products[$j])) { ?>					<td>						<a href="<?php echo $products[$j]['href']; ?>"><!--<img src="<?php echo $products[$j]['thumb']; ?>" title="<?php echo $products[$j]['name']; ?>" alt="<?php echo $products[$j]['name']; ?>" />--></a>						<a href="<?php echo $products[$j]['href']; ?>"><?php echo $products[$j]['name']; ?></a>					</td>					<td>						<?php echo $products[$j]['model']; ?>					</td>					<td class="listp3">						<?php if ($display_price) { ?>							[color= #900; font-weight: bold;]<?php echo $products[$j]['price']; ?>[/color]					</td>					<td class="listp4">							<input name="quantity" id="quantity_<?php echo $products[$j]['product_id'] ?>" size="1" value="1" />					</td>					<td class="listp5">							<a class="button_add_small" onclick="addToCart(<?php echo $products[$j]['product_id']; ?>);return false;"  id="add_to_cart<?php echo $products[$j]['product_id']; ?>" class="buy"> </a>											</td>						<?php } ?>					<?php } ?>			<?php } ?>				</tr>		<?php } ?>	</table>
Для того чтобы работала функция добавления в корзину, вставляем скрипт

<script type="text/javascript">function addToCart(productId) {	$.ajax({			type: 'post',			url: '/index.php?route=module/cart/callback',			dataType: 'html',			data: 'product_id='+productId+'&quantity=' + $('#quantity_'+productId).val(),			success: function (html) {                $('#module_cart .middle').html(html);            },                          complete: function () {                var image = $('#image'+id).offset();                var cart  = $('#module_cart').offset();                }                   });                  }</script>
И в файле category.php добавляем строку:

$this->data['products'][] = array(            			'name'    => $result['name'],						'product_id' => $result['product_id'], ВОТ ОНА						'model'   => $result['model'],            			'rating'  => $rating,						'stars'   => sprintf($this->language->get('text_stars'), $rating),						'thumb'   => $this->model_tool_image->resize($image, $this->config->get('config_image_product_width'), $this->config->get('config_image_product_height')),            			'price'   => $price,            			'options' => $options,						'special' => $special,						'href'    => $this->model_tool_seo_url->rewrite(HTTP_SERVER . 'index.php?route=product/product&path=' . $this->request->get['path'] . '&product_id=' . $result['product_id']),						'add'	  => $add          			);
И добавить в файл стилей

.listp {	margin-bottom: 10px;	width: 100%;}.listp td {	text-align: left;	vertical-align: center;	padding-bottom: 10px;	}td.listp1{	width:50%;}td.listp2{	width:20%;}td.listp3{	width:15%;	text-align:right;}td.listp4{	width:10%;	text-align:right;}td.listp5{	text-align:center;}
Все это описано для раздела категорий, так же это можно сделать на любой другой странице, например на search, для этого редактируем search.php, search.tpl. Функция добавления в корзину упрощена, т. е. убрана анимация изображения, убрана картинка рядом с товаром, упрощена проверка товара на спец. цену. Edited by afwollis
edit -> save
  • +1 1
Link to post
Share on other sites

Constanta » а ты можешь описать как ты сделал такой список. по подробнее, что и куда добавлял. очень интересная штука) Спасибо.

Link to post
Share on other sites

  • 2 months later...

А я сделала отображение \product\category.tpl в виде списка с указанием количества и кнопкой "корзина".

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

Какие изменения нужны в category.php, чтобы передавались эти значения (количество, id товара - я так понимаю...)?

И хотелось реализовать это аналогично с добавлением из \product\product.tpl, т.е аяксом, без перехода на страницу корзины, а только с обновлением её бокового блока.

Link to post
Share on other sites

natali, переместил ваше сообщение в соответствующую тему.

Ответы на ваши вопросы здесь есть.

Если не получится что-то сделать - спрашивайте.

Link to post
Share on other sites

Спасибо, мне это не совсем подходило, но проблему уже помогли решить.

Link to post
Share on other sites

natali, переместил ваше сообщение в соответствующую тему.

Ответы на ваши вопросы здесь есть.

Если не получится что-то сделать - спрашивайте.

Спасибо, со списком разобралась, аякс пока отложила на потом))))))

Link to post
Share on other sites

AddtoCart....script--куда вставлять в какой файл --подскажите..

а то что-то у меня не работет

и listp3 --НЕ->[color... , А-> <color... вот так правильно?

Link to post
Share on other sites

AddtoCart....script--куда вставлять в какой файл --подскажите..

в любой файл рабочего шаблона, можно в category.tpl

и listp3 --НЕ->[color... , А-> <color... вот так правильно?

да, я сделал
<span style="color: rgb(153, 0, 0); font-weight: bold;"><?php echo $products[$j]['price']; ?></span>
Хочется добавить, что редактировать нужно файл
catalog/controller/product/category.php
, а то их несколько в системе.
Link to post
Share on other sites

в любой файл рабочего шаблона, можно в category.tpl

да, я сделал

<span style="color: rgb(153, 0, 0); font-weight: bold;"><?php echo $products[$j]['price']; ?></span>
Хочется добавить, что редактировать нужно файл
catalog/controller/product/category.php
, а то их несколько в системе.

пробовал- чего-то не работает-а в gooogleChrome даже маленькие + ки не отображаются-а в лисице отображаются но не работают...

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

Link to post
Share on other sites

пробовал- чего-то не работает-а в gooogleChrome даже маленькие + ки не отображаются-а в лисице отображаются но не работают...

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

О, спасибо за корректировку.

В код файла category.tpl

<a class="button_add_small" onclick="addToCart(<?php echo $products[$j]['product_id']; ?>);return false;"  id="add_to_cart<?php echo $products[$j]['product_id']; ?>" class="buy"> </a>
Добавить   перед </a>
Link to post
Share on other sites

О, спасибо за корректировку.

В код файла category.tpl

<a class="button_add_small" onclick="addToCart(<?php echo $products[$j]['product_id']; ?>);return false;"  id="add_to_cart<?php echo $products[$j]['product_id']; ?>" class="buy"> </a>
Добавить   перед </a>

в chrome + появился.

Куда только скрипт не вставлял и в /view/theme/default/template/common/header.tpl между <head></head>

и в /view/theme/default/template/product/category.tpl

не работает и всё--где б отладочную инфу посмотреть а то кликаю на + ничего не поисходит.

может он какой-нибудь "библиотеки" ajax не видит--блин плохо быть дубом в php-Jscrip-то строении.

Link to post
Share on other sites

во приколы--в винде на обоих компах ie6(наверно уже другие версии есть?:)) --одинаковый абслютно-а смотрится сайт на одном криво--центральная часть провалилась вниз--а на другом нормально.

Arora немного не так скрипт отрабатывает при удалении из корзины(но ей-ним-оно и так мало кто пользуется)

Link to post
Share on other sites

во приколы--в винде на обоих компах ie6(наверно уже другие версии есть?:)) --одинаковый абслютно-а смотрится сайт на одном криво--центральная часть провалилась вниз--а на другом нормально.

Arora немного не так скрипт отрабатывает при удалении из корзины(но ей-ним-оно и так мало кто пользуется)

ссылку в студию или в личку.
Link to post
Share on other sites

пора бы уже отказаться от ие6

Link to post
Share on other sites

ссылку в студию или в личку.

я у себя локально тестирую.
Link to post
Share on other sites

  • 1 month later...

Подскажите пожалуйста, все сделал, список выводится, вот только, как вношу изменения в файл category.php сразу все перестает работать, куда там конкретно надо вставлять, что я не так делаю?

Link to post
Share on other sites

Уважаемые специалисты! Очень нужна Ваша помощь. Есть такой шаблон под названием starburst.

Изображение

И пять цветов на выбор и слеплен неплохо, но вот беда: в файле category.tpl НЕТ

<table class="listp">

<?php for ($i = 0; $i < sizeof($products); $i = $i + 4) { ?>

Как при таких раскладах сделать список? Напишите, если можно подробнее. С меня пиво. :rolleyes:

Файл удален.

Оф. сайт

Собственно сайт, где продается

В следующий раз за выкладывание платного расширения (модуль, тема оформления еще чего) дам бан.

afwollis

Edited by afwollis
Link to post
Share on other sites

alexander.p, будь человеком, выложи подробный алгоритм. Мэшог дэнэг дам! :rolleyes:

Link to post
Share on other sites

Уважаемые специалисты! Очень нужна Ваша помощь. Есть такой шаблон под названием starburst.

И пять цветов на выбор и слеплен неплохо, но вот беда: в файле category.tpl НЕТ

<table class="listp">

<?php for ($i = 0; $i < sizeof($products); $i = $i + 4) { ?>

Зато там есть то же самое, только
<table class="list">
)))

Будьте внимательнее.

  • +1 1
Link to post
Share on other sites

Файл удален.

В следующий раз за выкладывание платного расширения (модуль, тема оформления еще чего) дам бан. (с)

Однако! Но дело в том, что шаблон-то бесплатный. Во всяком случае скачан мной как бесплатный.

Link to post
Share on other sites

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
  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • 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.