Перейти к содержанию
Gann

Другой вид у лист/сетка Opencart 2

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

Здравствуйте!

Задался вопросом, как можно изменить внешний вид только у сетки или списка в категории товаров Опенкарт 2.

 

Допустим, если выбран вид отображения "Список", то выводить только название товара, кнопки купить с другими классами и т.д.. Если выбран вид "Сетка", то показывать название, картинку  и т.д.

 

Попробовал в файле category.tpl использовать проверку класса php class exist, но как то не сработало. Какие другие варианты можно использовать? Не хотелось бы использовать hide

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


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

Вы не туда смотрите.

Смотрите на родительский div карточки товара там где есть класс list-view  и grid-view

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

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


Ссылка на сообщение
Поделиться на другие сайты
5 минут назад, jaffagold сказал:

Вы не туда смотрите.

Смотрите на родительский div карточки товара там где есть класс list-view grid-view

Версия 2.1.0.2, поиском прошёл по product.tpl - нет такого, нет такого и в category.tpl

 

В последнем есть только 2 кнопки <button type="button" id="grid-view"

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

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


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

Смотрите файл catalog\view\javascript\common.js

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


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

Во-первых, вам совсем не нужен product.tpl, а надо смотреть  category.tpl

Во-вторых, посмотрите в инспекторе кода на стили карточки товара и на класс блока, о котором я писал.

Вы хотите изменить вид элементов в карточке товара. Значит вам надо работать с файлом stylesheet.css

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

.product-grid ваш элемент {ваши стили} и 

.product-list ваш элемент {ваши стили}

Скрытый текст

58d4c6799d047_.thumb.jpg.fbb79b50fef909d99f6be73a17fcfa1d.jpg

 

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

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


Ссылка на сообщение
Поделиться на другие сайты
В Friday, March 24, 2017 в 09:02, jaffagold сказал:

Во-первых, вам совсем не нужен product.tpl, а надо смотреть  category.tpl

Во-вторых, посмотрите в инспекторе кода на стили карточки товара и на класс блока, о котором я писал.

Вы хотите изменить вид элементов в карточке товара. Значит вам надо работать с файлом stylesheet.css

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

.product-grid ваш элемент {ваши стили} и 

.product-list ваш элемент {ваши стили}

  Показать контент

58d4c6799d047_.thumb.jpg.fbb79b50fef909d99f6be73a17fcfa1d.jpg

 

 

Что-то не то)

 

Я хочу, образно говоря, чтобы при нажатии кнопки "Товары списком" в категории - товары отображались списком, а именно - название-ссылка товара и кнопка купить напротив каждого. А когда нажимаем "Товары сеткой" в категории - отображалось как обычно по умолчанию на стандартной теме опенкарта.

 

Т.е. примерно такую логику в category.tpl

 



<?php foreach ($products as $product) { ?> <div class="product-layout product-list col-md-12"> <? php if class_exists(product-list) }?> <div class="product-thumbNEW"> <div> <div class="caption"> <h4><a href="<?php echo $product['href']; ?>"><?php echo $product['name']; ?></a></h4> </div> <div class="button-group"> <button type="button" onclick="cart.add('<?php echo $product['product_id']; ?>', '<?php echo $product['minimum']; ?>');"><i class="fa fa-shopping-cart"></i> <span class="hidden-xs hidden-sm hidden-md"><?php echo $button_cart; ?></span></button> <button type="button" data-toggle="tooltip" title="<?php echo $button_wishlist; ?>" onclick="wishlist.add('<?php echo $product['product_id']; ?>');"><i class="fa fa-bookmark-o"></i></button> <button type="button" data-toggle="tooltip" title="<?php echo $button_compare; ?>" onclick="compare.add('<?php echo $product['product_id']; ?>');"><i class="fa fa-files-o"></i></button> </div> </div> </div> <? } else { ?> <div class="product-thumb"> <div class="image"><a href="<?php echo $product['href']; ?>"><img src="<?php echo $product['thumb']; ?>" alt="<?php echo $product['name']; ?>" title="<?php echo $product['name']; ?>" class="img-responsive" /></a></div> <div> <div class="caption"> <h4><a href="<?php echo $product['href']; ?>"><?php echo $product['name']; ?></a></h4> <p><?php echo $product['description']; ?></p> <?php if ($product['rating']) { ?> <div class="rating"> <?php for ($i = 1; $i <= 5; $i++) { ?> <?php if ($product['rating'] < $i) { ?> <span class="fa fa-stack"><i class="fa fa-star-o fa-stack-2x"></i></span> <?php } else { ?> <span class="fa fa-stack"><i class="fa fa-star fa-stack-2x"></i><i class="fa fa-star-o fa-stack-2x"></i></span> <?php } ?> <?php } ?> </div> <?php } ?> <?php if ($product['price']) { ?> <p class="price"> <?php if (!$product['special']) { ?> <?php echo $product['price']; ?> <?php } else { ?> <span class="price-new"><?php echo $product['special']; ?></span> <span class="price-old"><?php echo $product['price']; ?></span> <?php } ?> <?php if ($product['tax']) { ?> <span class="price-tax"><?php echo $text_tax; ?> <?php echo $product['tax']; ?></span> <?php } ?> </p> <?php } ?> </div> <div class="button-group"> <button type="button" onclick="cart.add('<?php echo $product['product_id']; ?>', '<?php echo $product['minimum']; ?>');"><i class="fa fa-shopping-cart"></i> <span class="hidden-xs hidden-sm hidden-md"><?php echo $button_cart; ?></span></button> <button type="button" data-toggle="tooltip" title="<?php echo $button_wishlist; ?>" onclick="wishlist.add('<?php echo $product['product_id']; ?>');"><i class="fa fa-heart"></i></button> <button type="button" data-toggle="tooltip" title="<?php echo $button_compare; ?>" onclick="compare.add('<?php echo $product['product_id']; ?>');"><i class="fa fa-exchange"></i></button> </div> </div> </div> <?php } ?> </div> <?php } ?>

 

 

Изменено пользователем Skunk
[spoiler]

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


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


То есть, если есть класс product-list, то выводим так, если нет (т.е. есть другой класс product-grid), то выводим эдак

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


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

На самом деле все придумано до нас.

Есть модуль Третий вид списка товаров в виде прайс-листа

Можно разобраться как там сделано и сделать по аналогии.

  • +1 1

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


Ссылка на сообщение
Поделиться на другие сайты
45 минут назад, jaffagold сказал:

На самом деле все придумано до нас.

Есть модуль Третий вид списка товаров в виде прайс-листа

Можно разобраться как там сделано и сделать по аналогии.

 

 

Благодарю! Обязательно посмотрю как сделано - может и получится аналогию выстроить, тем более других вариантов пока не вижу.

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


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

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

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

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

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

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

Войти

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

Войти

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

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

×

Важная информация

На нашем сайте используются файлы cookie и происходит обработка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфиденциальности.