vendor/shopware/storefront/Resources/views/storefront/component/product/card/box-standard.html.twig line 1

Open in your IDE?
  1. {% block component_product_box %}
  2.     {% if product %}
  3.         {% set name = product.translated.name %}
  4.         {% set id = product.id %}
  5.         {% set cover = product.cover.media %}
  6.         {% set variation = product.variation %}
  7.         {% set displayParent = product.variantListingConfig.displayParent and product.parentId === null %}
  8.         <div class="card product-box box-{{ layout }}">
  9.             {% block component_product_box_content %}
  10.                 <div class="card-body">
  11.                     {% block component_product_box_badges %}
  12.                         {% sw_include '@Storefront/storefront/component/product/card/badges.html.twig' %}
  13.                     {% endblock %}
  14.                     {% block component_product_box_rich_snippets %}
  15.                         {# @deprecated tag:v6.5.0 - Block will be removed completely including the template it references #}
  16.                         {% sw_include '@Storefront/storefront/component/product/card/meta.html.twig' %}
  17.                     {% endblock %}
  18.                     {% block component_product_box_image %}
  19.                         <div class="product-image-wrapper">
  20.                             {# fallback if display mode is not set #}
  21.                             {% set displayMode = displayMode ?: 'standard' %}
  22.                             {# set display mode 'cover' for box-image with standard display mode #}
  23.                             {% if layout == 'image' and displayMode == 'standard' %}
  24.                                 {% set displayMode = 'cover' %}
  25.                             {% endif %}
  26.                             {% block component_product_box_image_link %}
  27.                                 <a href="{{ seoUrl('frontend.detail.page', { 'productId': id }) }}"
  28.                                    title="{{ name }}"
  29.                                    class="product-image-link is-{{ displayMode }}">
  30.                                     {% block component_product_box_image_link_inner %}
  31.                                         {% if cover.url %}
  32.                                             {% set attributes = {
  33.                                                 'class': 'product-image is-'~displayMode,
  34.                                                 'alt': (cover.translated.alt ?: name),
  35.                                                 'title': (cover.translated.title ?: name)
  36.                                             } %}
  37.                                             {% if displayMode == 'cover' or displayMode == 'contain' %}
  38.                                                 {% set attributes = attributes|merge({ 'data-object-fit': displayMode }) %}
  39.                                             {% endif %}
  40.                                             {% block component_product_box_image_thumbnail %}
  41.                                                 {% sw_thumbnails 'product-image-thumbnails' with {
  42.                                                     media: cover,
  43.                                                     sizes: sizes
  44.                                                 } %}
  45.                                             {% endblock %}
  46.                                         {% else %}
  47.                                             {% block component_product_box_image_placeholder %}
  48.                                                 <div class="product-image-placeholder">
  49.                                                     {% sw_icon 'placeholder' style {
  50.                                                         'size': 'fluid'
  51.                                                     } %}
  52.                                                 </div>
  53.                                             {% endblock %}
  54.                                         {% endif %}
  55.                                     {% endblock %}
  56.                                 </a>
  57.                             {% endblock %}
  58.                             {% if config('core.cart.wishlistEnabled') %}
  59.                                 {% block component_product_box_wishlist_action %}
  60.                                     {% sw_include '@Storefront/storefront/component/product/card/wishlist.html.twig' with {
  61.                                         appearance: 'circle',
  62.                                         productId: id
  63.                                     } %}
  64.                                 {% endblock %}
  65.                             {% endif %}
  66.                         </div>
  67.                     {% endblock %}
  68.                     {% block component_product_box_info %}
  69.                         <div class="product-info">
  70.                             {% block component_product_box_rating %}
  71.                                 {% if config('core.listing.showReview') %}
  72.                                     <div class="product-rating">
  73.                                         {% if product.ratingAverage %}
  74.                                             {% sw_include '@Storefront/storefront/component/review/rating.html.twig' with {
  75.                                                 points: product.ratingAverage,
  76.                                                 style: 'text-primary'
  77.                                             } %}
  78.                                         {% endif %}
  79.                                     </div>
  80.                                 {% endif %}
  81.                             {% endblock %}
  82.                             {% block component_product_box_name %}
  83.                                 <a href="{{ seoUrl('frontend.detail.page', {'productId': id}) }}"
  84.                                    class="product-name"
  85.                                    title="{{ name }}">
  86.                                     {{ name }}
  87.                                 </a>
  88.                             {% endblock %}
  89.                             {% block component_product_box_variant_characteristics %}
  90.                                 <div class="product-variant-characteristics">
  91.                                     <div class="product-variant-characteristics-text">
  92.                                         {% if not displayParent %}
  93.                                             {% for variation in product.variation %}
  94.                                                 {{ variation.group }}:
  95.                                                 <span class="product-variant-characteristics-option">
  96.                                                     {{ variation.option }}
  97.                                                 </span>
  98.                                                 {% if product.variation|last != variation %}
  99.                                                     {{ " | " }}
  100.                                                 {% endif %}
  101.                                             {% endfor %}
  102.                                         {% endif %}
  103.                                     </div>
  104.                                 </div>
  105.                             {% endblock %}
  106.                             {% block component_product_box_description %}
  107.                                 <div class="product-description">
  108.                                     {{ product.translated.description|striptags|raw }}
  109.                                 </div>
  110.                             {% endblock %}
  111.                             {% block component_product_box_price %}
  112.                                 {% sw_include '@Storefront/storefront/component/product/card/price-unit.html.twig' %}
  113.                             {% endblock %}
  114.                             {% block component_product_box_action %}
  115.                                 {% sw_include '@Storefront/storefront/component/product/card/action.html.twig' %}
  116.                             {% endblock %}
  117.                         </div>
  118.                     {% endblock %}
  119.                 </div>
  120.             {% endblock %}
  121.         </div>
  122.     {% endif %}
  123. {% endblock %}