Components

12 Twig Components
44 Render Count
151 ms Render Time
114.0 MiB Memory Usage

Components

Name Metadata Render Count Render Time
sylius_shop:product:card
"Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent"
@SyliusUi/components/default.html.twig
9 81.04ms
sylius_shop:main_image
[Anonymous]
@SyliusShop/shared/components/main_image.html.twig
9 24.50ms
sylius_shop:catalog_promotions
[Anonymous]
@SyliusShop/shared/components/catalog_promotions.html.twig
9 7.21ms
sylius_shop:product:card:price
"Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent"
@SyliusUi/components/default.html.twig
9 1.52ms
sylius_shop:common:currency_switcher
"Sylius\Bundle\ShopBundle\Twig\Component\Common\CurrencySwitcherComponent"
@SyliusUi/components/default.html.twig
1 1.12ms
sylius_shop:common:locale_switcher
"Sylius\Bundle\ShopBundle\Twig\Component\Common\LocaleSwitcherComponent"
@SyliusUi/components/default.html.twig
1 0.73ms
sylius_shop:cart:widget
"Sylius\Bundle\ShopBundle\Twig\Component\Cart\WidgetComponent"
@SyliusUi/components/default.html.twig
1 12.90ms
sylius_shop:common:taxon_menu
"Sylius\Bundle\ShopBundle\Twig\Component\Common\TaxonMenuComponent"
@SyliusUi/components/default.html.twig
1 46.59ms
sylius_shop:product:show:breadcrumbs
"Sylius\Bundle\ShopBundle\Twig\Component\Product\BreadcrumbComponent"
@SyliusUi/components/default.html.twig
1 1.05ms
sylius_shop:product:show:taxonomy
"Sylius\Bundle\ShopBundle\Twig\Component\Product\BreadcrumbComponent"
@SyliusUi/components/default.html.twig
1 0.65ms
sylius_shop:product:show:header
"Sylius\Bundle\ShopBundle\Twig\Component\Product\BreadcrumbComponent"
@SyliusUi/components/default.html.twig
1 4.94ms
sylius_shop:cart:widget:offcanvas
"Sylius\Bundle\ShopBundle\Twig\Component\Cart\WidgetComponent"
@SyliusUi/components/default.html.twig
1 2.05ms

Render calls

sylius_shop:common:currency_switcher Sylius\Bundle\ShopBundle\Twig\Component\Common\CurrencySwitcherComponent 114.0 MiB 1.12 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#12173
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#12166 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#12172 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#12171 …}
    +prefixes: [
      "sylius_shop.base.header.top_bar"
    ]
  }
  "template" => "@SyliusShop/shared/layout/base/header/top_bar/currency_switcher.html.twig"
]
Attributes
[
  "template" => "@SyliusShop/shared/layout/base/header/top_bar/currency_switcher.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Common\CurrencySwitcherComponent {#12793
  #channelContext: Sylius\Component\Channel\Context\CachedPerRequestChannelContext {#4203 …}
  #currencyContext: Sylius\Component\Core\Currency\Context\ChannelAwareCurrencyContext {#12064 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#12173
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#12166 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#12172 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#12171 …}
    +prefixes: [
      "sylius_shop.base.header.top_bar"
    ]
  }
}
sylius_shop:common:locale_switcher Sylius\Bundle\ShopBundle\Twig\Component\Common\LocaleSwitcherComponent 114.0 MiB 0.73 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#12870
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#12866 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#12868 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#12869 …}
    +prefixes: [
      "sylius_shop.base.header.top_bar"
    ]
  }
  "template" => "@SyliusShop/shared/layout/base/header/top_bar/locale_switcher.html.twig"
]
Attributes
[
  "template" => "@SyliusShop/shared/layout/base/header/top_bar/locale_switcher.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Common\LocaleSwitcherComponent {#12879
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  #localeProvider: Sylius\Component\Core\Provider\ChannelBasedLocaleProvider {#4528 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#12870
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#12866 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#12868 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#12869 …}
    +prefixes: [
      "sylius_shop.base.header.top_bar"
    ]
  }
}
sylius_shop:cart:widget Sylius\Bundle\ShopBundle\Twig\Component\Cart\WidgetComponent 114.0 MiB 12.90 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#12961
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#12940 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#12960 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#12959 …}
    +prefixes: [
      "sylius_shop.base.header.content"
    ]
  }
  "template" => "@SyliusShop/shared/components/header/cart.html.twig"
]
Attributes
[]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Cart\WidgetComponent {#12976
  +cart: App\Entity\Order\Order {#13043 …}
  #cartContext: Sylius\Component\Order\Context\CompositeCartContext {#1322 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#12961
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#12940 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#12960 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#12959 …}
    +prefixes: [
      "sylius_shop.base.header.content"
    ]
  }
  +template: "@SyliusShop/shared/components/header/cart.html.twig"
  #repository: Sylius\Bundle\CoreBundle\Doctrine\ORM\OrderRepository {#4980 …}
}
sylius_shop:common:taxon_menu Sylius\Bundle\ShopBundle\Twig\Component\Common\TaxonMenuComponent 114.0 MiB 46.59 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#13229
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#13217 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#13223 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#13215 …}
    +prefixes: [
      "sylius_shop.base.header.navbar"
    ]
  }
  "template" => "@SyliusShop/shared/layout/base/header/navbar/menu.html.twig"
]
Attributes
[
  "template" => "@SyliusShop/shared/layout/base/header/navbar/menu.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Common\TaxonMenuComponent {#13238
  #taxonRepository: App\Repository\TaxonRepository {#7413 …}
  #channelContext: Sylius\Component\Channel\Context\CachedPerRequestChannelContext {#4203 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#13229
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#13217 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#13223 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#13215 …}
    +prefixes: [
      "sylius_shop.base.header.navbar"
    ]
  }
}
sylius_shop:product:show:breadcrumbs Sylius\Bundle\ShopBundle\Twig\Component\Product\BreadcrumbComponent 114.0 MiB 1.05 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27466
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27462 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27463 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27465 …}
    +prefixes: [
      "sylius_shop.product.index.content"
    ]
  }
  "template" => "@SyliusShop/product/index/content/breadcrumbs.html.twig"
]
Attributes
[
  "template" => "@SyliusShop/product/index/content/breadcrumbs.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\BreadcrumbComponent {#27475
  #requestStack: Symfony\Component\HttpFoundation\RequestStack {#243 …}
  #taxonRepository: App\Repository\TaxonRepository {#7413 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27466
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27462 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27463 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27465 …}
    +prefixes: [
      "sylius_shop.product.index.content"
    ]
  }
}
sylius_shop:product:show:taxonomy Sylius\Bundle\ShopBundle\Twig\Component\Product\BreadcrumbComponent 114.0 MiB 0.65 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27579
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27575 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27576 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27578 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.sidebar"
    ]
  }
  "template" => "@SyliusShop/product/index/content/body/sidebar/taxonomy.html.twig"
]
Attributes
[
  "template" => "@SyliusShop/product/index/content/body/sidebar/taxonomy.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\BreadcrumbComponent {#27587
  #requestStack: Symfony\Component\HttpFoundation\RequestStack {#243 …}
  #taxonRepository: App\Repository\TaxonRepository {#7413 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27579
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27575 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27576 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27578 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.sidebar"
    ]
  }
}
sylius_shop:product:show:header Sylius\Bundle\ShopBundle\Twig\Component\Product\BreadcrumbComponent 114.0 MiB 4.94 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27650
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27646 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27647 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27649 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
  "template" => "@SyliusShop/product/index/content/body/main/header.html.twig"
]
Attributes
[
  "template" => "@SyliusShop/product/index/content/body/main/header.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\BreadcrumbComponent {#27658
  #requestStack: Symfony\Component\HttpFoundation\RequestStack {#243 …}
  #taxonRepository: App\Repository\TaxonRepository {#7413 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27650
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27646 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27647 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27649 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
}
sylius_shop:product:card Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent 114.0 MiB 18.90 ms
Input props
[
  "product" => App\Entity\Product\Product {#7969
    #id: 621
    #code: "couteau-de-cuisine-fuso-lion-sabatier-321"
    #attributes: Doctrine\ORM\PersistentCollection {#8178 …}
    #variants: Doctrine\ORM\PersistentCollection {#8401 …}
    #options: Doctrine\ORM\PersistentCollection {#8529 …}
    #associations: Doctrine\ORM\PersistentCollection {#8469 …}
    #createdAt: DateTime @1758632233 {#7766
      date: 2025-09-23 20:57:13.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632233 {#7832
      date: 2025-09-23 20:57:13.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8528 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8531
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#7969}
        #id: 621
        #name: "Couteau de cuisine Fuso Lion Sabatier"
        #slug: "couteau-de-cuisine-fuso-lion-sabatier-321"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Garantie 10 ans.</li>\n
          <li>Tenue en main optimale.</li>\n
          <li>Qualit&eacute; professionnelle.&nbsp;</li>\n
          <li>Va au lave vaisselle.&nbsp;</li>\n
          <li><strong>Fabrication fran&ccedil;aise. Thiers (Puy de D&ocirc;me Auvergne)</strong></li>\n
          </ul></div><h1>Description couteau de cuisine Fuso Lion Sabatier</h1><div class="col is-12">Le couteau de cuisine Fuso Lion Sabatier &agrave; la fois esth&eacute;tique et efficace assure un tranchant et un &eacute;quilibre parfait. Egalement appel&eacute; &eacute;minceur, il est indispensable pour d&eacute;couper un gigot, pour &eacute;mincer les l&eacute;gumes et tailler en julienne et pour trancher les pi&egrave;ces de viande.<a style="color: #ff6600;" href="http://www.cuisinstore.com/couteau-de-cuisine-ustensiles-de-cuisine-399.html" target="_blank"><br /></a></div><h1>Caractéristiques couteau de cuisine Fuso Lion Sabatier</h1><div class="col is-12">Lame inox carbone trait&eacute;e et forg&eacute;e. Fil carbone micro-biseaut&eacute; sym&eacute;triquement permettant une utilisation de coupe et un r&eacute;affutage aussi efficace pour droitier comme pour gaucher. Structure monovolume. Manche ergonomique. Garantie 10 ans. Va au lave vaisselle.<br /><br /><a target="_blank" href="http://www.cuisinstore.com/couteau-de-cuisine-ustensiles-de-cuisine-399.html" style="color: rgb(255, 102, 0);">Bien choisir son couteau de cuisine<br /></a></div>
          """
        #metaKeywords: null
        #metaDescription: null
        #shortDescription: null
        -fullTitle: null
        -metaTitle: null
      }
    ]
    #currentLocale: "fr_FR"
    #currentTranslation: null
    #fallbackLocale: "fr_FR"
    #variantSelectionMethod: "choice"
    #productTaxons: Doctrine\ORM\PersistentCollection {#8534 …}
    #channels: Doctrine\ORM\PersistentCollection {#8037 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#7828 …}
    #reviews: Doctrine\ORM\PersistentCollection {#7902 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8040 …}
    #productType: null
  }
  "template" => "@SyliusShop/product/common/card.html.twig"
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27715
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27748 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27754 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27741 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
]
Attributes
[
  "template" => "@SyliusShop/product/common/card.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent {#28183
  +product: App\Entity\Product\Product {#7969
    #id: 621
    #code: "couteau-de-cuisine-fuso-lion-sabatier-321"
    #attributes: Doctrine\ORM\PersistentCollection {#8178 …}
    #variants: Doctrine\ORM\PersistentCollection {#8401 …}
    #options: Doctrine\ORM\PersistentCollection {#8529 …}
    #associations: Doctrine\ORM\PersistentCollection {#8469 …}
    #createdAt: DateTime @1758632233 {#7766
      date: 2025-09-23 20:57:13.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632233 {#7832
      date: 2025-09-23 20:57:13.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8528 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8531
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#7969}
        #id: 621
        #name: "Couteau de cuisine Fuso Lion Sabatier"
        #slug: "couteau-de-cuisine-fuso-lion-sabatier-321"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Garantie 10 ans.</li>\n
          <li>Tenue en main optimale.</li>\n
          <li>Qualit&eacute; professionnelle.&nbsp;</li>\n
          <li>Va au lave vaisselle.&nbsp;</li>\n
          <li><strong>Fabrication fran&ccedil;aise. Thiers (Puy de D&ocirc;me Auvergne)</strong></li>\n
          </ul></div><h1>Description couteau de cuisine Fuso Lion Sabatier</h1><div class="col is-12">Le couteau de cuisine Fuso Lion Sabatier &agrave; la fois esth&eacute;tique et efficace assure un tranchant et un &eacute;quilibre parfait. Egalement appel&eacute; &eacute;minceur, il est indispensable pour d&eacute;couper un gigot, pour &eacute;mincer les l&eacute;gumes et tailler en julienne et pour trancher les pi&egrave;ces de viande.<a style="color: #ff6600;" href="http://www.cuisinstore.com/couteau-de-cuisine-ustensiles-de-cuisine-399.html" target="_blank"><br /></a></div><h1>Caractéristiques couteau de cuisine Fuso Lion Sabatier</h1><div class="col is-12">Lame inox carbone trait&eacute;e et forg&eacute;e. Fil carbone micro-biseaut&eacute; sym&eacute;triquement permettant une utilisation de coupe et un r&eacute;affutage aussi efficace pour droitier comme pour gaucher. Structure monovolume. Manche ergonomique. Garantie 10 ans. Va au lave vaisselle.<br /><br /><a target="_blank" href="http://www.cuisinstore.com/couteau-de-cuisine-ustensiles-de-cuisine-399.html" style="color: rgb(255, 102, 0);">Bien choisir son couteau de cuisine<br /></a></div>
          """
        #metaKeywords: null
        #metaDescription: null
        #shortDescription: null
        -fullTitle: null
        -metaTitle: null
      }
    ]
    #currentLocale: "fr_FR"
    #currentTranslation: null
    #fallbackLocale: "fr_FR"
    #variantSelectionMethod: "choice"
    #productTaxons: Doctrine\ORM\PersistentCollection {#8534 …}
    #channels: Doctrine\ORM\PersistentCollection {#8037 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#7828 …}
    #reviews: Doctrine\ORM\PersistentCollection {#7902 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8040 …}
    #productType: null
  }
  +variant: App\Entity\Product\ProductVariant {#28445 …}
  +slug: null
  #productRepository: Sylius\Bundle\CoreBundle\Doctrine\ORM\ProductRepository {#6914 …}
  #productVariantResolver: Sylius\Component\Product\Resolver\CompositeProductVariantResolver {#5455 …}
  #channelContext: Sylius\Component\Channel\Context\CachedPerRequestChannelContext {#4203 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  #productVariantPricesCalculator: Sylius\Component\Core\Calculator\ProductVariantPriceCalculator {#5465 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27715
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27748 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27754 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27741 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
}
sylius_shop:main_image
[Anonymous]
114.0 MiB 11.33 ms
Input props
[
  "product" => App\Entity\Product\Product {#7969
    #id: 621
    #code: "couteau-de-cuisine-fuso-lion-sabatier-321"
    #attributes: Doctrine\ORM\PersistentCollection {#8178 …}
    #variants: Doctrine\ORM\PersistentCollection {#8401 …}
    #options: Doctrine\ORM\PersistentCollection {#8529 …}
    #associations: Doctrine\ORM\PersistentCollection {#8469 …}
    #createdAt: DateTime @1758632233 {#7766
      date: 2025-09-23 20:57:13.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632233 {#7832
      date: 2025-09-23 20:57:13.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8528 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8531
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#7969}
        #id: 621
        #name: "Couteau de cuisine Fuso Lion Sabatier"
        #slug: "couteau-de-cuisine-fuso-lion-sabatier-321"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Garantie 10 ans.</li>\n
          <li>Tenue en main optimale.</li>\n
          <li>Qualit&eacute; professionnelle.&nbsp;</li>\n
          <li>Va au lave vaisselle.&nbsp;</li>\n
          <li><strong>Fabrication fran&ccedil;aise. Thiers (Puy de D&ocirc;me Auvergne)</strong></li>\n
          </ul></div><h1>Description couteau de cuisine Fuso Lion Sabatier</h1><div class="col is-12">Le couteau de cuisine Fuso Lion Sabatier &agrave; la fois esth&eacute;tique et efficace assure un tranchant et un &eacute;quilibre parfait. Egalement appel&eacute; &eacute;minceur, il est indispensable pour d&eacute;couper un gigot, pour &eacute;mincer les l&eacute;gumes et tailler en julienne et pour trancher les pi&egrave;ces de viande.<a style="color: #ff6600;" href="http://www.cuisinstore.com/couteau-de-cuisine-ustensiles-de-cuisine-399.html" target="_blank"><br /></a></div><h1>Caractéristiques couteau de cuisine Fuso Lion Sabatier</h1><div class="col is-12">Lame inox carbone trait&eacute;e et forg&eacute;e. Fil carbone micro-biseaut&eacute; sym&eacute;triquement permettant une utilisation de coupe et un r&eacute;affutage aussi efficace pour droitier comme pour gaucher. Structure monovolume. Manche ergonomique. Garantie 10 ans. Va au lave vaisselle.<br /><br /><a target="_blank" href="http://www.cuisinstore.com/couteau-de-cuisine-ustensiles-de-cuisine-399.html" style="color: rgb(255, 102, 0);">Bien choisir son couteau de cuisine<br /></a></div>
          """
        #metaKeywords: null
        #metaDescription: null
        #shortDescription: null
        -fullTitle: null
        -metaTitle: null
      }
    ]
    #currentLocale: "fr_FR"
    #currentTranslation: null
    #fallbackLocale: "fr_FR"
    #variantSelectionMethod: "choice"
    #productTaxons: Doctrine\ORM\PersistentCollection {#8534 …}
    #channels: Doctrine\ORM\PersistentCollection {#8037 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#7828 …}
    #reviews: Doctrine\ORM\PersistentCollection {#7902 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8040 …}
    #productType: null
  }
  "class" => "w-100 h-100 object-fit-cover"
]
Attributes
[
  "product" => "Couteau de cuisine Fuso Lion Sabatier"
  "class" => "w-100 h-100 object-fit-cover"
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#28856
  -props: [
    "product" => App\Entity\Product\Product {#7969
      #id: 621
      #code: "couteau-de-cuisine-fuso-lion-sabatier-321"
      #attributes: Doctrine\ORM\PersistentCollection {#8178 …}
      #variants: Doctrine\ORM\PersistentCollection {#8401 …}
      #options: Doctrine\ORM\PersistentCollection {#8529 …}
      #associations: Doctrine\ORM\PersistentCollection {#8469 …}
      #createdAt: DateTime @1758632233 {#7766
        date: 2025-09-23 20:57:13.0 PRC (+08:00)
      }
      #updatedAt: DateTime @1758632233 {#7832
        date: 2025-09-23 20:57:13.0 PRC (+08:00)
      }
      #enabled: true
      #translations: Doctrine\ORM\PersistentCollection {#8528 …}
      #translationsCache: [
        "fr_FR" => App\Entity\Product\ProductTranslation {#8531
          #locale: "fr_FR"
          #translatable: App\Entity\Product\Product {#7969}
          #id: 621
          #name: "Couteau de cuisine Fuso Lion Sabatier"
          #slug: "couteau-de-cuisine-fuso-lion-sabatier-321"
          #description: """
            <div class="col is-12"><ul>\n
            <li>Garantie 10 ans.</li>\n
            <li>Tenue en main optimale.</li>\n
            <li>Qualit&eacute; professionnelle.&nbsp;</li>\n
            <li>Va au lave vaisselle.&nbsp;</li>\n
            <li><strong>Fabrication fran&ccedil;aise. Thiers (Puy de D&ocirc;me Auvergne)</strong></li>\n
            </ul></div><h1>Description couteau de cuisine Fuso Lion Sabatier</h1><div class="col is-12">Le couteau de cuisine Fuso Lion Sabatier &agrave; la fois esth&eacute;tique et efficace assure un tranchant et un &eacute;quilibre parfait. Egalement appel&eacute; &eacute;minceur, il est indispensable pour d&eacute;couper un gigot, pour &eacute;mincer les l&eacute;gumes et tailler en julienne et pour trancher les pi&egrave;ces de viande.<a style="color: #ff6600;" href="http://www.cuisinstore.com/couteau-de-cuisine-ustensiles-de-cuisine-399.html" target="_blank"><br /></a></div><h1>Caractéristiques couteau de cuisine Fuso Lion Sabatier</h1><div class="col is-12">Lame inox carbone trait&eacute;e et forg&eacute;e. Fil carbone micro-biseaut&eacute; sym&eacute;triquement permettant une utilisation de coupe et un r&eacute;affutage aussi efficace pour droitier comme pour gaucher. Structure monovolume. Manche ergonomique. Garantie 10 ans. Va au lave vaisselle.<br /><br /><a target="_blank" href="http://www.cuisinstore.com/couteau-de-cuisine-ustensiles-de-cuisine-399.html" style="color: rgb(255, 102, 0);">Bien choisir son couteau de cuisine<br /></a></div>
            """
          #metaKeywords: null
          #metaDescription: null
          #shortDescription: null
          -fullTitle: null
          -metaTitle: null
        }
      ]
      #currentLocale: "fr_FR"
      #currentTranslation: null
      #fallbackLocale: "fr_FR"
      #variantSelectionMethod: "choice"
      #productTaxons: Doctrine\ORM\PersistentCollection {#8534 …}
      #channels: Doctrine\ORM\PersistentCollection {#8037 …}
      #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#7828 …}
      #reviews: Doctrine\ORM\PersistentCollection {#7902 …}
      #averageRating: 0.0
      #images: Doctrine\ORM\PersistentCollection {#8040 …}
      #productType: null
    }
    "class" => "w-100 h-100 object-fit-cover"
  ]
}
sylius_shop:catalog_promotions
[Anonymous]
114.0 MiB 1.19 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#28962
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#28929 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#28924 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#28957 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#28445 …}
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#28791
    #collection: Doctrine\Common\Collections\ArrayCollection {#28790 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#28628 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38362 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38414 …}
  }
  "withDescription" => false
]
Attributes
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#28962
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#28929 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#28924 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#28957 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => "Couteau de cuisine Fuso Lion Sabatier"
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#28791
    #collection: Doctrine\Common\Collections\ArrayCollection {#28790 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#28628 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38362 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38414 …}
  }
  "withDescription" => false
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#28958
  -props: [
    "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#28962
      +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#28929 …}
      +context: Sylius\TwigHooks\Bag\DataBag {#28924 …}
      +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#28957 …}
      +prefixes: [
        "sylius_shop.product.index.content.body.main.card.prices"
        "sylius_shop.shared.product.card.prices"
      ]
    }
    "variant" => App\Entity\Product\ProductVariant {#28445 …}
    "applied_promotions" => Doctrine\ORM\PersistentCollection {#28791
      #collection: Doctrine\Common\Collections\ArrayCollection {#28790 …}
      #initialized: true
      -snapshot: []
      -owner: App\Entity\Channel\ChannelPricing {#28628 …}
      -association: Symfony\Component\VarDumper\Caster\CutStub {#38362 …}
      -backRefFieldName: null
      -isDirty: false
      -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
      -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38414 …}
    }
    "withDescription" => false
  ]
}
sylius_shop:product:card:price Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent 114.0 MiB 0.37 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29030
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29020 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29028 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29029 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#28445 …}
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Attributes
[
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent {#29039
  +variant: App\Entity\Product\ProductVariant {#28445 …}
  +price: "72,00\u{A0}"
  +originalPrice: "72,00\u{A0}"
  +hasDiscount: false
  #productVariantPricesCalculator: Sylius\Component\Core\Calculator\ProductVariantPriceCalculator {#5465 …}
  #moneyFormatter: Sylius\Bundle\MoneyBundle\Formatter\MoneyFormatter {#8305 …}
  #channelContext: Sylius\Component\Channel\Context\CachedPerRequestChannelContext {#4203 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  #currencyContext: Sylius\Component\Core\Currency\Context\ChannelAwareCurrencyContext {#12064 …}
  #currencyConverter: Sylius\Component\Currency\Converter\CurrencyConverter {#8296 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29030
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29020 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29028 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29029 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
}
sylius_shop:product:card Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent 114.0 MiB 17.96 ms
Input props
[
  "product" => App\Entity\Product\Product {#8543
    #id: 1058
    #code: "couteau-opinel-inox-5867"
    #attributes: Doctrine\ORM\PersistentCollection {#8553 …}
    #variants: Doctrine\ORM\PersistentCollection {#8555 …}
    #options: Doctrine\ORM\PersistentCollection {#8559 …}
    #associations: Doctrine\ORM\PersistentCollection {#8557 …}
    #createdAt: DateTime @1758632301 {#8541
      date: 2025-09-23 20:58:21.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632301 {#8542
      date: 2025-09-23 20:58:21.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8562 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8563
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8543}
        #id: 1058
        #name: "Couteau Opinel inox"
        #slug: "couteau-opinel-inox-5867"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Embl&eacute;matique.</li>\n
          <li>Fabrication Fran&ccedil;aise (Savoie)</li>\n
          <li>Bague de s&eacute;curit&eacute;</li>\n
          <li>Lame en acier inoxydable.</li>\n
          </ul></div><h1>Descriptif Couteau Opinel inox</h1><div class="col is-12">Embl&eacute;matique couteau fabriqu&eacute; en France, <a rel="nofollow" href="https://www.cuisinstore.com/opinel-brd138-p1.html">l'Opinel</a> cr&eacute;&eacute; par Joseph Opinel en 1897 n'a cess&eacute; depuis lors de trouver sa place dans nos poches, cuisines et souvenirs les plus fervents. Sa lame en acier inoxydable se repliant dans le manche et prot&eacute;g&eacute;e par une bague de s&eacute;curit&eacute; ( le Virobloc ) en font un ustensile dont on aime se servir.</div><h1>Caractéristiques Couteau Opinel inox</h1><div class="col is-12">Lame en acier inoxydable avec teneur en carbone au moins &eacute;gale &agrave; 0,40 %.<br />Lame dite Yatagan meul&eacute;e selon un profil bomb&eacute; exclusif qui garantit la robustesse de la lame et permet des r&eacute;aff&ucirc;tages performants.<br />Manche en bois de h&ecirc;tre issu d'exploitations fran&ccedil;aises. Verni pour le prot&eacute;g&eacute;er des salissures et de l'humidit&eacute;.<br />Bague de s&eacute;curit&eacute; permettant d'interdire l'ouverture ou la fermeture. ( VIROBLOC )<br />Fabriqu&eacute; en FRANCE ( SAVOIE )&nbsp;</div>
          """
        #metaKeywords: null
        #metaDescription: null
        #shortDescription: null
        -fullTitle: null
        -metaTitle: null
      }
    ]
    #currentLocale: "fr_FR"
    #currentTranslation: null
    #fallbackLocale: "fr_FR"
    #variantSelectionMethod: "choice"
    #productTaxons: Doctrine\ORM\PersistentCollection {#8565 …}
    #channels: Doctrine\ORM\PersistentCollection {#8551 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8545 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8547 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8549 …}
    #productType: null
  }
  "template" => "@SyliusShop/product/common/card.html.twig"
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27715
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27748 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27754 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27741 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
]
Attributes
[
  "template" => "@SyliusShop/product/common/card.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent {#28834
  +product: App\Entity\Product\Product {#8543
    #id: 1058
    #code: "couteau-opinel-inox-5867"
    #attributes: Doctrine\ORM\PersistentCollection {#8553 …}
    #variants: Doctrine\ORM\PersistentCollection {#8555 …}
    #options: Doctrine\ORM\PersistentCollection {#8559 …}
    #associations: Doctrine\ORM\PersistentCollection {#8557 …}
    #createdAt: DateTime @1758632301 {#8541
      date: 2025-09-23 20:58:21.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632301 {#8542
      date: 2025-09-23 20:58:21.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8562 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8563
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8543}
        #id: 1058
        #name: "Couteau Opinel inox"
        #slug: "couteau-opinel-inox-5867"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Embl&eacute;matique.</li>\n
          <li>Fabrication Fran&ccedil;aise (Savoie)</li>\n
          <li>Bague de s&eacute;curit&eacute;</li>\n
          <li>Lame en acier inoxydable.</li>\n
          </ul></div><h1>Descriptif Couteau Opinel inox</h1><div class="col is-12">Embl&eacute;matique couteau fabriqu&eacute; en France, <a rel="nofollow" href="https://www.cuisinstore.com/opinel-brd138-p1.html">l'Opinel</a> cr&eacute;&eacute; par Joseph Opinel en 1897 n'a cess&eacute; depuis lors de trouver sa place dans nos poches, cuisines et souvenirs les plus fervents. Sa lame en acier inoxydable se repliant dans le manche et prot&eacute;g&eacute;e par une bague de s&eacute;curit&eacute; ( le Virobloc ) en font un ustensile dont on aime se servir.</div><h1>Caractéristiques Couteau Opinel inox</h1><div class="col is-12">Lame en acier inoxydable avec teneur en carbone au moins &eacute;gale &agrave; 0,40 %.<br />Lame dite Yatagan meul&eacute;e selon un profil bomb&eacute; exclusif qui garantit la robustesse de la lame et permet des r&eacute;aff&ucirc;tages performants.<br />Manche en bois de h&ecirc;tre issu d'exploitations fran&ccedil;aises. Verni pour le prot&eacute;g&eacute;er des salissures et de l'humidit&eacute;.<br />Bague de s&eacute;curit&eacute; permettant d'interdire l'ouverture ou la fermeture. ( VIROBLOC )<br />Fabriqu&eacute; en FRANCE ( SAVOIE )&nbsp;</div>
          """
        #metaKeywords: null
        #metaDescription: null
        #shortDescription: null
        -fullTitle: null
        -metaTitle: null
      }
    ]
    #currentLocale: "fr_FR"
    #currentTranslation: null
    #fallbackLocale: "fr_FR"
    #variantSelectionMethod: "choice"
    #productTaxons: Doctrine\ORM\PersistentCollection {#8565 …}
    #channels: Doctrine\ORM\PersistentCollection {#8551 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8545 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8547 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8549 …}
    #productType: null
  }
  +variant: App\Entity\Product\ProductVariant {#29112 …}
  +slug: null
  #productRepository: Sylius\Bundle\CoreBundle\Doctrine\ORM\ProductRepository {#6914 …}
  #productVariantResolver: Sylius\Component\Product\Resolver\CompositeProductVariantResolver {#5455 …}
  #channelContext: Sylius\Component\Channel\Context\CachedPerRequestChannelContext {#4203 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  #productVariantPricesCalculator: Sylius\Component\Core\Calculator\ProductVariantPriceCalculator {#5465 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27715
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27748 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27754 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27741 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
}
sylius_shop:main_image
[Anonymous]
114.0 MiB 7.65 ms
Input props
[
  "product" => App\Entity\Product\Product {#8543
    #id: 1058
    #code: "couteau-opinel-inox-5867"
    #attributes: Doctrine\ORM\PersistentCollection {#8553 …}
    #variants: Doctrine\ORM\PersistentCollection {#8555 …}
    #options: Doctrine\ORM\PersistentCollection {#8559 …}
    #associations: Doctrine\ORM\PersistentCollection {#8557 …}
    #createdAt: DateTime @1758632301 {#8541
      date: 2025-09-23 20:58:21.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632301 {#8542
      date: 2025-09-23 20:58:21.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8562 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8563
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8543}
        #id: 1058
        #name: "Couteau Opinel inox"
        #slug: "couteau-opinel-inox-5867"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Embl&eacute;matique.</li>\n
          <li>Fabrication Fran&ccedil;aise (Savoie)</li>\n
          <li>Bague de s&eacute;curit&eacute;</li>\n
          <li>Lame en acier inoxydable.</li>\n
          </ul></div><h1>Descriptif Couteau Opinel inox</h1><div class="col is-12">Embl&eacute;matique couteau fabriqu&eacute; en France, <a rel="nofollow" href="https://www.cuisinstore.com/opinel-brd138-p1.html">l'Opinel</a> cr&eacute;&eacute; par Joseph Opinel en 1897 n'a cess&eacute; depuis lors de trouver sa place dans nos poches, cuisines et souvenirs les plus fervents. Sa lame en acier inoxydable se repliant dans le manche et prot&eacute;g&eacute;e par une bague de s&eacute;curit&eacute; ( le Virobloc ) en font un ustensile dont on aime se servir.</div><h1>Caractéristiques Couteau Opinel inox</h1><div class="col is-12">Lame en acier inoxydable avec teneur en carbone au moins &eacute;gale &agrave; 0,40 %.<br />Lame dite Yatagan meul&eacute;e selon un profil bomb&eacute; exclusif qui garantit la robustesse de la lame et permet des r&eacute;aff&ucirc;tages performants.<br />Manche en bois de h&ecirc;tre issu d'exploitations fran&ccedil;aises. Verni pour le prot&eacute;g&eacute;er des salissures et de l'humidit&eacute;.<br />Bague de s&eacute;curit&eacute; permettant d'interdire l'ouverture ou la fermeture. ( VIROBLOC )<br />Fabriqu&eacute; en FRANCE ( SAVOIE )&nbsp;</div>
          """
        #metaKeywords: null
        #metaDescription: null
        #shortDescription: null
        -fullTitle: null
        -metaTitle: null
      }
    ]
    #currentLocale: "fr_FR"
    #currentTranslation: null
    #fallbackLocale: "fr_FR"
    #variantSelectionMethod: "choice"
    #productTaxons: Doctrine\ORM\PersistentCollection {#8565 …}
    #channels: Doctrine\ORM\PersistentCollection {#8551 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8545 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8547 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8549 …}
    #productType: null
  }
  "class" => "w-100 h-100 object-fit-cover"
]
Attributes
[
  "product" => "Couteau Opinel inox"
  "class" => "w-100 h-100 object-fit-cover"
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#29183
  -props: [
    "product" => App\Entity\Product\Product {#8543
      #id: 1058
      #code: "couteau-opinel-inox-5867"
      #attributes: Doctrine\ORM\PersistentCollection {#8553 …}
      #variants: Doctrine\ORM\PersistentCollection {#8555 …}
      #options: Doctrine\ORM\PersistentCollection {#8559 …}
      #associations: Doctrine\ORM\PersistentCollection {#8557 …}
      #createdAt: DateTime @1758632301 {#8541
        date: 2025-09-23 20:58:21.0 PRC (+08:00)
      }
      #updatedAt: DateTime @1758632301 {#8542
        date: 2025-09-23 20:58:21.0 PRC (+08:00)
      }
      #enabled: true
      #translations: Doctrine\ORM\PersistentCollection {#8562 …}
      #translationsCache: [
        "fr_FR" => App\Entity\Product\ProductTranslation {#8563
          #locale: "fr_FR"
          #translatable: App\Entity\Product\Product {#8543}
          #id: 1058
          #name: "Couteau Opinel inox"
          #slug: "couteau-opinel-inox-5867"
          #description: """
            <div class="col is-12"><ul>\n
            <li>Embl&eacute;matique.</li>\n
            <li>Fabrication Fran&ccedil;aise (Savoie)</li>\n
            <li>Bague de s&eacute;curit&eacute;</li>\n
            <li>Lame en acier inoxydable.</li>\n
            </ul></div><h1>Descriptif Couteau Opinel inox</h1><div class="col is-12">Embl&eacute;matique couteau fabriqu&eacute; en France, <a rel="nofollow" href="https://www.cuisinstore.com/opinel-brd138-p1.html">l'Opinel</a> cr&eacute;&eacute; par Joseph Opinel en 1897 n'a cess&eacute; depuis lors de trouver sa place dans nos poches, cuisines et souvenirs les plus fervents. Sa lame en acier inoxydable se repliant dans le manche et prot&eacute;g&eacute;e par une bague de s&eacute;curit&eacute; ( le Virobloc ) en font un ustensile dont on aime se servir.</div><h1>Caractéristiques Couteau Opinel inox</h1><div class="col is-12">Lame en acier inoxydable avec teneur en carbone au moins &eacute;gale &agrave; 0,40 %.<br />Lame dite Yatagan meul&eacute;e selon un profil bomb&eacute; exclusif qui garantit la robustesse de la lame et permet des r&eacute;aff&ucirc;tages performants.<br />Manche en bois de h&ecirc;tre issu d'exploitations fran&ccedil;aises. Verni pour le prot&eacute;g&eacute;er des salissures et de l'humidit&eacute;.<br />Bague de s&eacute;curit&eacute; permettant d'interdire l'ouverture ou la fermeture. ( VIROBLOC )<br />Fabriqu&eacute; en FRANCE ( SAVOIE )&nbsp;</div>
            """
          #metaKeywords: null
          #metaDescription: null
          #shortDescription: null
          -fullTitle: null
          -metaTitle: null
        }
      ]
      #currentLocale: "fr_FR"
      #currentTranslation: null
      #fallbackLocale: "fr_FR"
      #variantSelectionMethod: "choice"
      #productTaxons: Doctrine\ORM\PersistentCollection {#8565 …}
      #channels: Doctrine\ORM\PersistentCollection {#8551 …}
      #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8545 …}
      #reviews: Doctrine\ORM\PersistentCollection {#8547 …}
      #averageRating: 0.0
      #images: Doctrine\ORM\PersistentCollection {#8549 …}
      #productType: null
    }
    "class" => "w-100 h-100 object-fit-cover"
  ]
}
sylius_shop:catalog_promotions
[Anonymous]
114.0 MiB 0.93 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29273
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29167 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29240 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29164 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#29112 …}
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#29120
    #collection: Doctrine\Common\Collections\ArrayCollection {#29129 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#29108 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38434 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38436 …}
  }
  "withDescription" => false
]
Attributes
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29273
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29167 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29240 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29164 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => "Couteau Opinel inox"
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#29120
    #collection: Doctrine\Common\Collections\ArrayCollection {#29129 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#29108 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38434 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38436 …}
  }
  "withDescription" => false
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#29274
  -props: [
    "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29273
      +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29167 …}
      +context: Sylius\TwigHooks\Bag\DataBag {#29240 …}
      +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29164 …}
      +prefixes: [
        "sylius_shop.product.index.content.body.main.card.prices"
        "sylius_shop.shared.product.card.prices"
      ]
    }
    "variant" => App\Entity\Product\ProductVariant {#29112 …}
    "applied_promotions" => Doctrine\ORM\PersistentCollection {#29120
      #collection: Doctrine\Common\Collections\ArrayCollection {#29129 …}
      #initialized: true
      -snapshot: []
      -owner: App\Entity\Channel\ChannelPricing {#29108 …}
      -association: Symfony\Component\VarDumper\Caster\CutStub {#38434 …}
      -backRefFieldName: null
      -isDirty: false
      -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
      -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38436 …}
    }
    "withDescription" => false
  ]
}
sylius_shop:product:card:price Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent 114.0 MiB 0.15 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29327
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29318 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29325 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29326 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#29112 …}
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Attributes
[
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent {#29330
  +variant: App\Entity\Product\ProductVariant {#29112 …}
  +price: "9,00\u{A0}"
  +originalPrice: "9,00\u{A0}"
  +hasDiscount: false
  #productVariantPricesCalculator: Sylius\Component\Core\Calculator\ProductVariantPriceCalculator {#5465 …}
  #moneyFormatter: Sylius\Bundle\MoneyBundle\Formatter\MoneyFormatter {#8305 …}
  #channelContext: Sylius\Component\Channel\Context\CachedPerRequestChannelContext {#4203 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  #currencyContext: Sylius\Component\Core\Currency\Context\ChannelAwareCurrencyContext {#12064 …}
  #currencyConverter: Sylius\Component\Currency\Converter\CurrencyConverter {#8296 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29327
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29318 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29325 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29326 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
}
sylius_shop:product:card Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent 114.0 MiB 6.92 ms
Input props
[
  "product" => App\Entity\Product\Product {#8569
    #id: 958
    #code: "guillotine-a-saucisson-bron-coucke-4603"
    #attributes: Doctrine\ORM\PersistentCollection {#8579 …}
    #variants: Doctrine\ORM\PersistentCollection {#8581 …}
    #options: Doctrine\ORM\PersistentCollection {#8585 …}
    #associations: Doctrine\ORM\PersistentCollection {#8583 …}
    #createdAt: DateTime @1758632283 {#8567
      date: 2025-09-23 20:58:03.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632283 {#8568
      date: 2025-09-23 20:58:03.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8588 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8589
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8569}
        #id: 958
        #name: "Guillotine à saucisson Bron Coucke"
        #slug: "guillotine-a-saucisson-bron-coucke-4603"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Permet de belle tranches r&eacute;guli&egrave;res.</li>\n
          <li>Ludique.</li>\n
          <li>Lame inox qualit&eacute; coutellerie.</li>\n
          <li><strong>Fabrication fran&ccedil;aise. Mod&egrave;le original So Apero.</strong></li>\n
          </ul>\n
          <br /></div><h1>Description Guillotine à saucisson Bron Coucke</h1><div class="col is-12">La guillotine &agrave; saucisson permet de trancher facilement et en tranches r&eacute;guli&egrave;res toute sorte de saucisson, saucisse s&egrave;che, chorizo... Sa coupe en biais &agrave; effet cisaille est d'une efficacit&eacute; redoutable, c'est pourquoi elle est dot&eacute;e d'&eacute;quipemets de s&eacute;curit&eacute; pour parer &agrave; tout accident. Polyvalente, elle peut couper &eacute;galement le pain et certains l&eacute;gumes.</div><h1>Caractéristiques Guillotine à saucisson Bron Coucke</h1><div class="col is-12"><div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Munie d'un verrou de blocage et d'un arceau de s&eacute;curit&eacute;, elle est fabriqu&eacute;e en bois de h&ecirc;tre, et dot&eacute;e d'une lame en acier inoxydable tremp&eacute;, dentel&eacute;e, &agrave; l'aff&ucirc;tage rasoir. Ses 3 patins de caoutchouc antid&eacute;rapants lui assurent une bonne stabilit&eacute;. Fabrication fran&ccedil;aise.</div>\n
          <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Caract&eacute;ristiques techniques</div>\n
          <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Longueur: 28 cm
Largeur: 16 cm
Hauteur : 9 cm</div>\n
          <div>Verrou de blocage. Arceau de s&eacute;curit&eacute;. Corps en bois de h&ecirc;tre. Lame en acier inoxydable tremp&eacute;, dentel&eacute;e. 3 patins caoutchouc antid&eacute;rapants. Fabrication fran&ccedil;aise. Dimensions : longueur: 28 cm
. largeur: 16 cm
. hauteur : 9 cm.</div></div>
          """
        #metaKeywords: null
        #metaDescription: null
        #shortDescription: null
        -fullTitle: null
        -metaTitle: null
      }
    ]
    #currentLocale: "fr_FR"
    #currentTranslation: null
    #fallbackLocale: "fr_FR"
    #variantSelectionMethod: "choice"
    #productTaxons: Doctrine\ORM\PersistentCollection {#8591 …}
    #channels: Doctrine\ORM\PersistentCollection {#8577 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8571 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8573 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8575 …}
    #productType: null
  }
  "template" => "@SyliusShop/product/common/card.html.twig"
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27715
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27748 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27754 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27741 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
]
Attributes
[
  "template" => "@SyliusShop/product/common/card.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent {#29174
  +product: App\Entity\Product\Product {#8569
    #id: 958
    #code: "guillotine-a-saucisson-bron-coucke-4603"
    #attributes: Doctrine\ORM\PersistentCollection {#8579 …}
    #variants: Doctrine\ORM\PersistentCollection {#8581 …}
    #options: Doctrine\ORM\PersistentCollection {#8585 …}
    #associations: Doctrine\ORM\PersistentCollection {#8583 …}
    #createdAt: DateTime @1758632283 {#8567
      date: 2025-09-23 20:58:03.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632283 {#8568
      date: 2025-09-23 20:58:03.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8588 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8589
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8569}
        #id: 958
        #name: "Guillotine à saucisson Bron Coucke"
        #slug: "guillotine-a-saucisson-bron-coucke-4603"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Permet de belle tranches r&eacute;guli&egrave;res.</li>\n
          <li>Ludique.</li>\n
          <li>Lame inox qualit&eacute; coutellerie.</li>\n
          <li><strong>Fabrication fran&ccedil;aise. Mod&egrave;le original So Apero.</strong></li>\n
          </ul>\n
          <br /></div><h1>Description Guillotine à saucisson Bron Coucke</h1><div class="col is-12">La guillotine &agrave; saucisson permet de trancher facilement et en tranches r&eacute;guli&egrave;res toute sorte de saucisson, saucisse s&egrave;che, chorizo... Sa coupe en biais &agrave; effet cisaille est d'une efficacit&eacute; redoutable, c'est pourquoi elle est dot&eacute;e d'&eacute;quipemets de s&eacute;curit&eacute; pour parer &agrave; tout accident. Polyvalente, elle peut couper &eacute;galement le pain et certains l&eacute;gumes.</div><h1>Caractéristiques Guillotine à saucisson Bron Coucke</h1><div class="col is-12"><div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Munie d'un verrou de blocage et d'un arceau de s&eacute;curit&eacute;, elle est fabriqu&eacute;e en bois de h&ecirc;tre, et dot&eacute;e d'une lame en acier inoxydable tremp&eacute;, dentel&eacute;e, &agrave; l'aff&ucirc;tage rasoir. Ses 3 patins de caoutchouc antid&eacute;rapants lui assurent une bonne stabilit&eacute;. Fabrication fran&ccedil;aise.</div>\n
          <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Caract&eacute;ristiques techniques</div>\n
          <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Longueur: 28 cm
Largeur: 16 cm
Hauteur : 9 cm</div>\n
          <div>Verrou de blocage. Arceau de s&eacute;curit&eacute;. Corps en bois de h&ecirc;tre. Lame en acier inoxydable tremp&eacute;, dentel&eacute;e. 3 patins caoutchouc antid&eacute;rapants. Fabrication fran&ccedil;aise. Dimensions : longueur: 28 cm
. largeur: 16 cm
. hauteur : 9 cm.</div></div>
          """
        #metaKeywords: null
        #metaDescription: null
        #shortDescription: null
        -fullTitle: null
        -metaTitle: null
      }
    ]
    #currentLocale: "fr_FR"
    #currentTranslation: null
    #fallbackLocale: "fr_FR"
    #variantSelectionMethod: "choice"
    #productTaxons: Doctrine\ORM\PersistentCollection {#8591 …}
    #channels: Doctrine\ORM\PersistentCollection {#8577 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8571 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8573 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8575 …}
    #productType: null
  }
  +variant: App\Entity\Product\ProductVariant {#29393 …}
  +slug: null
  #productRepository: Sylius\Bundle\CoreBundle\Doctrine\ORM\ProductRepository {#6914 …}
  #productVariantResolver: Sylius\Component\Product\Resolver\CompositeProductVariantResolver {#5455 …}
  #channelContext: Sylius\Component\Channel\Context\CachedPerRequestChannelContext {#4203 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  #productVariantPricesCalculator: Sylius\Component\Core\Calculator\ProductVariantPriceCalculator {#5465 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27715
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27748 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27754 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27741 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
}
sylius_shop:main_image
[Anonymous]
114.0 MiB 0.71 ms
Input props
[
  "product" => App\Entity\Product\Product {#8569
    #id: 958
    #code: "guillotine-a-saucisson-bron-coucke-4603"
    #attributes: Doctrine\ORM\PersistentCollection {#8579 …}
    #variants: Doctrine\ORM\PersistentCollection {#8581 …}
    #options: Doctrine\ORM\PersistentCollection {#8585 …}
    #associations: Doctrine\ORM\PersistentCollection {#8583 …}
    #createdAt: DateTime @1758632283 {#8567
      date: 2025-09-23 20:58:03.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632283 {#8568
      date: 2025-09-23 20:58:03.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8588 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8589
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8569}
        #id: 958
        #name: "Guillotine à saucisson Bron Coucke"
        #slug: "guillotine-a-saucisson-bron-coucke-4603"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Permet de belle tranches r&eacute;guli&egrave;res.</li>\n
          <li>Ludique.</li>\n
          <li>Lame inox qualit&eacute; coutellerie.</li>\n
          <li><strong>Fabrication fran&ccedil;aise. Mod&egrave;le original So Apero.</strong></li>\n
          </ul>\n
          <br /></div><h1>Description Guillotine à saucisson Bron Coucke</h1><div class="col is-12">La guillotine &agrave; saucisson permet de trancher facilement et en tranches r&eacute;guli&egrave;res toute sorte de saucisson, saucisse s&egrave;che, chorizo... Sa coupe en biais &agrave; effet cisaille est d'une efficacit&eacute; redoutable, c'est pourquoi elle est dot&eacute;e d'&eacute;quipemets de s&eacute;curit&eacute; pour parer &agrave; tout accident. Polyvalente, elle peut couper &eacute;galement le pain et certains l&eacute;gumes.</div><h1>Caractéristiques Guillotine à saucisson Bron Coucke</h1><div class="col is-12"><div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Munie d'un verrou de blocage et d'un arceau de s&eacute;curit&eacute;, elle est fabriqu&eacute;e en bois de h&ecirc;tre, et dot&eacute;e d'une lame en acier inoxydable tremp&eacute;, dentel&eacute;e, &agrave; l'aff&ucirc;tage rasoir. Ses 3 patins de caoutchouc antid&eacute;rapants lui assurent une bonne stabilit&eacute;. Fabrication fran&ccedil;aise.</div>\n
          <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Caract&eacute;ristiques techniques</div>\n
          <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Longueur: 28 cm
Largeur: 16 cm
Hauteur : 9 cm</div>\n
          <div>Verrou de blocage. Arceau de s&eacute;curit&eacute;. Corps en bois de h&ecirc;tre. Lame en acier inoxydable tremp&eacute;, dentel&eacute;e. 3 patins caoutchouc antid&eacute;rapants. Fabrication fran&ccedil;aise. Dimensions : longueur: 28 cm
. largeur: 16 cm
. hauteur : 9 cm.</div></div>
          """
        #metaKeywords: null
        #metaDescription: null
        #shortDescription: null
        -fullTitle: null
        -metaTitle: null
      }
    ]
    #currentLocale: "fr_FR"
    #currentTranslation: null
    #fallbackLocale: "fr_FR"
    #variantSelectionMethod: "choice"
    #productTaxons: Doctrine\ORM\PersistentCollection {#8591 …}
    #channels: Doctrine\ORM\PersistentCollection {#8577 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8571 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8573 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8575 …}
    #productType: null
  }
  "class" => "w-100 h-100 object-fit-cover"
]
Attributes
[
  "product" => "Guillotine à saucisson Bron Coucke"
  "class" => "w-100 h-100 object-fit-cover"
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#29464
  -props: [
    "product" => App\Entity\Product\Product {#8569
      #id: 958
      #code: "guillotine-a-saucisson-bron-coucke-4603"
      #attributes: Doctrine\ORM\PersistentCollection {#8579 …}
      #variants: Doctrine\ORM\PersistentCollection {#8581 …}
      #options: Doctrine\ORM\PersistentCollection {#8585 …}
      #associations: Doctrine\ORM\PersistentCollection {#8583 …}
      #createdAt: DateTime @1758632283 {#8567
        date: 2025-09-23 20:58:03.0 PRC (+08:00)
      }
      #updatedAt: DateTime @1758632283 {#8568
        date: 2025-09-23 20:58:03.0 PRC (+08:00)
      }
      #enabled: true
      #translations: Doctrine\ORM\PersistentCollection {#8588 …}
      #translationsCache: [
        "fr_FR" => App\Entity\Product\ProductTranslation {#8589
          #locale: "fr_FR"
          #translatable: App\Entity\Product\Product {#8569}
          #id: 958
          #name: "Guillotine à saucisson Bron Coucke"
          #slug: "guillotine-a-saucisson-bron-coucke-4603"
          #description: """
            <div class="col is-12"><ul>\n
            <li>Permet de belle tranches r&eacute;guli&egrave;res.</li>\n
            <li>Ludique.</li>\n
            <li>Lame inox qualit&eacute; coutellerie.</li>\n
            <li><strong>Fabrication fran&ccedil;aise. Mod&egrave;le original So Apero.</strong></li>\n
            </ul>\n
            <br /></div><h1>Description Guillotine à saucisson Bron Coucke</h1><div class="col is-12">La guillotine &agrave; saucisson permet de trancher facilement et en tranches r&eacute;guli&egrave;res toute sorte de saucisson, saucisse s&egrave;che, chorizo... Sa coupe en biais &agrave; effet cisaille est d'une efficacit&eacute; redoutable, c'est pourquoi elle est dot&eacute;e d'&eacute;quipemets de s&eacute;curit&eacute; pour parer &agrave; tout accident. Polyvalente, elle peut couper &eacute;galement le pain et certains l&eacute;gumes.</div><h1>Caractéristiques Guillotine à saucisson Bron Coucke</h1><div class="col is-12"><div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Munie d'un verrou de blocage et d'un arceau de s&eacute;curit&eacute;, elle est fabriqu&eacute;e en bois de h&ecirc;tre, et dot&eacute;e d'une lame en acier inoxydable tremp&eacute;, dentel&eacute;e, &agrave; l'aff&ucirc;tage rasoir. Ses 3 patins de caoutchouc antid&eacute;rapants lui assurent une bonne stabilit&eacute;. Fabrication fran&ccedil;aise.</div>\n
            <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Caract&eacute;ristiques techniques</div>\n
            <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Longueur: 28 cm
Largeur: 16 cm
Hauteur : 9 cm</div>\n
            <div>Verrou de blocage. Arceau de s&eacute;curit&eacute;. Corps en bois de h&ecirc;tre. Lame en acier inoxydable tremp&eacute;, dentel&eacute;e. 3 patins caoutchouc antid&eacute;rapants. Fabrication fran&ccedil;aise. Dimensions : longueur: 28 cm
. largeur: 16 cm
. hauteur : 9 cm.</div></div>
            """
          #metaKeywords: null
          #metaDescription: null
          #shortDescription: null
          -fullTitle: null
          -metaTitle: null
        }
      ]
      #currentLocale: "fr_FR"
      #currentTranslation: null
      #fallbackLocale: "fr_FR"
      #variantSelectionMethod: "choice"
      #productTaxons: Doctrine\ORM\PersistentCollection {#8591 …}
      #channels: Doctrine\ORM\PersistentCollection {#8577 …}
      #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8571 …}
      #reviews: Doctrine\ORM\PersistentCollection {#8573 …}
      #averageRating: 0.0
      #images: Doctrine\ORM\PersistentCollection {#8575 …}
      #productType: null
    }
    "class" => "w-100 h-100 object-fit-cover"
  ]
}
sylius_shop:catalog_promotions
[Anonymous]
114.0 MiB 0.62 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29457
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29448 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29524 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29445 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#29393 …}
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#29401
    #collection: Doctrine\Common\Collections\ArrayCollection {#29410 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#29389 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38448 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38450 …}
  }
  "withDescription" => false
]
Attributes
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29457
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29448 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29524 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29445 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => "Guillotine à saucisson Bron Coucke"
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#29401
    #collection: Doctrine\Common\Collections\ArrayCollection {#29410 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#29389 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38448 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38450 …}
  }
  "withDescription" => false
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#29528
  -props: [
    "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29457
      +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29448 …}
      +context: Sylius\TwigHooks\Bag\DataBag {#29524 …}
      +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29445 …}
      +prefixes: [
        "sylius_shop.product.index.content.body.main.card.prices"
        "sylius_shop.shared.product.card.prices"
      ]
    }
    "variant" => App\Entity\Product\ProductVariant {#29393 …}
    "applied_promotions" => Doctrine\ORM\PersistentCollection {#29401
      #collection: Doctrine\Common\Collections\ArrayCollection {#29410 …}
      #initialized: true
      -snapshot: []
      -owner: App\Entity\Channel\ChannelPricing {#29389 …}
      -association: Symfony\Component\VarDumper\Caster\CutStub {#38448 …}
      -backRefFieldName: null
      -isDirty: false
      -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
      -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38450 …}
    }
    "withDescription" => false
  ]
}
sylius_shop:product:card:price Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent 114.0 MiB 0.14 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29578
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29569 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29576 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29577 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#29393 …}
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Attributes
[
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent {#29581
  +variant: App\Entity\Product\ProductVariant {#29393 …}
  +price: "49,00\u{A0}"
  +originalPrice: "49,00\u{A0}"
  +hasDiscount: false
  #productVariantPricesCalculator: Sylius\Component\Core\Calculator\ProductVariantPriceCalculator {#5465 …}
  #moneyFormatter: Sylius\Bundle\MoneyBundle\Formatter\MoneyFormatter {#8305 …}
  #channelContext: Sylius\Component\Channel\Context\CachedPerRequestChannelContext {#4203 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  #currencyContext: Sylius\Component\Core\Currency\Context\ChannelAwareCurrencyContext {#12064 …}
  #currencyConverter: Sylius\Component\Currency\Converter\CurrencyConverter {#8296 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29578
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29569 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29576 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29577 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
}
sylius_shop:product:card Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent 114.0 MiB 4.61 ms
Input props
[
  "product" => App\Entity\Product\Product {#8595
    #id: 2551
    #code: "moulin-a-cafe-paris-press-peugeot-6320"
    #attributes: Doctrine\ORM\PersistentCollection {#8605 …}
    #variants: Doctrine\ORM\PersistentCollection {#8607 …}
    #options: Doctrine\ORM\PersistentCollection {#8611 …}
    #associations: Doctrine\ORM\PersistentCollection {#8609 …}
    #createdAt: DateTime @1758632572 {#8593
      date: 2025-09-23 21:02:52.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632572 {#8594
      date: 2025-09-23 21:02:52.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8614 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8615
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8595}
        #id: 2551
        #name: "Moulin à café Paris Press Peugeot"
        #slug: "moulin-a-cafe-paris-press-peugeot-6320"
        #description: """
          <div class="col is-12"><ul>\n
          <li>A la fois moulin &agrave; caf&eacute; et cafeti&egrave;re &agrave; piston.</li>\n
          <li>Mouture r&eacute;glable.</li>\n
          <li>Pour 4 tasses.</li>\n
          <li><strong>Fabriqu&eacute; en France.</strong></li>\n
          </ul></div><h1>Descriptif Moulin à café Paris Press Peugeot</h1><div class="col is-12">Le Moulin &agrave; caf&eacute; Paris Press Peugeot&nbsp;combine astucieusement les fonctions de mouture et de cafeti&egrave;re &agrave; piston pour profiter pleinement de la saveur incomparable d'un caf&eacute; fra&icirc;chement moulu.</div><h1>Caractéristiques Combiné Moulin & Cafetière à Piston Peugeot</h1><div class="col is-12">- 2 fonctions en 1 : moulin et cafeti&egrave;re &agrave; piston.<br />- Mouture r&eacute;glable.<br />- Pour 4 tasses.<br />- Verre borosilicate.<br />- Cuill&egrave;re doseuse fournie.</div><div class="col is-12"><a rel="nofollow" href="https://www.cuisinstore.com/moulin-a-cafe-f560-p1.html">En savoir plus sur le moulin &agrave; caf&eacute;</a></div>
          """
        #metaKeywords: null
        #metaDescription: null
        #shortDescription: null
        -fullTitle: null
        -metaTitle: null
      }
    ]
    #currentLocale: "fr_FR"
    #currentTranslation: null
    #fallbackLocale: "fr_FR"
    #variantSelectionMethod: "choice"
    #productTaxons: Doctrine\ORM\PersistentCollection {#8617 …}
    #channels: Doctrine\ORM\PersistentCollection {#8603 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8597 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8599 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8601 …}
    #productType: null
  }
  "template" => "@SyliusShop/product/common/card.html.twig"
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27715
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27748 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27754 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27741 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
]
Attributes
[
  "template" => "@SyliusShop/product/common/card.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent {#29455
  +product: App\Entity\Product\Product {#8595
    #id: 2551
    #code: "moulin-a-cafe-paris-press-peugeot-6320"
    #attributes: Doctrine\ORM\PersistentCollection {#8605 …}
    #variants: Doctrine\ORM\PersistentCollection {#8607 …}
    #options: Doctrine\ORM\PersistentCollection {#8611 …}
    #associations: Doctrine\ORM\PersistentCollection {#8609 …}
    #createdAt: DateTime @1758632572 {#8593
      date: 2025-09-23 21:02:52.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632572 {#8594
      date: 2025-09-23 21:02:52.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8614 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8615
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8595}
        #id: 2551
        #name: "Moulin à café Paris Press Peugeot"
        #slug: "moulin-a-cafe-paris-press-peugeot-6320"
        #description: """
          <div class="col is-12"><ul>\n
          <li>A la fois moulin &agrave; caf&eacute; et cafeti&egrave;re &agrave; piston.</li>\n
          <li>Mouture r&eacute;glable.</li>\n
          <li>Pour 4 tasses.</li>\n
          <li><strong>Fabriqu&eacute; en France.</strong></li>\n
          </ul></div><h1>Descriptif Moulin à café Paris Press Peugeot</h1><div class="col is-12">Le Moulin &agrave; caf&eacute; Paris Press Peugeot&nbsp;combine astucieusement les fonctions de mouture et de cafeti&egrave;re &agrave; piston pour profiter pleinement de la saveur incomparable d'un caf&eacute; fra&icirc;chement moulu.</div><h1>Caractéristiques Combiné Moulin & Cafetière à Piston Peugeot</h1><div class="col is-12">- 2 fonctions en 1 : moulin et cafeti&egrave;re &agrave; piston.<br />- Mouture r&eacute;glable.<br />- Pour 4 tasses.<br />- Verre borosilicate.<br />- Cuill&egrave;re doseuse fournie.</div><div class="col is-12"><a rel="nofollow" href="https://www.cuisinstore.com/moulin-a-cafe-f560-p1.html">En savoir plus sur le moulin &agrave; caf&eacute;</a></div>
          """
        #metaKeywords: null
        #metaDescription: null
        #shortDescription: null
        -fullTitle: null
        -metaTitle: null
      }
    ]
    #currentLocale: "fr_FR"
    #currentTranslation: null
    #fallbackLocale: "fr_FR"
    #variantSelectionMethod: "choice"
    #productTaxons: Doctrine\ORM\PersistentCollection {#8617 …}
    #channels: Doctrine\ORM\PersistentCollection {#8603 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8597 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8599 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8601 …}
    #productType: null
  }
  +variant: App\Entity\Product\ProductVariant {#29644 …}
  +slug: null
  #productRepository: Sylius\Bundle\CoreBundle\Doctrine\ORM\ProductRepository {#6914 …}
  #productVariantResolver: Sylius\Component\Product\Resolver\CompositeProductVariantResolver {#5455 …}
  #channelContext: Sylius\Component\Channel\Context\CachedPerRequestChannelContext {#4203 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  #productVariantPricesCalculator: Sylius\Component\Core\Calculator\ProductVariantPriceCalculator {#5465 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27715
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27748 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27754 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27741 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
}
sylius_shop:main_image
[Anonymous]
114.0 MiB 0.82 ms
Input props
[
  "product" => App\Entity\Product\Product {#8595
    #id: 2551
    #code: "moulin-a-cafe-paris-press-peugeot-6320"
    #attributes: Doctrine\ORM\PersistentCollection {#8605 …}
    #variants: Doctrine\ORM\PersistentCollection {#8607 …}
    #options: Doctrine\ORM\PersistentCollection {#8611 …}
    #associations: Doctrine\ORM\PersistentCollection {#8609 …}
    #createdAt: DateTime @1758632572 {#8593
      date: 2025-09-23 21:02:52.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632572 {#8594
      date: 2025-09-23 21:02:52.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8614 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8615
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8595}
        #id: 2551
        #name: "Moulin à café Paris Press Peugeot"
        #slug: "moulin-a-cafe-paris-press-peugeot-6320"
        #description: """
          <div class="col is-12"><ul>\n
          <li>A la fois moulin &agrave; caf&eacute; et cafeti&egrave;re &agrave; piston.</li>\n
          <li>Mouture r&eacute;glable.</li>\n
          <li>Pour 4 tasses.</li>\n
          <li><strong>Fabriqu&eacute; en France.</strong></li>\n
          </ul></div><h1>Descriptif Moulin à café Paris Press Peugeot</h1><div class="col is-12">Le Moulin &agrave; caf&eacute; Paris Press Peugeot&nbsp;combine astucieusement les fonctions de mouture et de cafeti&egrave;re &agrave; piston pour profiter pleinement de la saveur incomparable d'un caf&eacute; fra&icirc;chement moulu.</div><h1>Caractéristiques Combiné Moulin & Cafetière à Piston Peugeot</h1><div class="col is-12">- 2 fonctions en 1 : moulin et cafeti&egrave;re &agrave; piston.<br />- Mouture r&eacute;glable.<br />- Pour 4 tasses.<br />- Verre borosilicate.<br />- Cuill&egrave;re doseuse fournie.</div><div class="col is-12"><a rel="nofollow" href="https://www.cuisinstore.com/moulin-a-cafe-f560-p1.html">En savoir plus sur le moulin &agrave; caf&eacute;</a></div>
          """
        #metaKeywords: null
        #metaDescription: null
        #shortDescription: null
        -fullTitle: null
        -metaTitle: null
      }
    ]
    #currentLocale: "fr_FR"
    #currentTranslation: null
    #fallbackLocale: "fr_FR"
    #variantSelectionMethod: "choice"
    #productTaxons: Doctrine\ORM\PersistentCollection {#8617 …}
    #channels: Doctrine\ORM\PersistentCollection {#8603 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8597 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8599 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8601 …}
    #productType: null
  }
  "class" => "w-100 h-100 object-fit-cover"
]
Attributes
[
  "product" => "Moulin à café Paris Press Peugeot"
  "class" => "w-100 h-100 object-fit-cover"
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#29715
  -props: [
    "product" => App\Entity\Product\Product {#8595
      #id: 2551
      #code: "moulin-a-cafe-paris-press-peugeot-6320"
      #attributes: Doctrine\ORM\PersistentCollection {#8605 …}
      #variants: Doctrine\ORM\PersistentCollection {#8607 …}
      #options: Doctrine\ORM\PersistentCollection {#8611 …}
      #associations: Doctrine\ORM\PersistentCollection {#8609 …}
      #createdAt: DateTime @1758632572 {#8593
        date: 2025-09-23 21:02:52.0 PRC (+08:00)
      }
      #updatedAt: DateTime @1758632572 {#8594
        date: 2025-09-23 21:02:52.0 PRC (+08:00)
      }
      #enabled: true
      #translations: Doctrine\ORM\PersistentCollection {#8614 …}
      #translationsCache: [
        "fr_FR" => App\Entity\Product\ProductTranslation {#8615
          #locale: "fr_FR"
          #translatable: App\Entity\Product\Product {#8595}
          #id: 2551
          #name: "Moulin à café Paris Press Peugeot"
          #slug: "moulin-a-cafe-paris-press-peugeot-6320"
          #description: """
            <div class="col is-12"><ul>\n
            <li>A la fois moulin &agrave; caf&eacute; et cafeti&egrave;re &agrave; piston.</li>\n
            <li>Mouture r&eacute;glable.</li>\n
            <li>Pour 4 tasses.</li>\n
            <li><strong>Fabriqu&eacute; en France.</strong></li>\n
            </ul></div><h1>Descriptif Moulin à café Paris Press Peugeot</h1><div class="col is-12">Le Moulin &agrave; caf&eacute; Paris Press Peugeot&nbsp;combine astucieusement les fonctions de mouture et de cafeti&egrave;re &agrave; piston pour profiter pleinement de la saveur incomparable d'un caf&eacute; fra&icirc;chement moulu.</div><h1>Caractéristiques Combiné Moulin & Cafetière à Piston Peugeot</h1><div class="col is-12">- 2 fonctions en 1 : moulin et cafeti&egrave;re &agrave; piston.<br />- Mouture r&eacute;glable.<br />- Pour 4 tasses.<br />- Verre borosilicate.<br />- Cuill&egrave;re doseuse fournie.</div><div class="col is-12"><a rel="nofollow" href="https://www.cuisinstore.com/moulin-a-cafe-f560-p1.html">En savoir plus sur le moulin &agrave; caf&eacute;</a></div>
            """
          #metaKeywords: null
          #metaDescription: null
          #shortDescription: null
          -fullTitle: null
          -metaTitle: null
        }
      ]
      #currentLocale: "fr_FR"
      #currentTranslation: null
      #fallbackLocale: "fr_FR"
      #variantSelectionMethod: "choice"
      #productTaxons: Doctrine\ORM\PersistentCollection {#8617 …}
      #channels: Doctrine\ORM\PersistentCollection {#8603 …}
      #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8597 …}
      #reviews: Doctrine\ORM\PersistentCollection {#8599 …}
      #averageRating: 0.0
      #images: Doctrine\ORM\PersistentCollection {#8601 …}
      #productType: null
    }
    "class" => "w-100 h-100 object-fit-cover"
  ]
}
sylius_shop:catalog_promotions
[Anonymous]
114.0 MiB 0.59 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29786
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29699 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29772 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29696 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#29644 …}
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#29652
    #collection: Doctrine\Common\Collections\ArrayCollection {#29661 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#29640 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38462 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38464 …}
  }
  "withDescription" => false
]
Attributes
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29786
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29699 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29772 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29696 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => "Moulin à café Paris Press Peugeot"
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#29652
    #collection: Doctrine\Common\Collections\ArrayCollection {#29661 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#29640 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38462 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38464 …}
  }
  "withDescription" => false
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#29791
  -props: [
    "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29786
      +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29699 …}
      +context: Sylius\TwigHooks\Bag\DataBag {#29772 …}
      +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29696 …}
      +prefixes: [
        "sylius_shop.product.index.content.body.main.card.prices"
        "sylius_shop.shared.product.card.prices"
      ]
    }
    "variant" => App\Entity\Product\ProductVariant {#29644 …}
    "applied_promotions" => Doctrine\ORM\PersistentCollection {#29652
      #collection: Doctrine\Common\Collections\ArrayCollection {#29661 …}
      #initialized: true
      -snapshot: []
      -owner: App\Entity\Channel\ChannelPricing {#29640 …}
      -association: Symfony\Component\VarDumper\Caster\CutStub {#38462 …}
      -backRefFieldName: null
      -isDirty: false
      -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
      -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38464 …}
    }
    "withDescription" => false
  ]
}
sylius_shop:product:card:price Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent 114.0 MiB 0.14 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29840
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29831 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29838 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29839 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#29644 …}
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Attributes
[
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent {#29843
  +variant: App\Entity\Product\ProductVariant {#29644 …}
  +price: "124,00\u{A0}"
  +originalPrice: "124,00\u{A0}"
  +hasDiscount: false
  #productVariantPricesCalculator: Sylius\Component\Core\Calculator\ProductVariantPriceCalculator {#5465 …}
  #moneyFormatter: Sylius\Bundle\MoneyBundle\Formatter\MoneyFormatter {#8305 …}
  #channelContext: Sylius\Component\Channel\Context\CachedPerRequestChannelContext {#4203 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  #currencyContext: Sylius\Component\Core\Currency\Context\ChannelAwareCurrencyContext {#12064 …}
  #currencyConverter: Sylius\Component\Currency\Converter\CurrencyConverter {#8296 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29840
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29831 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29838 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29839 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
}
sylius_shop:product:card Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent 114.0 MiB 4.45 ms
Input props
[
  "product" => App\Entity\Product\Product {#8621
    #id: 3098
    #code: "moulin-a-poivre-peugeot-roellinger-2111"
    #attributes: Doctrine\ORM\PersistentCollection {#8631 …}
    #variants: Doctrine\ORM\PersistentCollection {#8633 …}
    #options: Doctrine\ORM\PersistentCollection {#8637 …}
    #associations: Doctrine\ORM\PersistentCollection {#8635 …}
    #createdAt: DateTime @1758632754 {#8619
      date: 2025-09-23 21:05:54.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632754 {#8620
      date: 2025-09-23 21:05:54.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8640 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8641
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8621}
        #id: 3098
        #name: "Moulin à poivre Peugeot Roellinger"
        #slug: "moulin-a-poivre-peugeot-roellinger-2111"
        #description: """
          <div class="col is-12"><ul>\n
          <li>M&eacute;canisme garanti &agrave; vie. </li>\n
          <li>Corp en bois verni. </li>\n
          <li>Imagin&eacute; par le Chef &eacute;toil&eacute; Olivier Roellinger.</li>\n
          <li><strong>Fabriqu&eacute; en France.</strong></li>\n
          </ul></div><h1>Description moulin à poivre Peugeot Roellinger</h1><div class="col is-12">Ce moulin &agrave; poivre Roellinger se recharge tr&egrave;s simplement par le haut et dispose d'un tiroir pour r&eacute;cup&eacute;rer la mouture.<br />Corps en bois verni. Mouture r&eacute;glable. Base : 8.5 x 8.5 cm. Hauteur 13 cm.</div><h1>Description mécanisme moulin Peugeot Roellinger</h1><div class="col is-12">Vous retrouvez dans les m&eacute;canismes moulin PEUGEOT tout le savoir faire technologique et industriel d&eacute;velopp&eacute; depuis plus de 160 ans. Inusable et d&rsquo;une efficacit&eacute; redoutable, le m&eacute;canisme moulin PEUGEOT est constitu&eacute; de double rang&eacute;e de dents capturant les grains en les entra&icirc;nant vers le bas pour les broyer parfaitement. Aux traditionnels m&eacute;canismes poivre et sel sont venus s&rsquo;ajouter des m&eacute;canismes exclusifs pour le sel de Gu&eacute;randes, les &eacute;pices, le piment et la muscade. Leur fiabilit&eacute; n&rsquo;est plus &agrave; prouver ce qui permet &agrave; PEUGEOT de pouvoir donner &agrave; ses m&eacute;canismes une garantie &agrave; vie. Les corps des moulins con&ccedil;us dans une grande vari&eacute;t&eacute; de mat&eacute;riaux (bois, inox, pvc..) sont tous con&ccedil;us avec soin pour une ergonomie optimale et pour s&rsquo;harmoniser avec tous les styles.</div>
          """
        #metaKeywords: null
        #metaDescription: null
        #shortDescription: null
        -fullTitle: null
        -metaTitle: null
      }
    ]
    #currentLocale: "fr_FR"
    #currentTranslation: null
    #fallbackLocale: "fr_FR"
    #variantSelectionMethod: "choice"
    #productTaxons: Doctrine\ORM\PersistentCollection {#8643 …}
    #channels: Doctrine\ORM\PersistentCollection {#8629 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8623 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8625 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8627 …}
    #productType: null
  }
  "template" => "@SyliusShop/product/common/card.html.twig"
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27715
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27748 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27754 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27741 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
]
Attributes
[
  "template" => "@SyliusShop/product/common/card.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent {#29706
  +product: App\Entity\Product\Product {#8621
    #id: 3098
    #code: "moulin-a-poivre-peugeot-roellinger-2111"
    #attributes: Doctrine\ORM\PersistentCollection {#8631 …}
    #variants: Doctrine\ORM\PersistentCollection {#8633 …}
    #options: Doctrine\ORM\PersistentCollection {#8637 …}
    #associations: Doctrine\ORM\PersistentCollection {#8635 …}
    #createdAt: DateTime @1758632754 {#8619
      date: 2025-09-23 21:05:54.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632754 {#8620
      date: 2025-09-23 21:05:54.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8640 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8641
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8621}
        #id: 3098
        #name: "Moulin à poivre Peugeot Roellinger"
        #slug: "moulin-a-poivre-peugeot-roellinger-2111"
        #description: """
          <div class="col is-12"><ul>\n
          <li>M&eacute;canisme garanti &agrave; vie. </li>\n
          <li>Corp en bois verni. </li>\n
          <li>Imagin&eacute; par le Chef &eacute;toil&eacute; Olivier Roellinger.</li>\n
          <li><strong>Fabriqu&eacute; en France.</strong></li>\n
          </ul></div><h1>Description moulin à poivre Peugeot Roellinger</h1><div class="col is-12">Ce moulin &agrave; poivre Roellinger se recharge tr&egrave;s simplement par le haut et dispose d'un tiroir pour r&eacute;cup&eacute;rer la mouture.<br />Corps en bois verni. Mouture r&eacute;glable. Base : 8.5 x 8.5 cm. Hauteur 13 cm.</div><h1>Description mécanisme moulin Peugeot Roellinger</h1><div class="col is-12">Vous retrouvez dans les m&eacute;canismes moulin PEUGEOT tout le savoir faire technologique et industriel d&eacute;velopp&eacute; depuis plus de 160 ans. Inusable et d&rsquo;une efficacit&eacute; redoutable, le m&eacute;canisme moulin PEUGEOT est constitu&eacute; de double rang&eacute;e de dents capturant les grains en les entra&icirc;nant vers le bas pour les broyer parfaitement. Aux traditionnels m&eacute;canismes poivre et sel sont venus s&rsquo;ajouter des m&eacute;canismes exclusifs pour le sel de Gu&eacute;randes, les &eacute;pices, le piment et la muscade. Leur fiabilit&eacute; n&rsquo;est plus &agrave; prouver ce qui permet &agrave; PEUGEOT de pouvoir donner &agrave; ses m&eacute;canismes une garantie &agrave; vie. Les corps des moulins con&ccedil;us dans une grande vari&eacute;t&eacute; de mat&eacute;riaux (bois, inox, pvc..) sont tous con&ccedil;us avec soin pour une ergonomie optimale et pour s&rsquo;harmoniser avec tous les styles.</div>
          """
        #metaKeywords: null
        #metaDescription: null
        #shortDescription: null
        -fullTitle: null
        -metaTitle: null
      }
    ]
    #currentLocale: "fr_FR"
    #currentTranslation: null
    #fallbackLocale: "fr_FR"
    #variantSelectionMethod: "choice"
    #productTaxons: Doctrine\ORM\PersistentCollection {#8643 …}
    #channels: Doctrine\ORM\PersistentCollection {#8629 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8623 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8625 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8627 …}
    #productType: null
  }
  +variant: App\Entity\Product\ProductVariant {#29906 …}
  +slug: null
  #productRepository: Sylius\Bundle\CoreBundle\Doctrine\ORM\ProductRepository {#6914 …}
  #productVariantResolver: Sylius\Component\Product\Resolver\CompositeProductVariantResolver {#5455 …}
  #channelContext: Sylius\Component\Channel\Context\CachedPerRequestChannelContext {#4203 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  #productVariantPricesCalculator: Sylius\Component\Core\Calculator\ProductVariantPriceCalculator {#5465 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27715
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27748 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27754 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27741 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
}
sylius_shop:main_image
[Anonymous]
114.0 MiB 0.73 ms
Input props
[
  "product" => App\Entity\Product\Product {#8621
    #id: 3098
    #code: "moulin-a-poivre-peugeot-roellinger-2111"
    #attributes: Doctrine\ORM\PersistentCollection {#8631 …}
    #variants: Doctrine\ORM\PersistentCollection {#8633 …}
    #options: Doctrine\ORM\PersistentCollection {#8637 …}
    #associations: Doctrine\ORM\PersistentCollection {#8635 …}
    #createdAt: DateTime @1758632754 {#8619
      date: 2025-09-23 21:05:54.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632754 {#8620
      date: 2025-09-23 21:05:54.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8640 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8641
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8621}
        #id: 3098
        #name: "Moulin à poivre Peugeot Roellinger"
        #slug: "moulin-a-poivre-peugeot-roellinger-2111"
        #description: """
          <div class="col is-12"><ul>\n
          <li>M&eacute;canisme garanti &agrave; vie. </li>\n
          <li>Corp en bois verni. </li>\n
          <li>Imagin&eacute; par le Chef &eacute;toil&eacute; Olivier Roellinger.</li>\n
          <li><strong>Fabriqu&eacute; en France.</strong></li>\n
          </ul></div><h1>Description moulin à poivre Peugeot Roellinger</h1><div class="col is-12">Ce moulin &agrave; poivre Roellinger se recharge tr&egrave;s simplement par le haut et dispose d'un tiroir pour r&eacute;cup&eacute;rer la mouture.<br />Corps en bois verni. Mouture r&eacute;glable. Base : 8.5 x 8.5 cm. Hauteur 13 cm.</div><h1>Description mécanisme moulin Peugeot Roellinger</h1><div class="col is-12">Vous retrouvez dans les m&eacute;canismes moulin PEUGEOT tout le savoir faire technologique et industriel d&eacute;velopp&eacute; depuis plus de 160 ans. Inusable et d&rsquo;une efficacit&eacute; redoutable, le m&eacute;canisme moulin PEUGEOT est constitu&eacute; de double rang&eacute;e de dents capturant les grains en les entra&icirc;nant vers le bas pour les broyer parfaitement. Aux traditionnels m&eacute;canismes poivre et sel sont venus s&rsquo;ajouter des m&eacute;canismes exclusifs pour le sel de Gu&eacute;randes, les &eacute;pices, le piment et la muscade. Leur fiabilit&eacute; n&rsquo;est plus &agrave; prouver ce qui permet &agrave; PEUGEOT de pouvoir donner &agrave; ses m&eacute;canismes une garantie &agrave; vie. Les corps des moulins con&ccedil;us dans une grande vari&eacute;t&eacute; de mat&eacute;riaux (bois, inox, pvc..) sont tous con&ccedil;us avec soin pour une ergonomie optimale et pour s&rsquo;harmoniser avec tous les styles.</div>
          """
        #metaKeywords: null
        #metaDescription: null
        #shortDescription: null
        -fullTitle: null
        -metaTitle: null
      }
    ]
    #currentLocale: "fr_FR"
    #currentTranslation: null
    #fallbackLocale: "fr_FR"
    #variantSelectionMethod: "choice"
    #productTaxons: Doctrine\ORM\PersistentCollection {#8643 …}
    #channels: Doctrine\ORM\PersistentCollection {#8629 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8623 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8625 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8627 …}
    #productType: null
  }
  "class" => "w-100 h-100 object-fit-cover"
]
Attributes
[
  "product" => "Moulin à poivre Peugeot Roellinger"
  "class" => "w-100 h-100 object-fit-cover"
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#29977
  -props: [
    "product" => App\Entity\Product\Product {#8621
      #id: 3098
      #code: "moulin-a-poivre-peugeot-roellinger-2111"
      #attributes: Doctrine\ORM\PersistentCollection {#8631 …}
      #variants: Doctrine\ORM\PersistentCollection {#8633 …}
      #options: Doctrine\ORM\PersistentCollection {#8637 …}
      #associations: Doctrine\ORM\PersistentCollection {#8635 …}
      #createdAt: DateTime @1758632754 {#8619
        date: 2025-09-23 21:05:54.0 PRC (+08:00)
      }
      #updatedAt: DateTime @1758632754 {#8620
        date: 2025-09-23 21:05:54.0 PRC (+08:00)
      }
      #enabled: true
      #translations: Doctrine\ORM\PersistentCollection {#8640 …}
      #translationsCache: [
        "fr_FR" => App\Entity\Product\ProductTranslation {#8641
          #locale: "fr_FR"
          #translatable: App\Entity\Product\Product {#8621}
          #id: 3098
          #name: "Moulin à poivre Peugeot Roellinger"
          #slug: "moulin-a-poivre-peugeot-roellinger-2111"
          #description: """
            <div class="col is-12"><ul>\n
            <li>M&eacute;canisme garanti &agrave; vie. </li>\n
            <li>Corp en bois verni. </li>\n
            <li>Imagin&eacute; par le Chef &eacute;toil&eacute; Olivier Roellinger.</li>\n
            <li><strong>Fabriqu&eacute; en France.</strong></li>\n
            </ul></div><h1>Description moulin à poivre Peugeot Roellinger</h1><div class="col is-12">Ce moulin &agrave; poivre Roellinger se recharge tr&egrave;s simplement par le haut et dispose d'un tiroir pour r&eacute;cup&eacute;rer la mouture.<br />Corps en bois verni. Mouture r&eacute;glable. Base : 8.5 x 8.5 cm. Hauteur 13 cm.</div><h1>Description mécanisme moulin Peugeot Roellinger</h1><div class="col is-12">Vous retrouvez dans les m&eacute;canismes moulin PEUGEOT tout le savoir faire technologique et industriel d&eacute;velopp&eacute; depuis plus de 160 ans. Inusable et d&rsquo;une efficacit&eacute; redoutable, le m&eacute;canisme moulin PEUGEOT est constitu&eacute; de double rang&eacute;e de dents capturant les grains en les entra&icirc;nant vers le bas pour les broyer parfaitement. Aux traditionnels m&eacute;canismes poivre et sel sont venus s&rsquo;ajouter des m&eacute;canismes exclusifs pour le sel de Gu&eacute;randes, les &eacute;pices, le piment et la muscade. Leur fiabilit&eacute; n&rsquo;est plus &agrave; prouver ce qui permet &agrave; PEUGEOT de pouvoir donner &agrave; ses m&eacute;canismes une garantie &agrave; vie. Les corps des moulins con&ccedil;us dans une grande vari&eacute;t&eacute; de mat&eacute;riaux (bois, inox, pvc..) sont tous con&ccedil;us avec soin pour une ergonomie optimale et pour s&rsquo;harmoniser avec tous les styles.</div>
            """
          #metaKeywords: null
          #metaDescription: null
          #shortDescription: null
          -fullTitle: null
          -metaTitle: null
        }
      ]
      #currentLocale: "fr_FR"
      #currentTranslation: null
      #fallbackLocale: "fr_FR"
      #variantSelectionMethod: "choice"
      #productTaxons: Doctrine\ORM\PersistentCollection {#8643 …}
      #channels: Doctrine\ORM\PersistentCollection {#8629 …}
      #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8623 …}
      #reviews: Doctrine\ORM\PersistentCollection {#8625 …}
      #averageRating: 0.0
      #images: Doctrine\ORM\PersistentCollection {#8627 …}
      #productType: null
    }
    "class" => "w-100 h-100 object-fit-cover"
  ]
}
sylius_shop:catalog_promotions
[Anonymous]
114.0 MiB 0.57 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30051
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29961 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30037 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29958 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#29906 …}
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#29914
    #collection: Doctrine\Common\Collections\ArrayCollection {#29923 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#29902 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38476 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38478 …}
  }
  "withDescription" => false
]
Attributes
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30051
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29961 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30037 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29958 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => "Moulin à poivre Peugeot Roellinger"
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#29914
    #collection: Doctrine\Common\Collections\ArrayCollection {#29923 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#29902 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38476 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38478 …}
  }
  "withDescription" => false
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#30056
  -props: [
    "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30051
      +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29961 …}
      +context: Sylius\TwigHooks\Bag\DataBag {#30037 …}
      +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29958 …}
      +prefixes: [
        "sylius_shop.product.index.content.body.main.card.prices"
        "sylius_shop.shared.product.card.prices"
      ]
    }
    "variant" => App\Entity\Product\ProductVariant {#29906 …}
    "applied_promotions" => Doctrine\ORM\PersistentCollection {#29914
      #collection: Doctrine\Common\Collections\ArrayCollection {#29923 …}
      #initialized: true
      -snapshot: []
      -owner: App\Entity\Channel\ChannelPricing {#29902 …}
      -association: Symfony\Component\VarDumper\Caster\CutStub {#38476 …}
      -backRefFieldName: null
      -isDirty: false
      -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
      -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38478 …}
    }
    "withDescription" => false
  ]
}
sylius_shop:product:card:price Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent 114.0 MiB 0.14 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30105
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30096 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30103 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30104 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#29906 …}
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Attributes
[
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent {#30108
  +variant: App\Entity\Product\ProductVariant {#29906 …}
  +price: "67,00\u{A0}"
  +originalPrice: "74,00\u{A0}"
  +hasDiscount: true
  #productVariantPricesCalculator: Sylius\Component\Core\Calculator\ProductVariantPriceCalculator {#5465 …}
  #moneyFormatter: Sylius\Bundle\MoneyBundle\Formatter\MoneyFormatter {#8305 …}
  #channelContext: Sylius\Component\Channel\Context\CachedPerRequestChannelContext {#4203 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  #currencyContext: Sylius\Component\Core\Currency\Context\ChannelAwareCurrencyContext {#12064 …}
  #currencyConverter: Sylius\Component\Currency\Converter\CurrencyConverter {#8296 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30105
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30096 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30103 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30104 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
}
sylius_shop:product:card Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent 114.0 MiB 6.92 ms
Input props
[
  "product" => App\Entity\Product\Product {#8647
    #id: 3081
    #code: "moulin-electrique-peugeot-elis-sense-2987"
    #attributes: Doctrine\ORM\PersistentCollection {#8654 …}
    #variants: Doctrine\ORM\PersistentCollection {#8656 …}
    #options: Doctrine\ORM\PersistentCollection {#8660 …}
    #associations: Doctrine\ORM\PersistentCollection {#8658 …}
    #createdAt: DateTime @1758632751 {#8645
      date: 2025-09-23 21:05:51.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632751 {#8646
      date: 2025-09-23 21:05:51.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8663 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8664
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8647}
        #id: 3081
        #name: "Moulin électrique PEUGEOT  Elis Sense"
        #slug: "moulin-electrique-peugeot-elis-sense-2987"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Mise en marche par effleurement.</li>\n
          <li>Fonctionne d'une seule main.</li>\n
          <li>Eclairage par led.</li>\n
          <li>Syst&egrave;me U'Select.</li>\n
          </ul></div><h1>Description moulin PEUGEOT électrique Elis sense</h1><div class="col is-12">Le moulin PEUGEOT &eacute;lectrique Elis sense est &eacute;quip&eacute; des m&eacute;canismes traditionnels PEUGEOT sel ou poivre dont l&rsquo;efficacit&eacute; n&rsquo;est plus &agrave;  prouver.&nbsp;Un simple effleurement suffit pour d&eacute;clencher le m&eacute;canisme pour moudre sel ou poivre  ce qui permet de tenir le moulin d&rsquo;une seule main, tr&egrave;s pratique lorsque l&rsquo;on  cuisine !<br />Le moulin PEUGEOT &eacute;lectrique Elis sense est muni &agrave; sa base d'un &eacute;clairage par led bleut&eacute;e permettant de voir la quantit&eacute; de condiment que l&rsquo;on ajoute.</div><h1>Caractéristiques moulin PEUGEOT électrique Elis Sense</h1><div class="col is-12">Corps inox.. Fonctionne avec 6 piles  1.5 v fournie. M&eacute;canisme USELECT (pr&eacute;r&eacute;glage de la mouture &agrave;  plusieurs positions) garanti &agrave; vie.  Hauteur 20 cm. LED lumineuse bleut&eacute;e. Livr&eacute; avec coupelle carr&eacute;e et 1 fiole de sel ou poivre avec entonnoir int&eacute;gr&eacute;.</div>
          """
        #metaKeywords: null
        #metaDescription: null
        #shortDescription: null
        -fullTitle: null
        -metaTitle: null
      }
    ]
    #currentLocale: "fr_FR"
    #currentTranslation: null
    #fallbackLocale: "fr_FR"
    #variantSelectionMethod: "choice"
    #productTaxons: Doctrine\ORM\PersistentCollection {#8666 …}
    #channels: Doctrine\ORM\PersistentCollection {#8652 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8623 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8648 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8650 …}
    #productType: null
  }
  "template" => "@SyliusShop/product/common/card.html.twig"
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27715
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27748 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27754 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27741 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
]
Attributes
[
  "template" => "@SyliusShop/product/common/card.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent {#29968
  +product: App\Entity\Product\Product {#8647
    #id: 3081
    #code: "moulin-electrique-peugeot-elis-sense-2987"
    #attributes: Doctrine\ORM\PersistentCollection {#8654 …}
    #variants: Doctrine\ORM\PersistentCollection {#8656 …}
    #options: Doctrine\ORM\PersistentCollection {#8660 …}
    #associations: Doctrine\ORM\PersistentCollection {#8658 …}
    #createdAt: DateTime @1758632751 {#8645
      date: 2025-09-23 21:05:51.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632751 {#8646
      date: 2025-09-23 21:05:51.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8663 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8664
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8647}
        #id: 3081
        #name: "Moulin électrique PEUGEOT  Elis Sense"
        #slug: "moulin-electrique-peugeot-elis-sense-2987"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Mise en marche par effleurement.</li>\n
          <li>Fonctionne d'une seule main.</li>\n
          <li>Eclairage par led.</li>\n
          <li>Syst&egrave;me U'Select.</li>\n
          </ul></div><h1>Description moulin PEUGEOT électrique Elis sense</h1><div class="col is-12">Le moulin PEUGEOT &eacute;lectrique Elis sense est &eacute;quip&eacute; des m&eacute;canismes traditionnels PEUGEOT sel ou poivre dont l&rsquo;efficacit&eacute; n&rsquo;est plus &agrave;  prouver.&nbsp;Un simple effleurement suffit pour d&eacute;clencher le m&eacute;canisme pour moudre sel ou poivre  ce qui permet de tenir le moulin d&rsquo;une seule main, tr&egrave;s pratique lorsque l&rsquo;on  cuisine !<br />Le moulin PEUGEOT &eacute;lectrique Elis sense est muni &agrave; sa base d'un &eacute;clairage par led bleut&eacute;e permettant de voir la quantit&eacute; de condiment que l&rsquo;on ajoute.</div><h1>Caractéristiques moulin PEUGEOT électrique Elis Sense</h1><div class="col is-12">Corps inox.. Fonctionne avec 6 piles  1.5 v fournie. M&eacute;canisme USELECT (pr&eacute;r&eacute;glage de la mouture &agrave;  plusieurs positions) garanti &agrave; vie.  Hauteur 20 cm. LED lumineuse bleut&eacute;e. Livr&eacute; avec coupelle carr&eacute;e et 1 fiole de sel ou poivre avec entonnoir int&eacute;gr&eacute;.</div>
          """
        #metaKeywords: null
        #metaDescription: null
        #shortDescription: null
        -fullTitle: null
        -metaTitle: null
      }
    ]
    #currentLocale: "fr_FR"
    #currentTranslation: null
    #fallbackLocale: "fr_FR"
    #variantSelectionMethod: "choice"
    #productTaxons: Doctrine\ORM\PersistentCollection {#8666 …}
    #channels: Doctrine\ORM\PersistentCollection {#8652 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8623 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8648 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8650 …}
    #productType: null
  }
  +variant: App\Entity\Product\ProductVariant {#30171 …}
  +slug: null
  #productRepository: Sylius\Bundle\CoreBundle\Doctrine\ORM\ProductRepository {#6914 …}
  #productVariantResolver: Sylius\Component\Product\Resolver\CompositeProductVariantResolver {#5455 …}
  #channelContext: Sylius\Component\Channel\Context\CachedPerRequestChannelContext {#4203 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  #productVariantPricesCalculator: Sylius\Component\Core\Calculator\ProductVariantPriceCalculator {#5465 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27715
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27748 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27754 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27741 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
}
sylius_shop:main_image
[Anonymous]
114.0 MiB 1.32 ms
Input props
[
  "product" => App\Entity\Product\Product {#8647
    #id: 3081
    #code: "moulin-electrique-peugeot-elis-sense-2987"
    #attributes: Doctrine\ORM\PersistentCollection {#8654 …}
    #variants: Doctrine\ORM\PersistentCollection {#8656 …}
    #options: Doctrine\ORM\PersistentCollection {#8660 …}
    #associations: Doctrine\ORM\PersistentCollection {#8658 …}
    #createdAt: DateTime @1758632751 {#8645
      date: 2025-09-23 21:05:51.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632751 {#8646
      date: 2025-09-23 21:05:51.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8663 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8664
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8647}
        #id: 3081
        #name: "Moulin électrique PEUGEOT  Elis Sense"
        #slug: "moulin-electrique-peugeot-elis-sense-2987"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Mise en marche par effleurement.</li>\n
          <li>Fonctionne d'une seule main.</li>\n
          <li>Eclairage par led.</li>\n
          <li>Syst&egrave;me U'Select.</li>\n
          </ul></div><h1>Description moulin PEUGEOT électrique Elis sense</h1><div class="col is-12">Le moulin PEUGEOT &eacute;lectrique Elis sense est &eacute;quip&eacute; des m&eacute;canismes traditionnels PEUGEOT sel ou poivre dont l&rsquo;efficacit&eacute; n&rsquo;est plus &agrave;  prouver.&nbsp;Un simple effleurement suffit pour d&eacute;clencher le m&eacute;canisme pour moudre sel ou poivre  ce qui permet de tenir le moulin d&rsquo;une seule main, tr&egrave;s pratique lorsque l&rsquo;on  cuisine !<br />Le moulin PEUGEOT &eacute;lectrique Elis sense est muni &agrave; sa base d'un &eacute;clairage par led bleut&eacute;e permettant de voir la quantit&eacute; de condiment que l&rsquo;on ajoute.</div><h1>Caractéristiques moulin PEUGEOT électrique Elis Sense</h1><div class="col is-12">Corps inox.. Fonctionne avec 6 piles  1.5 v fournie. M&eacute;canisme USELECT (pr&eacute;r&eacute;glage de la mouture &agrave;  plusieurs positions) garanti &agrave; vie.  Hauteur 20 cm. LED lumineuse bleut&eacute;e. Livr&eacute; avec coupelle carr&eacute;e et 1 fiole de sel ou poivre avec entonnoir int&eacute;gr&eacute;.</div>
          """
        #metaKeywords: null
        #metaDescription: null
        #shortDescription: null
        -fullTitle: null
        -metaTitle: null
      }
    ]
    #currentLocale: "fr_FR"
    #currentTranslation: null
    #fallbackLocale: "fr_FR"
    #variantSelectionMethod: "choice"
    #productTaxons: Doctrine\ORM\PersistentCollection {#8666 …}
    #channels: Doctrine\ORM\PersistentCollection {#8652 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8623 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8648 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8650 …}
    #productType: null
  }
  "class" => "w-100 h-100 object-fit-cover"
]
Attributes
[
  "product" => "Moulin électrique PEUGEOT  Elis Sense"
  "class" => "w-100 h-100 object-fit-cover"
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#30245
  -props: [
    "product" => App\Entity\Product\Product {#8647
      #id: 3081
      #code: "moulin-electrique-peugeot-elis-sense-2987"
      #attributes: Doctrine\ORM\PersistentCollection {#8654 …}
      #variants: Doctrine\ORM\PersistentCollection {#8656 …}
      #options: Doctrine\ORM\PersistentCollection {#8660 …}
      #associations: Doctrine\ORM\PersistentCollection {#8658 …}
      #createdAt: DateTime @1758632751 {#8645
        date: 2025-09-23 21:05:51.0 PRC (+08:00)
      }
      #updatedAt: DateTime @1758632751 {#8646
        date: 2025-09-23 21:05:51.0 PRC (+08:00)
      }
      #enabled: true
      #translations: Doctrine\ORM\PersistentCollection {#8663 …}
      #translationsCache: [
        "fr_FR" => App\Entity\Product\ProductTranslation {#8664
          #locale: "fr_FR"
          #translatable: App\Entity\Product\Product {#8647}
          #id: 3081
          #name: "Moulin électrique PEUGEOT  Elis Sense"
          #slug: "moulin-electrique-peugeot-elis-sense-2987"
          #description: """
            <div class="col is-12"><ul>\n
            <li>Mise en marche par effleurement.</li>\n
            <li>Fonctionne d'une seule main.</li>\n
            <li>Eclairage par led.</li>\n
            <li>Syst&egrave;me U'Select.</li>\n
            </ul></div><h1>Description moulin PEUGEOT électrique Elis sense</h1><div class="col is-12">Le moulin PEUGEOT &eacute;lectrique Elis sense est &eacute;quip&eacute; des m&eacute;canismes traditionnels PEUGEOT sel ou poivre dont l&rsquo;efficacit&eacute; n&rsquo;est plus &agrave;  prouver.&nbsp;Un simple effleurement suffit pour d&eacute;clencher le m&eacute;canisme pour moudre sel ou poivre  ce qui permet de tenir le moulin d&rsquo;une seule main, tr&egrave;s pratique lorsque l&rsquo;on  cuisine !<br />Le moulin PEUGEOT &eacute;lectrique Elis sense est muni &agrave; sa base d'un &eacute;clairage par led bleut&eacute;e permettant de voir la quantit&eacute; de condiment que l&rsquo;on ajoute.</div><h1>Caractéristiques moulin PEUGEOT électrique Elis Sense</h1><div class="col is-12">Corps inox.. Fonctionne avec 6 piles  1.5 v fournie. M&eacute;canisme USELECT (pr&eacute;r&eacute;glage de la mouture &agrave;  plusieurs positions) garanti &agrave; vie.  Hauteur 20 cm. LED lumineuse bleut&eacute;e. Livr&eacute; avec coupelle carr&eacute;e et 1 fiole de sel ou poivre avec entonnoir int&eacute;gr&eacute;.</div>
            """
          #metaKeywords: null
          #metaDescription: null
          #shortDescription: null
          -fullTitle: null
          -metaTitle: null
        }
      ]
      #currentLocale: "fr_FR"
      #currentTranslation: null
      #fallbackLocale: "fr_FR"
      #variantSelectionMethod: "choice"
      #productTaxons: Doctrine\ORM\PersistentCollection {#8666 …}
      #channels: Doctrine\ORM\PersistentCollection {#8652 …}
      #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8623 …}
      #reviews: Doctrine\ORM\PersistentCollection {#8648 …}
      #averageRating: 0.0
      #images: Doctrine\ORM\PersistentCollection {#8650 …}
      #productType: null
    }
    "class" => "w-100 h-100 object-fit-cover"
  ]
}
sylius_shop:catalog_promotions
[Anonymous]
114.0 MiB 1.03 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30327
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30229 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30305 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30226 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#30171 …}
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#30179
    #collection: Doctrine\Common\Collections\ArrayCollection {#30191 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#30167 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38490 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38492 …}
  }
  "withDescription" => false
]
Attributes
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30327
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30229 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30305 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30226 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => "Moulin électrique PEUGEOT  Elis Sense"
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#30179
    #collection: Doctrine\Common\Collections\ArrayCollection {#30191 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#30167 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38490 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38492 …}
  }
  "withDescription" => false
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#30330
  -props: [
    "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30327
      +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30229 …}
      +context: Sylius\TwigHooks\Bag\DataBag {#30305 …}
      +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30226 …}
      +prefixes: [
        "sylius_shop.product.index.content.body.main.card.prices"
        "sylius_shop.shared.product.card.prices"
      ]
    }
    "variant" => App\Entity\Product\ProductVariant {#30171 …}
    "applied_promotions" => Doctrine\ORM\PersistentCollection {#30179
      #collection: Doctrine\Common\Collections\ArrayCollection {#30191 …}
      #initialized: true
      -snapshot: []
      -owner: App\Entity\Channel\ChannelPricing {#30167 …}
      -association: Symfony\Component\VarDumper\Caster\CutStub {#38490 …}
      -backRefFieldName: null
      -isDirty: false
      -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
      -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38492 …}
    }
    "withDescription" => false
  ]
}
sylius_shop:product:card:price Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent 114.0 MiB 0.14 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30381
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30372 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30379 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30380 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#30171 …}
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Attributes
[
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent {#30384
  +variant: App\Entity\Product\ProductVariant {#30171 …}
  +price: "169,00\u{A0}"
  +originalPrice: "189,00\u{A0}"
  +hasDiscount: true
  #productVariantPricesCalculator: Sylius\Component\Core\Calculator\ProductVariantPriceCalculator {#5465 …}
  #moneyFormatter: Sylius\Bundle\MoneyBundle\Formatter\MoneyFormatter {#8305 …}
  #channelContext: Sylius\Component\Channel\Context\CachedPerRequestChannelContext {#4203 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  #currencyContext: Sylius\Component\Core\Currency\Context\ChannelAwareCurrencyContext {#12064 …}
  #currencyConverter: Sylius\Component\Currency\Converter\CurrencyConverter {#8296 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30381
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30372 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30379 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30380 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
}
sylius_shop:product:card Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent 114.0 MiB 12.47 ms
Input props
[
  "product" => App\Entity\Product\Product {#8670
    #id: 3080
    #code: "moulin-electrique-peugeot-zeli-1612"
    #attributes: Doctrine\ORM\PersistentCollection {#8677 …}
    #variants: Doctrine\ORM\PersistentCollection {#8679 …}
    #options: Doctrine\ORM\PersistentCollection {#8683 …}
    #associations: Doctrine\ORM\PersistentCollection {#8681 …}
    #createdAt: DateTime @1758632751 {#8668
      date: 2025-09-23 21:05:51.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632751 {#8669
      date: 2025-09-23 21:05:51.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8686 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8687
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8670}
        #id: 3080
        #name: "Moulin électrique PEUGEOT ZELI"
        #slug: "moulin-electrique-peugeot-zeli-1612"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Se manipule d'une seule main.</li>\n
          <li>M&eacute;canismes de broyage garantis &agrave; vie.</li>\n
          <li>Qualit&eacute; Peugeot.</li>\n
          </ul>\n
          &nbsp;</div><h1>Description moulin électrique PEUGEOT ZELI</h1><div class="col is-12"><p>Reprenant les m&eacute;canismes sel ou poivre dont l&rsquo;efficacit&eacute; n&rsquo;est plus &agrave; prouver, ces moulins sont &eacute;quip&eacute;s en plus d&rsquo;un moteur &eacute;lectrique pour votre plus grand confort ! Une simple pression pour moudre sel ou poivre ce qui permet de les tenir d&rsquo;une seule main, tr&egrave;s pratique lorsque l&rsquo;on cuisine ! </p></div><h1>Caractéristiques moulin électrique PEUGEOT ZELI</h1><div class="col is-12">Corps ABS nickel&eacute; bross&eacute;. Mini lampe int&eacute;gr&eacute;e + 1 de rechange. Fonctionne avec 6 piles 1.5 v fournie. Molette de r&eacute;glage de mouture pour le m&eacute;canisme poivre uniquement. M&eacute;canisme de broyage garanti &agrave; vie. Hauteur&nbsp;14 cm.</div>
          """
        #metaKeywords: null
        #metaDescription: null
        #shortDescription: null
        -fullTitle: null
        -metaTitle: null
      }
    ]
    #currentLocale: "fr_FR"
    #currentTranslation: null
    #fallbackLocale: "fr_FR"
    #variantSelectionMethod: "choice"
    #productTaxons: Doctrine\ORM\PersistentCollection {#4834 …}
    #channels: Doctrine\ORM\PersistentCollection {#8675 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8623 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8671 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8673 …}
    #productType: null
  }
  "template" => "@SyliusShop/product/common/card.html.twig"
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27715
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27748 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27754 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27741 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
]
Attributes
[
  "template" => "@SyliusShop/product/common/card.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent {#30236
  +product: App\Entity\Product\Product {#8670
    #id: 3080
    #code: "moulin-electrique-peugeot-zeli-1612"
    #attributes: Doctrine\ORM\PersistentCollection {#8677 …}
    #variants: Doctrine\ORM\PersistentCollection {#8679 …}
    #options: Doctrine\ORM\PersistentCollection {#8683 …}
    #associations: Doctrine\ORM\PersistentCollection {#8681 …}
    #createdAt: DateTime @1758632751 {#8668
      date: 2025-09-23 21:05:51.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632751 {#8669
      date: 2025-09-23 21:05:51.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8686 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8687
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8670}
        #id: 3080
        #name: "Moulin électrique PEUGEOT ZELI"
        #slug: "moulin-electrique-peugeot-zeli-1612"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Se manipule d'une seule main.</li>\n
          <li>M&eacute;canismes de broyage garantis &agrave; vie.</li>\n
          <li>Qualit&eacute; Peugeot.</li>\n
          </ul>\n
          &nbsp;</div><h1>Description moulin électrique PEUGEOT ZELI</h1><div class="col is-12"><p>Reprenant les m&eacute;canismes sel ou poivre dont l&rsquo;efficacit&eacute; n&rsquo;est plus &agrave; prouver, ces moulins sont &eacute;quip&eacute;s en plus d&rsquo;un moteur &eacute;lectrique pour votre plus grand confort ! Une simple pression pour moudre sel ou poivre ce qui permet de les tenir d&rsquo;une seule main, tr&egrave;s pratique lorsque l&rsquo;on cuisine ! </p></div><h1>Caractéristiques moulin électrique PEUGEOT ZELI</h1><div class="col is-12">Corps ABS nickel&eacute; bross&eacute;. Mini lampe int&eacute;gr&eacute;e + 1 de rechange. Fonctionne avec 6 piles 1.5 v fournie. Molette de r&eacute;glage de mouture pour le m&eacute;canisme poivre uniquement. M&eacute;canisme de broyage garanti &agrave; vie. Hauteur&nbsp;14 cm.</div>
          """
        #metaKeywords: null
        #metaDescription: null
        #shortDescription: null
        -fullTitle: null
        -metaTitle: null
      }
    ]
    #currentLocale: "fr_FR"
    #currentTranslation: null
    #fallbackLocale: "fr_FR"
    #variantSelectionMethod: "choice"
    #productTaxons: Doctrine\ORM\PersistentCollection {#4834 …}
    #channels: Doctrine\ORM\PersistentCollection {#8675 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8623 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8671 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8673 …}
    #productType: null
  }
  +variant: App\Entity\Product\ProductVariant {#30447 …}
  +slug: null
  #productRepository: Sylius\Bundle\CoreBundle\Doctrine\ORM\ProductRepository {#6914 …}
  #productVariantResolver: Sylius\Component\Product\Resolver\CompositeProductVariantResolver {#5455 …}
  #channelContext: Sylius\Component\Channel\Context\CachedPerRequestChannelContext {#4203 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  #productVariantPricesCalculator: Sylius\Component\Core\Calculator\ProductVariantPriceCalculator {#5465 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27715
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27748 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27754 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27741 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
}
sylius_shop:main_image
[Anonymous]
114.0 MiB 0.65 ms
Input props
[
  "product" => App\Entity\Product\Product {#8670
    #id: 3080
    #code: "moulin-electrique-peugeot-zeli-1612"
    #attributes: Doctrine\ORM\PersistentCollection {#8677 …}
    #variants: Doctrine\ORM\PersistentCollection {#8679 …}
    #options: Doctrine\ORM\PersistentCollection {#8683 …}
    #associations: Doctrine\ORM\PersistentCollection {#8681 …}
    #createdAt: DateTime @1758632751 {#8668
      date: 2025-09-23 21:05:51.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632751 {#8669
      date: 2025-09-23 21:05:51.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8686 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8687
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8670}
        #id: 3080
        #name: "Moulin électrique PEUGEOT ZELI"
        #slug: "moulin-electrique-peugeot-zeli-1612"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Se manipule d'une seule main.</li>\n
          <li>M&eacute;canismes de broyage garantis &agrave; vie.</li>\n
          <li>Qualit&eacute; Peugeot.</li>\n
          </ul>\n
          &nbsp;</div><h1>Description moulin électrique PEUGEOT ZELI</h1><div class="col is-12"><p>Reprenant les m&eacute;canismes sel ou poivre dont l&rsquo;efficacit&eacute; n&rsquo;est plus &agrave; prouver, ces moulins sont &eacute;quip&eacute;s en plus d&rsquo;un moteur &eacute;lectrique pour votre plus grand confort ! Une simple pression pour moudre sel ou poivre ce qui permet de les tenir d&rsquo;une seule main, tr&egrave;s pratique lorsque l&rsquo;on cuisine ! </p></div><h1>Caractéristiques moulin électrique PEUGEOT ZELI</h1><div class="col is-12">Corps ABS nickel&eacute; bross&eacute;. Mini lampe int&eacute;gr&eacute;e + 1 de rechange. Fonctionne avec 6 piles 1.5 v fournie. Molette de r&eacute;glage de mouture pour le m&eacute;canisme poivre uniquement. M&eacute;canisme de broyage garanti &agrave; vie. Hauteur&nbsp;14 cm.</div>
          """
        #metaKeywords: null
        #metaDescription: null
        #shortDescription: null
        -fullTitle: null
        -metaTitle: null
      }
    ]
    #currentLocale: "fr_FR"
    #currentTranslation: null
    #fallbackLocale: "fr_FR"
    #variantSelectionMethod: "choice"
    #productTaxons: Doctrine\ORM\PersistentCollection {#4834 …}
    #channels: Doctrine\ORM\PersistentCollection {#8675 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8623 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8671 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8673 …}
    #productType: null
  }
  "class" => "w-100 h-100 object-fit-cover"
]
Attributes
[
  "product" => "Moulin électrique PEUGEOT ZELI"
  "class" => "w-100 h-100 object-fit-cover"
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#30518
  -props: [
    "product" => App\Entity\Product\Product {#8670
      #id: 3080
      #code: "moulin-electrique-peugeot-zeli-1612"
      #attributes: Doctrine\ORM\PersistentCollection {#8677 …}
      #variants: Doctrine\ORM\PersistentCollection {#8679 …}
      #options: Doctrine\ORM\PersistentCollection {#8683 …}
      #associations: Doctrine\ORM\PersistentCollection {#8681 …}
      #createdAt: DateTime @1758632751 {#8668
        date: 2025-09-23 21:05:51.0 PRC (+08:00)
      }
      #updatedAt: DateTime @1758632751 {#8669
        date: 2025-09-23 21:05:51.0 PRC (+08:00)
      }
      #enabled: true
      #translations: Doctrine\ORM\PersistentCollection {#8686 …}
      #translationsCache: [
        "fr_FR" => App\Entity\Product\ProductTranslation {#8687
          #locale: "fr_FR"
          #translatable: App\Entity\Product\Product {#8670}
          #id: 3080
          #name: "Moulin électrique PEUGEOT ZELI"
          #slug: "moulin-electrique-peugeot-zeli-1612"
          #description: """
            <div class="col is-12"><ul>\n
            <li>Se manipule d'une seule main.</li>\n
            <li>M&eacute;canismes de broyage garantis &agrave; vie.</li>\n
            <li>Qualit&eacute; Peugeot.</li>\n
            </ul>\n
            &nbsp;</div><h1>Description moulin électrique PEUGEOT ZELI</h1><div class="col is-12"><p>Reprenant les m&eacute;canismes sel ou poivre dont l&rsquo;efficacit&eacute; n&rsquo;est plus &agrave; prouver, ces moulins sont &eacute;quip&eacute;s en plus d&rsquo;un moteur &eacute;lectrique pour votre plus grand confort ! Une simple pression pour moudre sel ou poivre ce qui permet de les tenir d&rsquo;une seule main, tr&egrave;s pratique lorsque l&rsquo;on cuisine ! </p></div><h1>Caractéristiques moulin électrique PEUGEOT ZELI</h1><div class="col is-12">Corps ABS nickel&eacute; bross&eacute;. Mini lampe int&eacute;gr&eacute;e + 1 de rechange. Fonctionne avec 6 piles 1.5 v fournie. Molette de r&eacute;glage de mouture pour le m&eacute;canisme poivre uniquement. M&eacute;canisme de broyage garanti &agrave; vie. Hauteur&nbsp;14 cm.</div>
            """
          #metaKeywords: null
          #metaDescription: null
          #shortDescription: null
          -fullTitle: null
          -metaTitle: null
        }
      ]
      #currentLocale: "fr_FR"
      #currentTranslation: null
      #fallbackLocale: "fr_FR"
      #variantSelectionMethod: "choice"
      #productTaxons: Doctrine\ORM\PersistentCollection {#4834 …}
      #channels: Doctrine\ORM\PersistentCollection {#8675 …}
      #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8623 …}
      #reviews: Doctrine\ORM\PersistentCollection {#8671 …}
      #averageRating: 0.0
      #images: Doctrine\ORM\PersistentCollection {#8673 …}
      #productType: null
    }
    "class" => "w-100 h-100 object-fit-cover"
  ]
}
sylius_shop:catalog_promotions
[Anonymous]
114.0 MiB 1.07 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30591
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30502 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30569 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30499 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#30447 …}
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#30455
    #collection: Doctrine\Common\Collections\ArrayCollection {#30464 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#30443 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38504 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38506 …}
  }
  "withDescription" => false
]
Attributes
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30591
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30502 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30569 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30499 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => "Moulin électrique PEUGEOT ZELI"
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#30455
    #collection: Doctrine\Common\Collections\ArrayCollection {#30464 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#30443 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38504 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38506 …}
  }
  "withDescription" => false
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#30594
  -props: [
    "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30591
      +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30502 …}
      +context: Sylius\TwigHooks\Bag\DataBag {#30569 …}
      +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30499 …}
      +prefixes: [
        "sylius_shop.product.index.content.body.main.card.prices"
        "sylius_shop.shared.product.card.prices"
      ]
    }
    "variant" => App\Entity\Product\ProductVariant {#30447 …}
    "applied_promotions" => Doctrine\ORM\PersistentCollection {#30455
      #collection: Doctrine\Common\Collections\ArrayCollection {#30464 …}
      #initialized: true
      -snapshot: []
      -owner: App\Entity\Channel\ChannelPricing {#30443 …}
      -association: Symfony\Component\VarDumper\Caster\CutStub {#38504 …}
      -backRefFieldName: null
      -isDirty: false
      -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
      -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38506 …}
    }
    "withDescription" => false
  ]
}
sylius_shop:product:card:price Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent 114.0 MiB 0.16 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30645
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30636 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30643 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30644 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#30447 …}
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Attributes
[
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent {#30648
  +variant: App\Entity\Product\ProductVariant {#30447 …}
  +price: "89,00\u{A0}"
  +originalPrice: "114,00\u{A0}"
  +hasDiscount: true
  #productVariantPricesCalculator: Sylius\Component\Core\Calculator\ProductVariantPriceCalculator {#5465 …}
  #moneyFormatter: Sylius\Bundle\MoneyBundle\Formatter\MoneyFormatter {#8305 …}
  #channelContext: Sylius\Component\Channel\Context\CachedPerRequestChannelContext {#4203 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  #currencyContext: Sylius\Component\Core\Currency\Context\ChannelAwareCurrencyContext {#12064 …}
  #currencyConverter: Sylius\Component\Currency\Converter\CurrencyConverter {#8296 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30645
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30636 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30643 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30644 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
}
sylius_shop:product:card Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent 114.0 MiB 4.60 ms
Input props
[
  "product" => App\Entity\Product\Product {#4832
    #id: 3039
    #code: "moulin-paris-antique-peugeot-5078"
    #attributes: Doctrine\ORM\PersistentCollection {#4853 …}
    #variants: Doctrine\ORM\PersistentCollection {#4849 …}
    #options: Doctrine\ORM\PersistentCollection {#4846 …}
    #associations: Doctrine\ORM\PersistentCollection {#4847 …}
    #createdAt: DateTime @1758632746 {#4838
      date: 2025-09-23 21:05:46.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632746 {#4829
      date: 2025-09-23 21:05:46.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#4844 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#4842
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#4832}
        #id: 3039
        #name: "Moulin Paris Antique Peugeot"
        #slug: "moulin-paris-antique-peugeot-5078"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Pi&egrave;ce unique travaill&eacute;e &agrave; la main.</li>\n
          <li>En bois de h&ecirc;tre.&nbsp;</li>\n
          <li>R&eacute;glage de mouture.</li>\n
          <li>M&eacute;canisme en acier garanti &agrave; vie.</li>\n
          </ul>\n
          <ul>\n
          </ul></div><h1>Description Moulin Paris Antique Peugeot</h1><div class="col is-12">Le moulin Paris Antique Peugeot vous permet de pr&eacute;senter &eacute;l&eacute;gamment votre poivre et sel. Aux charmes d'autrefois, les moulins sont en bois de h&ecirc;tre patin&eacute; par le temps. Ce sont des pi&egrave;ces unique qui sont travaill&eacute;es &agrave; la main. Un r&eacute;glage de la mouture est possible gr&acirc;ce &agrave; l'&eacute;crou laiton grav&eacute;e.</div><h1>Caractéristiques Moulin Paris Antique Peugeot</h1><div class="col is-12">En bois de h&ecirc;tre vielli. Disponible pour poivre et sel.</div>
          """
        #metaKeywords: null
        #metaDescription: null
        #shortDescription: null
        -fullTitle: null
        -metaTitle: null
      }
    ]
    #currentLocale: "fr_FR"
    #currentTranslation: null
    #fallbackLocale: "fr_FR"
    #variantSelectionMethod: "choice"
    #productTaxons: Doctrine\ORM\PersistentCollection {#5145 …}
    #channels: Doctrine\ORM\PersistentCollection {#4839 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#7525 …}
    #reviews: Doctrine\ORM\PersistentCollection {#4840 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#4837 …}
    #productType: null
  }
  "template" => "@SyliusShop/product/common/card.html.twig"
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27715
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27748 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27754 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27741 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
]
Attributes
[
  "template" => "@SyliusShop/product/common/card.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent {#30509
  +product: App\Entity\Product\Product {#4832
    #id: 3039
    #code: "moulin-paris-antique-peugeot-5078"
    #attributes: Doctrine\ORM\PersistentCollection {#4853 …}
    #variants: Doctrine\ORM\PersistentCollection {#4849 …}
    #options: Doctrine\ORM\PersistentCollection {#4846 …}
    #associations: Doctrine\ORM\PersistentCollection {#4847 …}
    #createdAt: DateTime @1758632746 {#4838
      date: 2025-09-23 21:05:46.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632746 {#4829
      date: 2025-09-23 21:05:46.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#4844 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#4842
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#4832}
        #id: 3039
        #name: "Moulin Paris Antique Peugeot"
        #slug: "moulin-paris-antique-peugeot-5078"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Pi&egrave;ce unique travaill&eacute;e &agrave; la main.</li>\n
          <li>En bois de h&ecirc;tre.&nbsp;</li>\n
          <li>R&eacute;glage de mouture.</li>\n
          <li>M&eacute;canisme en acier garanti &agrave; vie.</li>\n
          </ul>\n
          <ul>\n
          </ul></div><h1>Description Moulin Paris Antique Peugeot</h1><div class="col is-12">Le moulin Paris Antique Peugeot vous permet de pr&eacute;senter &eacute;l&eacute;gamment votre poivre et sel. Aux charmes d'autrefois, les moulins sont en bois de h&ecirc;tre patin&eacute; par le temps. Ce sont des pi&egrave;ces unique qui sont travaill&eacute;es &agrave; la main. Un r&eacute;glage de la mouture est possible gr&acirc;ce &agrave; l'&eacute;crou laiton grav&eacute;e.</div><h1>Caractéristiques Moulin Paris Antique Peugeot</h1><div class="col is-12">En bois de h&ecirc;tre vielli. Disponible pour poivre et sel.</div>
          """
        #metaKeywords: null
        #metaDescription: null
        #shortDescription: null
        -fullTitle: null
        -metaTitle: null
      }
    ]
    #currentLocale: "fr_FR"
    #currentTranslation: null
    #fallbackLocale: "fr_FR"
    #variantSelectionMethod: "choice"
    #productTaxons: Doctrine\ORM\PersistentCollection {#5145 …}
    #channels: Doctrine\ORM\PersistentCollection {#4839 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#7525 …}
    #reviews: Doctrine\ORM\PersistentCollection {#4840 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#4837 …}
    #productType: null
  }
  +variant: App\Entity\Product\ProductVariant {#30711 …}
  +slug: null
  #productRepository: Sylius\Bundle\CoreBundle\Doctrine\ORM\ProductRepository {#6914 …}
  #productVariantResolver: Sylius\Component\Product\Resolver\CompositeProductVariantResolver {#5455 …}
  #channelContext: Sylius\Component\Channel\Context\CachedPerRequestChannelContext {#4203 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  #productVariantPricesCalculator: Sylius\Component\Core\Calculator\ProductVariantPriceCalculator {#5465 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27715
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27748 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27754 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27741 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
}
sylius_shop:main_image
[Anonymous]
114.0 MiB 0.64 ms
Input props
[
  "product" => App\Entity\Product\Product {#4832
    #id: 3039
    #code: "moulin-paris-antique-peugeot-5078"
    #attributes: Doctrine\ORM\PersistentCollection {#4853 …}
    #variants: Doctrine\ORM\PersistentCollection {#4849 …}
    #options: Doctrine\ORM\PersistentCollection {#4846 …}
    #associations: Doctrine\ORM\PersistentCollection {#4847 …}
    #createdAt: DateTime @1758632746 {#4838
      date: 2025-09-23 21:05:46.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632746 {#4829
      date: 2025-09-23 21:05:46.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#4844 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#4842
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#4832}
        #id: 3039
        #name: "Moulin Paris Antique Peugeot"
        #slug: "moulin-paris-antique-peugeot-5078"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Pi&egrave;ce unique travaill&eacute;e &agrave; la main.</li>\n
          <li>En bois de h&ecirc;tre.&nbsp;</li>\n
          <li>R&eacute;glage de mouture.</li>\n
          <li>M&eacute;canisme en acier garanti &agrave; vie.</li>\n
          </ul>\n
          <ul>\n
          </ul></div><h1>Description Moulin Paris Antique Peugeot</h1><div class="col is-12">Le moulin Paris Antique Peugeot vous permet de pr&eacute;senter &eacute;l&eacute;gamment votre poivre et sel. Aux charmes d'autrefois, les moulins sont en bois de h&ecirc;tre patin&eacute; par le temps. Ce sont des pi&egrave;ces unique qui sont travaill&eacute;es &agrave; la main. Un r&eacute;glage de la mouture est possible gr&acirc;ce &agrave; l'&eacute;crou laiton grav&eacute;e.</div><h1>Caractéristiques Moulin Paris Antique Peugeot</h1><div class="col is-12">En bois de h&ecirc;tre vielli. Disponible pour poivre et sel.</div>
          """
        #metaKeywords: null
        #metaDescription: null
        #shortDescription: null
        -fullTitle: null
        -metaTitle: null
      }
    ]
    #currentLocale: "fr_FR"
    #currentTranslation: null
    #fallbackLocale: "fr_FR"
    #variantSelectionMethod: "choice"
    #productTaxons: Doctrine\ORM\PersistentCollection {#5145 …}
    #channels: Doctrine\ORM\PersistentCollection {#4839 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#7525 …}
    #reviews: Doctrine\ORM\PersistentCollection {#4840 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#4837 …}
    #productType: null
  }
  "class" => "w-100 h-100 object-fit-cover"
]
Attributes
[
  "product" => "Moulin Paris Antique Peugeot"
  "class" => "w-100 h-100 object-fit-cover"
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#30782
  -props: [
    "product" => App\Entity\Product\Product {#4832
      #id: 3039
      #code: "moulin-paris-antique-peugeot-5078"
      #attributes: Doctrine\ORM\PersistentCollection {#4853 …}
      #variants: Doctrine\ORM\PersistentCollection {#4849 …}
      #options: Doctrine\ORM\PersistentCollection {#4846 …}
      #associations: Doctrine\ORM\PersistentCollection {#4847 …}
      #createdAt: DateTime @1758632746 {#4838
        date: 2025-09-23 21:05:46.0 PRC (+08:00)
      }
      #updatedAt: DateTime @1758632746 {#4829
        date: 2025-09-23 21:05:46.0 PRC (+08:00)
      }
      #enabled: true
      #translations: Doctrine\ORM\PersistentCollection {#4844 …}
      #translationsCache: [
        "fr_FR" => App\Entity\Product\ProductTranslation {#4842
          #locale: "fr_FR"
          #translatable: App\Entity\Product\Product {#4832}
          #id: 3039
          #name: "Moulin Paris Antique Peugeot"
          #slug: "moulin-paris-antique-peugeot-5078"
          #description: """
            <div class="col is-12"><ul>\n
            <li>Pi&egrave;ce unique travaill&eacute;e &agrave; la main.</li>\n
            <li>En bois de h&ecirc;tre.&nbsp;</li>\n
            <li>R&eacute;glage de mouture.</li>\n
            <li>M&eacute;canisme en acier garanti &agrave; vie.</li>\n
            </ul>\n
            <ul>\n
            </ul></div><h1>Description Moulin Paris Antique Peugeot</h1><div class="col is-12">Le moulin Paris Antique Peugeot vous permet de pr&eacute;senter &eacute;l&eacute;gamment votre poivre et sel. Aux charmes d'autrefois, les moulins sont en bois de h&ecirc;tre patin&eacute; par le temps. Ce sont des pi&egrave;ces unique qui sont travaill&eacute;es &agrave; la main. Un r&eacute;glage de la mouture est possible gr&acirc;ce &agrave; l'&eacute;crou laiton grav&eacute;e.</div><h1>Caractéristiques Moulin Paris Antique Peugeot</h1><div class="col is-12">En bois de h&ecirc;tre vielli. Disponible pour poivre et sel.</div>
            """
          #metaKeywords: null
          #metaDescription: null
          #shortDescription: null
          -fullTitle: null
          -metaTitle: null
        }
      ]
      #currentLocale: "fr_FR"
      #currentTranslation: null
      #fallbackLocale: "fr_FR"
      #variantSelectionMethod: "choice"
      #productTaxons: Doctrine\ORM\PersistentCollection {#5145 …}
      #channels: Doctrine\ORM\PersistentCollection {#4839 …}
      #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#7525 …}
      #reviews: Doctrine\ORM\PersistentCollection {#4840 …}
      #averageRating: 0.0
      #images: Doctrine\ORM\PersistentCollection {#4837 …}
      #productType: null
    }
    "class" => "w-100 h-100 object-fit-cover"
  ]
}
sylius_shop:catalog_promotions
[Anonymous]
114.0 MiB 0.57 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30866
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30766 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30833 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30763 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#30711 …}
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#30719
    #collection: Doctrine\Common\Collections\ArrayCollection {#30728 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#30707 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38518 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38520 …}
  }
  "withDescription" => false
]
Attributes
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30866
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30766 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30833 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30763 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => "Moulin Paris Antique Peugeot"
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#30719
    #collection: Doctrine\Common\Collections\ArrayCollection {#30728 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#30707 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38518 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38520 …}
  }
  "withDescription" => false
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#30867
  -props: [
    "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30866
      +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30766 …}
      +context: Sylius\TwigHooks\Bag\DataBag {#30833 …}
      +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30763 …}
      +prefixes: [
        "sylius_shop.product.index.content.body.main.card.prices"
        "sylius_shop.shared.product.card.prices"
      ]
    }
    "variant" => App\Entity\Product\ProductVariant {#30711 …}
    "applied_promotions" => Doctrine\ORM\PersistentCollection {#30719
      #collection: Doctrine\Common\Collections\ArrayCollection {#30728 …}
      #initialized: true
      -snapshot: []
      -owner: App\Entity\Channel\ChannelPricing {#30707 …}
      -association: Symfony\Component\VarDumper\Caster\CutStub {#38518 …}
      -backRefFieldName: null
      -isDirty: false
      -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
      -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38520 …}
    }
    "withDescription" => false
  ]
}
sylius_shop:product:card:price Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent 114.0 MiB 0.14 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30920
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30911 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30918 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30919 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#30711 …}
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Attributes
[
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent {#30923
  +variant: App\Entity\Product\ProductVariant {#30711 …}
  +price: "48,00\u{A0}"
  +originalPrice: "53,00\u{A0}"
  +hasDiscount: true
  #productVariantPricesCalculator: Sylius\Component\Core\Calculator\ProductVariantPriceCalculator {#5465 …}
  #moneyFormatter: Sylius\Bundle\MoneyBundle\Formatter\MoneyFormatter {#8305 …}
  #channelContext: Sylius\Component\Channel\Context\CachedPerRequestChannelContext {#4203 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  #currencyContext: Sylius\Component\Core\Currency\Context\ChannelAwareCurrencyContext {#12064 …}
  #currencyConverter: Sylius\Component\Currency\Converter\CurrencyConverter {#8296 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30920
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30911 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30918 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30919 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
}
sylius_shop:product:card Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent 114.0 MiB 4.21 ms
Input props
[
  "product" => App\Entity\Product\Product {#5114
    #id: 2701
    #code: "pierres-a-whisky-vacuvin-5710"
    #attributes: Doctrine\ORM\PersistentCollection {#5141 …}
    #variants: Doctrine\ORM\PersistentCollection {#5139 …}
    #options: Doctrine\ORM\PersistentCollection {#5117 …}
    #associations: Doctrine\ORM\PersistentCollection {#5119 …}
    #createdAt: DateTime @1758632628 {#5144
      date: 2025-09-23 21:03:48.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632628 {#5157
      date: 2025-09-23 21:03:48.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#5156 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#5149
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#5114}
        #id: 2701
        #name: "Pierres à Whisky Vacuvin"
        #slug: "pierres-a-whisky-vacuvin-5710"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Rafraichit tout en conservant les ar&ocirc;mes des boissons.</li>\n
          <li>Ne dilue pas les boissons.</li>\n
          </ul></div><h1>Descriptif Pierres à Whisky Vacuvin</h1><div class="col is-12">Les pierres &agrave; Whisky Vacuvin sont de petits cubes en inox contenant un liquide r&eacute;frig&eacute;rant, que vous placerez dans votre cong&eacute;lateur et qui vous permettront de rafraichir vos whiskies et autres boissons pr&eacute;f&eacute;r&eacute;es sans en alt&eacute;rer les ar&ocirc;mes et le go&ucirc;t.</div><h1>Caractéristiques Pierres à Whisky Vacuvin</h1><div class="col is-12">- En acier inoxydable.<br />- A placer au cong&eacute;lateur.&nbsp;<br />- Dimensions d'un " gla&ccedil;on " : 25 x 25 x 25 mm.&nbsp;</div>
          """
        #metaKeywords: null
        #metaDescription: null
        #shortDescription: null
        -fullTitle: null
        -metaTitle: null
      }
    ]
    #currentLocale: "fr_FR"
    #currentTranslation: null
    #fallbackLocale: "fr_FR"
    #variantSelectionMethod: "choice"
    #productTaxons: Doctrine\ORM\PersistentCollection {#5134 …}
    #channels: Doctrine\ORM\PersistentCollection {#5136 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#5128 …}
    #reviews: Doctrine\ORM\PersistentCollection {#5123 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#5127 …}
    #productType: null
  }
  "template" => "@SyliusShop/product/common/card.html.twig"
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27715
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27748 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27754 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27741 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
]
Attributes
[
  "template" => "@SyliusShop/product/common/card.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent {#30773
  +product: App\Entity\Product\Product {#5114
    #id: 2701
    #code: "pierres-a-whisky-vacuvin-5710"
    #attributes: Doctrine\ORM\PersistentCollection {#5141 …}
    #variants: Doctrine\ORM\PersistentCollection {#5139 …}
    #options: Doctrine\ORM\PersistentCollection {#5117 …}
    #associations: Doctrine\ORM\PersistentCollection {#5119 …}
    #createdAt: DateTime @1758632628 {#5144
      date: 2025-09-23 21:03:48.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632628 {#5157
      date: 2025-09-23 21:03:48.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#5156 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#5149
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#5114}
        #id: 2701
        #name: "Pierres à Whisky Vacuvin"
        #slug: "pierres-a-whisky-vacuvin-5710"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Rafraichit tout en conservant les ar&ocirc;mes des boissons.</li>\n
          <li>Ne dilue pas les boissons.</li>\n
          </ul></div><h1>Descriptif Pierres à Whisky Vacuvin</h1><div class="col is-12">Les pierres &agrave; Whisky Vacuvin sont de petits cubes en inox contenant un liquide r&eacute;frig&eacute;rant, que vous placerez dans votre cong&eacute;lateur et qui vous permettront de rafraichir vos whiskies et autres boissons pr&eacute;f&eacute;r&eacute;es sans en alt&eacute;rer les ar&ocirc;mes et le go&ucirc;t.</div><h1>Caractéristiques Pierres à Whisky Vacuvin</h1><div class="col is-12">- En acier inoxydable.<br />- A placer au cong&eacute;lateur.&nbsp;<br />- Dimensions d'un " gla&ccedil;on " : 25 x 25 x 25 mm.&nbsp;</div>
          """
        #metaKeywords: null
        #metaDescription: null
        #shortDescription: null
        -fullTitle: null
        -metaTitle: null
      }
    ]
    #currentLocale: "fr_FR"
    #currentTranslation: null
    #fallbackLocale: "fr_FR"
    #variantSelectionMethod: "choice"
    #productTaxons: Doctrine\ORM\PersistentCollection {#5134 …}
    #channels: Doctrine\ORM\PersistentCollection {#5136 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#5128 …}
    #reviews: Doctrine\ORM\PersistentCollection {#5123 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#5127 …}
    #productType: null
  }
  +variant: App\Entity\Product\ProductVariant {#30986 …}
  +slug: null
  #productRepository: Sylius\Bundle\CoreBundle\Doctrine\ORM\ProductRepository {#6914 …}
  #productVariantResolver: Sylius\Component\Product\Resolver\CompositeProductVariantResolver {#5455 …}
  #channelContext: Sylius\Component\Channel\Context\CachedPerRequestChannelContext {#4203 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  #productVariantPricesCalculator: Sylius\Component\Core\Calculator\ProductVariantPriceCalculator {#5465 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27715
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27748 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27754 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27741 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
}
sylius_shop:main_image
[Anonymous]
114.0 MiB 0.65 ms
Input props
[
  "product" => App\Entity\Product\Product {#5114
    #id: 2701
    #code: "pierres-a-whisky-vacuvin-5710"
    #attributes: Doctrine\ORM\PersistentCollection {#5141 …}
    #variants: Doctrine\ORM\PersistentCollection {#5139 …}
    #options: Doctrine\ORM\PersistentCollection {#5117 …}
    #associations: Doctrine\ORM\PersistentCollection {#5119 …}
    #createdAt: DateTime @1758632628 {#5144
      date: 2025-09-23 21:03:48.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632628 {#5157
      date: 2025-09-23 21:03:48.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#5156 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#5149
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#5114}
        #id: 2701
        #name: "Pierres à Whisky Vacuvin"
        #slug: "pierres-a-whisky-vacuvin-5710"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Rafraichit tout en conservant les ar&ocirc;mes des boissons.</li>\n
          <li>Ne dilue pas les boissons.</li>\n
          </ul></div><h1>Descriptif Pierres à Whisky Vacuvin</h1><div class="col is-12">Les pierres &agrave; Whisky Vacuvin sont de petits cubes en inox contenant un liquide r&eacute;frig&eacute;rant, que vous placerez dans votre cong&eacute;lateur et qui vous permettront de rafraichir vos whiskies et autres boissons pr&eacute;f&eacute;r&eacute;es sans en alt&eacute;rer les ar&ocirc;mes et le go&ucirc;t.</div><h1>Caractéristiques Pierres à Whisky Vacuvin</h1><div class="col is-12">- En acier inoxydable.<br />- A placer au cong&eacute;lateur.&nbsp;<br />- Dimensions d'un " gla&ccedil;on " : 25 x 25 x 25 mm.&nbsp;</div>
          """
        #metaKeywords: null
        #metaDescription: null
        #shortDescription: null
        -fullTitle: null
        -metaTitle: null
      }
    ]
    #currentLocale: "fr_FR"
    #currentTranslation: null
    #fallbackLocale: "fr_FR"
    #variantSelectionMethod: "choice"
    #productTaxons: Doctrine\ORM\PersistentCollection {#5134 …}
    #channels: Doctrine\ORM\PersistentCollection {#5136 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#5128 …}
    #reviews: Doctrine\ORM\PersistentCollection {#5123 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#5127 …}
    #productType: null
  }
  "class" => "w-100 h-100 object-fit-cover"
]
Attributes
[
  "product" => "Pierres à Whisky Vacuvin"
  "class" => "w-100 h-100 object-fit-cover"
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#31057
  -props: [
    "product" => App\Entity\Product\Product {#5114
      #id: 2701
      #code: "pierres-a-whisky-vacuvin-5710"
      #attributes: Doctrine\ORM\PersistentCollection {#5141 …}
      #variants: Doctrine\ORM\PersistentCollection {#5139 …}
      #options: Doctrine\ORM\PersistentCollection {#5117 …}
      #associations: Doctrine\ORM\PersistentCollection {#5119 …}
      #createdAt: DateTime @1758632628 {#5144
        date: 2025-09-23 21:03:48.0 PRC (+08:00)
      }
      #updatedAt: DateTime @1758632628 {#5157
        date: 2025-09-23 21:03:48.0 PRC (+08:00)
      }
      #enabled: true
      #translations: Doctrine\ORM\PersistentCollection {#5156 …}
      #translationsCache: [
        "fr_FR" => App\Entity\Product\ProductTranslation {#5149
          #locale: "fr_FR"
          #translatable: App\Entity\Product\Product {#5114}
          #id: 2701
          #name: "Pierres à Whisky Vacuvin"
          #slug: "pierres-a-whisky-vacuvin-5710"
          #description: """
            <div class="col is-12"><ul>\n
            <li>Rafraichit tout en conservant les ar&ocirc;mes des boissons.</li>\n
            <li>Ne dilue pas les boissons.</li>\n
            </ul></div><h1>Descriptif Pierres à Whisky Vacuvin</h1><div class="col is-12">Les pierres &agrave; Whisky Vacuvin sont de petits cubes en inox contenant un liquide r&eacute;frig&eacute;rant, que vous placerez dans votre cong&eacute;lateur et qui vous permettront de rafraichir vos whiskies et autres boissons pr&eacute;f&eacute;r&eacute;es sans en alt&eacute;rer les ar&ocirc;mes et le go&ucirc;t.</div><h1>Caractéristiques Pierres à Whisky Vacuvin</h1><div class="col is-12">- En acier inoxydable.<br />- A placer au cong&eacute;lateur.&nbsp;<br />- Dimensions d'un " gla&ccedil;on " : 25 x 25 x 25 mm.&nbsp;</div>
            """
          #metaKeywords: null
          #metaDescription: null
          #shortDescription: null
          -fullTitle: null
          -metaTitle: null
        }
      ]
      #currentLocale: "fr_FR"
      #currentTranslation: null
      #fallbackLocale: "fr_FR"
      #variantSelectionMethod: "choice"
      #productTaxons: Doctrine\ORM\PersistentCollection {#5134 …}
      #channels: Doctrine\ORM\PersistentCollection {#5136 …}
      #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#5128 …}
      #reviews: Doctrine\ORM\PersistentCollection {#5123 …}
      #averageRating: 0.0
      #images: Doctrine\ORM\PersistentCollection {#5127 …}
      #productType: null
    }
    "class" => "w-100 h-100 object-fit-cover"
  ]
}
sylius_shop:catalog_promotions
[Anonymous]
114.0 MiB 0.63 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#31050
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#31041 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#31108 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#31038 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#30986 …}
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#30994
    #collection: Doctrine\Common\Collections\ArrayCollection {#31003 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#30982 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38532 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38534 …}
  }
  "withDescription" => false
]
Attributes
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#31050
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#31041 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#31108 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#31038 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => "Pierres à Whisky Vacuvin"
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#30994
    #collection: Doctrine\Common\Collections\ArrayCollection {#31003 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#30982 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38532 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38534 …}
  }
  "withDescription" => false
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#31112
  -props: [
    "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#31050
      +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#31041 …}
      +context: Sylius\TwigHooks\Bag\DataBag {#31108 …}
      +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#31038 …}
      +prefixes: [
        "sylius_shop.product.index.content.body.main.card.prices"
        "sylius_shop.shared.product.card.prices"
      ]
    }
    "variant" => App\Entity\Product\ProductVariant {#30986 …}
    "applied_promotions" => Doctrine\ORM\PersistentCollection {#30994
      #collection: Doctrine\Common\Collections\ArrayCollection {#31003 …}
      #initialized: true
      -snapshot: []
      -owner: App\Entity\Channel\ChannelPricing {#30982 …}
      -association: Symfony\Component\VarDumper\Caster\CutStub {#38532 …}
      -backRefFieldName: null
      -isDirty: false
      -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
      -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38534 …}
    }
    "withDescription" => false
  ]
}
sylius_shop:product:card:price Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent 114.0 MiB 0.14 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#31162
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#31153 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#31160 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#31161 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#30986 …}
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Attributes
[
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent {#31165
  +variant: App\Entity\Product\ProductVariant {#30986 …}
  +price: "15,00\u{A0}"
  +originalPrice: "15,00\u{A0}"
  +hasDiscount: false
  #productVariantPricesCalculator: Sylius\Component\Core\Calculator\ProductVariantPriceCalculator {#5465 …}
  #moneyFormatter: Sylius\Bundle\MoneyBundle\Formatter\MoneyFormatter {#8305 …}
  #channelContext: Sylius\Component\Channel\Context\CachedPerRequestChannelContext {#4203 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  #currencyContext: Sylius\Component\Core\Currency\Context\ChannelAwareCurrencyContext {#12064 …}
  #currencyConverter: Sylius\Component\Currency\Converter\CurrencyConverter {#8296 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#31162
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#31153 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#31160 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#31161 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
}
sylius_shop:cart:widget:offcanvas Sylius\Bundle\ShopBundle\Twig\Component\Cart\WidgetComponent 114.0 MiB 2.05 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27428
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#12129 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27450 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#12139 …}
    +prefixes: [
      "sylius_shop.base.offcanvas"
    ]
  }
  "template" => "@SyliusShop/shared/layout/base/offcanvas/cart.html.twig"
]
Attributes
[]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Cart\WidgetComponent {#31477
  +cart: App\Entity\Order\Order {#13043 …}
  #cartContext: Sylius\Component\Order\Context\CompositeCartContext {#1322 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27428
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#12129 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27450 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#12139 …}
    +prefixes: [
      "sylius_shop.base.offcanvas"
    ]
  }
  +template: "@SyliusShop/shared/layout/base/offcanvas/cart.html.twig"
  #repository: Sylius\Bundle\CoreBundle\Doctrine\ORM\OrderRepository {#4980 …}
}