alexander.p

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

Рекомендуемые сообщения

alexander.p    1

Здравствуйте, подскажите, пожалуйста, мне надо перенести кол-во и кнопку добавить в корзину отсюда 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

Изменено пользователем afwollis
поправил ссылки

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
sedo    0

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
alexander.p    1

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

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. Функция добавления в корзину упрощена, т. е. убрана анимация изображения, убрана картинка рядом с товаром, упрощена проверка товара на спец. цену. Изменено пользователем afwollis
edit -> save

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
natali    1

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

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

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

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
afwollis    1 098

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

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

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
antonqs    0

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
natali    1

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

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

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

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
plotb    0

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

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

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
IvanMorev    0

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
, а то их несколько в системе.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
plotb    0

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

да, я сделал

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

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

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
IvanMorev    0

пробовал- чего-то не работает-а в 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>

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
plotb    0

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

В код файла 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-то строении.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
plotb    0

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

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
IvanMorev    0

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

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

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Fix305    164

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
plotb    0

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

я у себя локально тестирую.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
surebk    0

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Xenos    1

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

Изображение

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

<table class="listp">

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

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

Файл удален.

Оф. сайт

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

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

afwollis

Изменено пользователем afwollis

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Xenos    1

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
EvzeNsx    83

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

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

<table class="listp">

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

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

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Xenos    1

Файл удален.

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

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти


  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу