Jump to content
Sign in to follow this  
Gann

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

Recommended Posts

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

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

 

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

 

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

Share this post


Link to post
Share on other sites

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

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

Edited by jaffagold

Share this post


Link to post
Share on other sites
5 минут назад, jaffagold сказал:

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

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

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

 

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

Edited by Gann

Share this post


Link to post
Share on other sites

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

Share this post


Link to post
Share on other sites

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

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

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

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

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

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

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

58d4c6799d047_.thumb.jpg.fbb79b50fef909d99f6be73a17fcfa1d.jpg

 

Edited by jaffagold

Share this post


Link to post
Share on other sites
В 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 } ?>

 

 

Edited by Skunk
[spoiler]

Share this post


Link to post
Share on other sites


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

Share this post


Link to post
Share on other sites
45 минут назад, jaffagold сказал:

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

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

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

 

 

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

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
You are posting as a guest. If you have an account, please sign in.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  

  • Recently Browsing   0 members

    No registered users viewing this page.

×

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.