GET https://sylius-cuisinstore.preprod.eu/fr_FR/taxons/coin-cuisine-devidoirs-573?sorting%5BcreatedAt%5D=asc

Components

12 Twig Components
36 Render Count
66 ms Render Time
118.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
7 39.39ms
sylius_shop:main_image
[Anonymous]
@SyliusShop/shared/components/main_image.html.twig
7 7.60ms
sylius_shop:catalog_promotions
[Anonymous]
@SyliusShop/shared/components/catalog_promotions.html.twig
7 5.91ms
sylius_shop:product:card:price
"Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent"
@SyliusUi/components/default.html.twig
7 1.23ms
sylius_shop:common:currency_switcher
"Sylius\Bundle\ShopBundle\Twig\Component\Common\CurrencySwitcherComponent"
@SyliusUi/components/default.html.twig
1 1.14ms
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 4.57ms
sylius_shop:common:taxon_menu
"Sylius\Bundle\ShopBundle\Twig\Component\Common\TaxonMenuComponent"
@SyliusUi/components/default.html.twig
1 14.52ms
sylius_shop:product:show:breadcrumbs
"Sylius\Bundle\ShopBundle\Twig\Component\Product\BreadcrumbComponent"
@SyliusUi/components/default.html.twig
1 0.97ms
sylius_shop:product:show:taxonomy
"Sylius\Bundle\ShopBundle\Twig\Component\Product\BreadcrumbComponent"
@SyliusUi/components/default.html.twig
1 0.66ms
sylius_shop:product:show:header
"Sylius\Bundle\ShopBundle\Twig\Component\Product\BreadcrumbComponent"
@SyliusUi/components/default.html.twig
1 1.84ms
sylius_shop:cart:widget:offcanvas
"Sylius\Bundle\ShopBundle\Twig\Component\Cart\WidgetComponent"
@SyliusUi/components/default.html.twig
1 2.01ms

Render calls

sylius_shop:common:currency_switcher Sylius\Bundle\ShopBundle\Twig\Component\Common\CurrencySwitcherComponent 118.0 MiB 1.14 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#12547
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#12540 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#12546 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#12545 …}
    +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 {#13167
  #channelContext: Sylius\Component\Channel\Context\CachedPerRequestChannelContext {#4203 …}
  #currencyContext: Sylius\Component\Core\Currency\Context\ChannelAwareCurrencyContext {#12438 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#12547
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#12540 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#12546 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#12545 …}
    +prefixes: [
      "sylius_shop.base.header.top_bar"
    ]
  }
}
sylius_shop:common:locale_switcher Sylius\Bundle\ShopBundle\Twig\Component\Common\LocaleSwitcherComponent 118.0 MiB 0.73 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#13244
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#13240 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#13242 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#13243 …}
    +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 {#13253
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  #localeProvider: Sylius\Component\Core\Provider\ChannelBasedLocaleProvider {#4528 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#13244
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#13240 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#13242 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#13243 …}
    +prefixes: [
      "sylius_shop.base.header.top_bar"
    ]
  }
}
sylius_shop:cart:widget Sylius\Bundle\ShopBundle\Twig\Component\Cart\WidgetComponent 118.0 MiB 4.57 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#13335
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#13314 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#13334 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#13333 …}
    +prefixes: [
      "sylius_shop.base.header.content"
    ]
  }
  "template" => "@SyliusShop/shared/components/header/cart.html.twig"
]
Attributes
[]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Cart\WidgetComponent {#13350
  +cart: App\Entity\Order\Order {#13417 …}
  #cartContext: Sylius\Component\Order\Context\CompositeCartContext {#1322 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#13335
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#13314 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#13334 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#13333 …}
    +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 118.0 MiB 14.52 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#13603
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#13591 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#13597 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#13589 …}
    +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 {#13612
  #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 {#13603
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#13591 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#13597 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#13589 …}
    +prefixes: [
      "sylius_shop.base.header.navbar"
    ]
  }
}
sylius_shop:product:show:breadcrumbs Sylius\Bundle\ShopBundle\Twig\Component\Product\BreadcrumbComponent 118.0 MiB 0.97 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27403
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27399 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27400 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27402 …}
    +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 {#27412
  #requestStack: Symfony\Component\HttpFoundation\RequestStack {#243 …}
  #taxonRepository: App\Repository\TaxonRepository {#7413 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27403
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27399 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27400 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27402 …}
    +prefixes: [
      "sylius_shop.product.index.content"
    ]
  }
}
sylius_shop:product:show:taxonomy Sylius\Bundle\ShopBundle\Twig\Component\Product\BreadcrumbComponent 118.0 MiB 0.66 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27516
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27512 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27513 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27515 …}
    +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 {#27524
  #requestStack: Symfony\Component\HttpFoundation\RequestStack {#243 …}
  #taxonRepository: App\Repository\TaxonRepository {#7413 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27516
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27512 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27513 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27515 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.sidebar"
    ]
  }
}
sylius_shop:product:show:header Sylius\Bundle\ShopBundle\Twig\Component\Product\BreadcrumbComponent 118.0 MiB 1.84 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27587
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27583 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27584 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27586 …}
    +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 {#27595
  #requestStack: Symfony\Component\HttpFoundation\RequestStack {#243 …}
  #taxonRepository: App\Repository\TaxonRepository {#7413 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27587
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27583 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27584 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27586 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
}
sylius_shop:product:card Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent 118.0 MiB 9.93 ms
Input props
[
  "product" => App\Entity\Product\Product {#7964
    #id: 2855
    #code: "derouleur-mural-lacor-3736"
    #attributes: Doctrine\ORM\PersistentCollection {#8170 …}
    #variants: Doctrine\ORM\PersistentCollection {#8393 …}
    #options: Doctrine\ORM\PersistentCollection {#8521 …}
    #associations: Doctrine\ORM\PersistentCollection {#8461 …}
    #createdAt: DateTime @1758632672 {#7680
      date: 2025-09-23 21:04:32.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632672 {#7403
      date: 2025-09-23 21:04:32.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8520 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8523
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#7964}
        #id: 2855
        #name: "Dérouleur mural LACOR"
        #slug: "derouleur-mural-lacor-3736"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Montage pratique et facile</li>\n
          <li>Chargement frontal des rouleaux</li>\n
          <li>Lames int&eacute;gr&eacute;es pour une d&eacute;coupe sans risque&nbsp;</li>\n
          </ul></div><h1>Description Dérouleur mural LACOR</h1><div class="col is-12">Le D&eacute;rouleur mural LACOR permet une d&eacute;coupe simple et s&eacute;curis&eacute; du film transparent et de l'aluminium, ainsi qu'un emplacement pour suspendre votre essuie-tout.<br />Le D&eacute;rouleur mural LACOR poss&egrave;de un syst&egrave;me de lame se d&eacute;pla&ccedil;ant d'un bord &agrave; l'autre du d&eacute;rouleur afin d'avoir une d&eacute;coupe nette sans risque d'accident.<br /></div><h1>Caractéristiques Dérouleur mural LACOR</h1><div class="col is-12">Largeur : 37.5 cm. Hauteur : 17 cm. Profondeur : 7.5 cm. Inox mat. Profil ovale. Vendu sans rouleaux.</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 {#8526 …}
    #channels: Doctrine\ORM\PersistentCollection {#8029 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#7525 …}
    #reviews: Doctrine\ORM\PersistentCollection {#7920 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8032 …}
    #productType: null
  }
  "template" => "@SyliusShop/product/common/card.html.twig"
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27652
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27685 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27691 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27678 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
]
Attributes
[
  "template" => "@SyliusShop/product/common/card.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent {#28121
  +product: App\Entity\Product\Product {#7964
    #id: 2855
    #code: "derouleur-mural-lacor-3736"
    #attributes: Doctrine\ORM\PersistentCollection {#8170 …}
    #variants: Doctrine\ORM\PersistentCollection {#8393 …}
    #options: Doctrine\ORM\PersistentCollection {#8521 …}
    #associations: Doctrine\ORM\PersistentCollection {#8461 …}
    #createdAt: DateTime @1758632672 {#7680
      date: 2025-09-23 21:04:32.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632672 {#7403
      date: 2025-09-23 21:04:32.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8520 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8523
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#7964}
        #id: 2855
        #name: "Dérouleur mural LACOR"
        #slug: "derouleur-mural-lacor-3736"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Montage pratique et facile</li>\n
          <li>Chargement frontal des rouleaux</li>\n
          <li>Lames int&eacute;gr&eacute;es pour une d&eacute;coupe sans risque&nbsp;</li>\n
          </ul></div><h1>Description Dérouleur mural LACOR</h1><div class="col is-12">Le D&eacute;rouleur mural LACOR permet une d&eacute;coupe simple et s&eacute;curis&eacute; du film transparent et de l'aluminium, ainsi qu'un emplacement pour suspendre votre essuie-tout.<br />Le D&eacute;rouleur mural LACOR poss&egrave;de un syst&egrave;me de lame se d&eacute;pla&ccedil;ant d'un bord &agrave; l'autre du d&eacute;rouleur afin d'avoir une d&eacute;coupe nette sans risque d'accident.<br /></div><h1>Caractéristiques Dérouleur mural LACOR</h1><div class="col is-12">Largeur : 37.5 cm. Hauteur : 17 cm. Profondeur : 7.5 cm. Inox mat. Profil ovale. Vendu sans rouleaux.</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 {#8526 …}
    #channels: Doctrine\ORM\PersistentCollection {#8029 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#7525 …}
    #reviews: Doctrine\ORM\PersistentCollection {#7920 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8032 …}
    #productType: null
  }
  +variant: App\Entity\Product\ProductVariant {#28387 …}
  +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 {#27652
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27685 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27691 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27678 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
}
sylius_shop:main_image
[Anonymous]
118.0 MiB 2.10 ms
Input props
[
  "product" => App\Entity\Product\Product {#7964
    #id: 2855
    #code: "derouleur-mural-lacor-3736"
    #attributes: Doctrine\ORM\PersistentCollection {#8170 …}
    #variants: Doctrine\ORM\PersistentCollection {#8393 …}
    #options: Doctrine\ORM\PersistentCollection {#8521 …}
    #associations: Doctrine\ORM\PersistentCollection {#8461 …}
    #createdAt: DateTime @1758632672 {#7680
      date: 2025-09-23 21:04:32.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632672 {#7403
      date: 2025-09-23 21:04:32.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8520 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8523
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#7964}
        #id: 2855
        #name: "Dérouleur mural LACOR"
        #slug: "derouleur-mural-lacor-3736"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Montage pratique et facile</li>\n
          <li>Chargement frontal des rouleaux</li>\n
          <li>Lames int&eacute;gr&eacute;es pour une d&eacute;coupe sans risque&nbsp;</li>\n
          </ul></div><h1>Description Dérouleur mural LACOR</h1><div class="col is-12">Le D&eacute;rouleur mural LACOR permet une d&eacute;coupe simple et s&eacute;curis&eacute; du film transparent et de l'aluminium, ainsi qu'un emplacement pour suspendre votre essuie-tout.<br />Le D&eacute;rouleur mural LACOR poss&egrave;de un syst&egrave;me de lame se d&eacute;pla&ccedil;ant d'un bord &agrave; l'autre du d&eacute;rouleur afin d'avoir une d&eacute;coupe nette sans risque d'accident.<br /></div><h1>Caractéristiques Dérouleur mural LACOR</h1><div class="col is-12">Largeur : 37.5 cm. Hauteur : 17 cm. Profondeur : 7.5 cm. Inox mat. Profil ovale. Vendu sans rouleaux.</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 {#8526 …}
    #channels: Doctrine\ORM\PersistentCollection {#8029 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#7525 …}
    #reviews: Doctrine\ORM\PersistentCollection {#7920 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8032 …}
    #productType: null
  }
  "class" => "w-100 h-100 object-fit-cover"
]
Attributes
[
  "product" => "Dérouleur mural LACOR"
  "class" => "w-100 h-100 object-fit-cover"
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#28798
  -props: [
    "product" => App\Entity\Product\Product {#7964
      #id: 2855
      #code: "derouleur-mural-lacor-3736"
      #attributes: Doctrine\ORM\PersistentCollection {#8170 …}
      #variants: Doctrine\ORM\PersistentCollection {#8393 …}
      #options: Doctrine\ORM\PersistentCollection {#8521 …}
      #associations: Doctrine\ORM\PersistentCollection {#8461 …}
      #createdAt: DateTime @1758632672 {#7680
        date: 2025-09-23 21:04:32.0 PRC (+08:00)
      }
      #updatedAt: DateTime @1758632672 {#7403
        date: 2025-09-23 21:04:32.0 PRC (+08:00)
      }
      #enabled: true
      #translations: Doctrine\ORM\PersistentCollection {#8520 …}
      #translationsCache: [
        "fr_FR" => App\Entity\Product\ProductTranslation {#8523
          #locale: "fr_FR"
          #translatable: App\Entity\Product\Product {#7964}
          #id: 2855
          #name: "Dérouleur mural LACOR"
          #slug: "derouleur-mural-lacor-3736"
          #description: """
            <div class="col is-12"><ul>\n
            <li>Montage pratique et facile</li>\n
            <li>Chargement frontal des rouleaux</li>\n
            <li>Lames int&eacute;gr&eacute;es pour une d&eacute;coupe sans risque&nbsp;</li>\n
            </ul></div><h1>Description Dérouleur mural LACOR</h1><div class="col is-12">Le D&eacute;rouleur mural LACOR permet une d&eacute;coupe simple et s&eacute;curis&eacute; du film transparent et de l'aluminium, ainsi qu'un emplacement pour suspendre votre essuie-tout.<br />Le D&eacute;rouleur mural LACOR poss&egrave;de un syst&egrave;me de lame se d&eacute;pla&ccedil;ant d'un bord &agrave; l'autre du d&eacute;rouleur afin d'avoir une d&eacute;coupe nette sans risque d'accident.<br /></div><h1>Caractéristiques Dérouleur mural LACOR</h1><div class="col is-12">Largeur : 37.5 cm. Hauteur : 17 cm. Profondeur : 7.5 cm. Inox mat. Profil ovale. Vendu sans rouleaux.</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 {#8526 …}
      #channels: Doctrine\ORM\PersistentCollection {#8029 …}
      #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#7525 …}
      #reviews: Doctrine\ORM\PersistentCollection {#7920 …}
      #averageRating: 0.0
      #images: Doctrine\ORM\PersistentCollection {#8032 …}
      #productType: null
    }
    "class" => "w-100 h-100 object-fit-cover"
  ]
}
sylius_shop:catalog_promotions
[Anonymous]
118.0 MiB 1.41 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#28868
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#28871 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#28866 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#28865 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#28387 …}
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#28733
    #collection: Doctrine\Common\Collections\ArrayCollection {#28732 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#28570 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#37490 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#37542 …}
  }
  "withDescription" => false
]
Attributes
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#28868
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#28871 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#28866 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#28865 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => "Dérouleur mural LACOR"
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#28733
    #collection: Doctrine\Common\Collections\ArrayCollection {#28732 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#28570 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#37490 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#37542 …}
  }
  "withDescription" => false
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#28876
  -props: [
    "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#28868
      +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#28871 …}
      +context: Sylius\TwigHooks\Bag\DataBag {#28866 …}
      +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#28865 …}
      +prefixes: [
        "sylius_shop.product.index.content.body.main.card.prices"
        "sylius_shop.shared.product.card.prices"
      ]
    }
    "variant" => App\Entity\Product\ProductVariant {#28387 …}
    "applied_promotions" => Doctrine\ORM\PersistentCollection {#28733
      #collection: Doctrine\Common\Collections\ArrayCollection {#28732 …}
      #initialized: true
      -snapshot: []
      -owner: App\Entity\Channel\ChannelPricing {#28570 …}
      -association: Symfony\Component\VarDumper\Caster\CutStub {#37490 …}
      -backRefFieldName: null
      -isDirty: false
      -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
      -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#37542 …}
    }
    "withDescription" => false
  ]
}
sylius_shop:product:card:price Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent 118.0 MiB 0.38 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#28944
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#28934 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#28942 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#28943 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#28387 …}
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Attributes
[
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent {#28953
  +variant: App\Entity\Product\ProductVariant {#28387 …}
  +price: "52,00\u{A0}"
  +originalPrice: "52,00\u{A0}"
  +hasDiscount: false
  #productVariantPricesCalculator: Sylius\Component\Core\Calculator\ProductVariantPriceCalculator {#5465 …}
  #moneyFormatter: Sylius\Bundle\MoneyBundle\Formatter\MoneyFormatter {#9008 …}
  #channelContext: Sylius\Component\Channel\Context\CachedPerRequestChannelContext {#4203 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  #currencyContext: Sylius\Component\Core\Currency\Context\ChannelAwareCurrencyContext {#12438 …}
  #currencyConverter: Sylius\Component\Currency\Converter\CurrencyConverter {#9005 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#28944
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#28934 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#28942 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#28943 …}
    +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 118.0 MiB 5.02 ms
Input props
[
  "product" => App\Entity\Product\Product {#8532
    #id: 2856
    #code: "porte-rouleau-essuie-tout-roll-tear-guzzini-8071"
    #attributes: Doctrine\ORM\PersistentCollection {#8539 …}
    #variants: Doctrine\ORM\PersistentCollection {#8541 …}
    #options: Doctrine\ORM\PersistentCollection {#8545 …}
    #associations: Doctrine\ORM\PersistentCollection {#8543 …}
    #createdAt: DateTime @1758632672 {#8530
      date: 2025-09-23 21:04:32.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632672 {#8531
      date: 2025-09-23 21:04:32.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8548 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8549
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8532}
        #id: 2856
        #name: "Porte-rouleau essuie-tout Roll & Tear Guzzini"
        #slug: "porte-rouleau-essuie-tout-roll-tear-guzzini-8071"
        #description: """
          <div class="col is-12"><ul>\n
          <li>100% plastique recycl&eacute;.&nbsp;</li>\n
          <li>Syst&egrave;me serre-feuille r&eacute;glable.&nbsp;</li>\n
          <li>Pratique et esth&eacute;tique.&nbsp;</li>\n
          <li><strong>Fabriqu&eacute; en Italie.&nbsp;</strong></li>\n
          </ul></div><h1>Descriptif Porte-rouleau essuie-tout Roll & Tear Guzzini</h1><div class="col is-12">Ce porte-rouleau de cuisine universel Guzzini est l'accessoire indispensable &agrave; avoir dans sa cuisine. Il est fabriqu&eacute; dans un mat&eacute;riau antibact&eacute;rien sp&eacute;cial. 100% en plastique recycl&eacute; et &eacute;galement en bois pour la partie haute du porte-rouleau.&nbsp;<br /><br />Un syst&egrave;me serre-feuille r&eacute;glable est int&eacute;gr&eacute; permettant aux feuilles d'&ecirc;tre maintenus et au rouleau de ne pas se d&eacute;rouler. Il est adapt&eacute; aux diff&eacute;rents diam&egrave;tre de chaque rouleau.&nbsp;</div><h1>Caractéristiques Porte-rouleau essuie-tout Roll & Tear Guzzini</h1><div class="col is-12"><ul>\n
          <li>100% plastique recycl&eacute; post-consommation.&nbsp;</li>\n
          <li>Bois.&nbsp;</li>\n
          <li>Syst&egrave;me serre-feuille reglable.&nbsp;</li>\n
          <li>Dimensions : 17 x 30,4 cm.&nbsp;</li>\n
          <li>Changement de rouleau tr&egrave;s facile.&nbsp;</li>\n
          <li>Fabriqu&eacute; en Italie.&nbsp;</li>\n
          </ul></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 {#8551 …}
    #channels: Doctrine\ORM\PersistentCollection {#8537 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#7525 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8533 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8535 …}
    #productType: null
  }
  "template" => "@SyliusShop/product/common/card.html.twig"
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27652
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27685 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27691 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27678 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
]
Attributes
[
  "template" => "@SyliusShop/product/common/card.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent {#28776
  +product: App\Entity\Product\Product {#8532
    #id: 2856
    #code: "porte-rouleau-essuie-tout-roll-tear-guzzini-8071"
    #attributes: Doctrine\ORM\PersistentCollection {#8539 …}
    #variants: Doctrine\ORM\PersistentCollection {#8541 …}
    #options: Doctrine\ORM\PersistentCollection {#8545 …}
    #associations: Doctrine\ORM\PersistentCollection {#8543 …}
    #createdAt: DateTime @1758632672 {#8530
      date: 2025-09-23 21:04:32.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632672 {#8531
      date: 2025-09-23 21:04:32.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8548 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8549
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8532}
        #id: 2856
        #name: "Porte-rouleau essuie-tout Roll & Tear Guzzini"
        #slug: "porte-rouleau-essuie-tout-roll-tear-guzzini-8071"
        #description: """
          <div class="col is-12"><ul>\n
          <li>100% plastique recycl&eacute;.&nbsp;</li>\n
          <li>Syst&egrave;me serre-feuille r&eacute;glable.&nbsp;</li>\n
          <li>Pratique et esth&eacute;tique.&nbsp;</li>\n
          <li><strong>Fabriqu&eacute; en Italie.&nbsp;</strong></li>\n
          </ul></div><h1>Descriptif Porte-rouleau essuie-tout Roll & Tear Guzzini</h1><div class="col is-12">Ce porte-rouleau de cuisine universel Guzzini est l'accessoire indispensable &agrave; avoir dans sa cuisine. Il est fabriqu&eacute; dans un mat&eacute;riau antibact&eacute;rien sp&eacute;cial. 100% en plastique recycl&eacute; et &eacute;galement en bois pour la partie haute du porte-rouleau.&nbsp;<br /><br />Un syst&egrave;me serre-feuille r&eacute;glable est int&eacute;gr&eacute; permettant aux feuilles d'&ecirc;tre maintenus et au rouleau de ne pas se d&eacute;rouler. Il est adapt&eacute; aux diff&eacute;rents diam&egrave;tre de chaque rouleau.&nbsp;</div><h1>Caractéristiques Porte-rouleau essuie-tout Roll & Tear Guzzini</h1><div class="col is-12"><ul>\n
          <li>100% plastique recycl&eacute; post-consommation.&nbsp;</li>\n
          <li>Bois.&nbsp;</li>\n
          <li>Syst&egrave;me serre-feuille reglable.&nbsp;</li>\n
          <li>Dimensions : 17 x 30,4 cm.&nbsp;</li>\n
          <li>Changement de rouleau tr&egrave;s facile.&nbsp;</li>\n
          <li>Fabriqu&eacute; en Italie.&nbsp;</li>\n
          </ul></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 {#8551 …}
    #channels: Doctrine\ORM\PersistentCollection {#8537 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#7525 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8533 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8535 …}
    #productType: null
  }
  +variant: App\Entity\Product\ProductVariant {#29026 …}
  +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 {#27652
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27685 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27691 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27678 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
}
sylius_shop:main_image
[Anonymous]
118.0 MiB 0.99 ms
Input props
[
  "product" => App\Entity\Product\Product {#8532
    #id: 2856
    #code: "porte-rouleau-essuie-tout-roll-tear-guzzini-8071"
    #attributes: Doctrine\ORM\PersistentCollection {#8539 …}
    #variants: Doctrine\ORM\PersistentCollection {#8541 …}
    #options: Doctrine\ORM\PersistentCollection {#8545 …}
    #associations: Doctrine\ORM\PersistentCollection {#8543 …}
    #createdAt: DateTime @1758632672 {#8530
      date: 2025-09-23 21:04:32.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632672 {#8531
      date: 2025-09-23 21:04:32.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8548 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8549
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8532}
        #id: 2856
        #name: "Porte-rouleau essuie-tout Roll & Tear Guzzini"
        #slug: "porte-rouleau-essuie-tout-roll-tear-guzzini-8071"
        #description: """
          <div class="col is-12"><ul>\n
          <li>100% plastique recycl&eacute;.&nbsp;</li>\n
          <li>Syst&egrave;me serre-feuille r&eacute;glable.&nbsp;</li>\n
          <li>Pratique et esth&eacute;tique.&nbsp;</li>\n
          <li><strong>Fabriqu&eacute; en Italie.&nbsp;</strong></li>\n
          </ul></div><h1>Descriptif Porte-rouleau essuie-tout Roll & Tear Guzzini</h1><div class="col is-12">Ce porte-rouleau de cuisine universel Guzzini est l'accessoire indispensable &agrave; avoir dans sa cuisine. Il est fabriqu&eacute; dans un mat&eacute;riau antibact&eacute;rien sp&eacute;cial. 100% en plastique recycl&eacute; et &eacute;galement en bois pour la partie haute du porte-rouleau.&nbsp;<br /><br />Un syst&egrave;me serre-feuille r&eacute;glable est int&eacute;gr&eacute; permettant aux feuilles d'&ecirc;tre maintenus et au rouleau de ne pas se d&eacute;rouler. Il est adapt&eacute; aux diff&eacute;rents diam&egrave;tre de chaque rouleau.&nbsp;</div><h1>Caractéristiques Porte-rouleau essuie-tout Roll & Tear Guzzini</h1><div class="col is-12"><ul>\n
          <li>100% plastique recycl&eacute; post-consommation.&nbsp;</li>\n
          <li>Bois.&nbsp;</li>\n
          <li>Syst&egrave;me serre-feuille reglable.&nbsp;</li>\n
          <li>Dimensions : 17 x 30,4 cm.&nbsp;</li>\n
          <li>Changement de rouleau tr&egrave;s facile.&nbsp;</li>\n
          <li>Fabriqu&eacute; en Italie.&nbsp;</li>\n
          </ul></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 {#8551 …}
    #channels: Doctrine\ORM\PersistentCollection {#8537 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#7525 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8533 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8535 …}
    #productType: null
  }
  "class" => "w-100 h-100 object-fit-cover"
]
Attributes
[
  "product" => "Porte-rouleau essuie-tout Roll & Tear Guzzini"
  "class" => "w-100 h-100 object-fit-cover"
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#29097
  -props: [
    "product" => App\Entity\Product\Product {#8532
      #id: 2856
      #code: "porte-rouleau-essuie-tout-roll-tear-guzzini-8071"
      #attributes: Doctrine\ORM\PersistentCollection {#8539 …}
      #variants: Doctrine\ORM\PersistentCollection {#8541 …}
      #options: Doctrine\ORM\PersistentCollection {#8545 …}
      #associations: Doctrine\ORM\PersistentCollection {#8543 …}
      #createdAt: DateTime @1758632672 {#8530
        date: 2025-09-23 21:04:32.0 PRC (+08:00)
      }
      #updatedAt: DateTime @1758632672 {#8531
        date: 2025-09-23 21:04:32.0 PRC (+08:00)
      }
      #enabled: true
      #translations: Doctrine\ORM\PersistentCollection {#8548 …}
      #translationsCache: [
        "fr_FR" => App\Entity\Product\ProductTranslation {#8549
          #locale: "fr_FR"
          #translatable: App\Entity\Product\Product {#8532}
          #id: 2856
          #name: "Porte-rouleau essuie-tout Roll & Tear Guzzini"
          #slug: "porte-rouleau-essuie-tout-roll-tear-guzzini-8071"
          #description: """
            <div class="col is-12"><ul>\n
            <li>100% plastique recycl&eacute;.&nbsp;</li>\n
            <li>Syst&egrave;me serre-feuille r&eacute;glable.&nbsp;</li>\n
            <li>Pratique et esth&eacute;tique.&nbsp;</li>\n
            <li><strong>Fabriqu&eacute; en Italie.&nbsp;</strong></li>\n
            </ul></div><h1>Descriptif Porte-rouleau essuie-tout Roll & Tear Guzzini</h1><div class="col is-12">Ce porte-rouleau de cuisine universel Guzzini est l'accessoire indispensable &agrave; avoir dans sa cuisine. Il est fabriqu&eacute; dans un mat&eacute;riau antibact&eacute;rien sp&eacute;cial. 100% en plastique recycl&eacute; et &eacute;galement en bois pour la partie haute du porte-rouleau.&nbsp;<br /><br />Un syst&egrave;me serre-feuille r&eacute;glable est int&eacute;gr&eacute; permettant aux feuilles d'&ecirc;tre maintenus et au rouleau de ne pas se d&eacute;rouler. Il est adapt&eacute; aux diff&eacute;rents diam&egrave;tre de chaque rouleau.&nbsp;</div><h1>Caractéristiques Porte-rouleau essuie-tout Roll & Tear Guzzini</h1><div class="col is-12"><ul>\n
            <li>100% plastique recycl&eacute; post-consommation.&nbsp;</li>\n
            <li>Bois.&nbsp;</li>\n
            <li>Syst&egrave;me serre-feuille reglable.&nbsp;</li>\n
            <li>Dimensions : 17 x 30,4 cm.&nbsp;</li>\n
            <li>Changement de rouleau tr&egrave;s facile.&nbsp;</li>\n
            <li>Fabriqu&eacute; en Italie.&nbsp;</li>\n
            </ul></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 {#8551 …}
      #channels: Doctrine\ORM\PersistentCollection {#8537 …}
      #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#7525 …}
      #reviews: Doctrine\ORM\PersistentCollection {#8533 …}
      #averageRating: 0.0
      #images: Doctrine\ORM\PersistentCollection {#8535 …}
      #productType: null
    }
    "class" => "w-100 h-100 object-fit-cover"
  ]
}
sylius_shop:catalog_promotions
[Anonymous]
118.0 MiB 0.78 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29090
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29081 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29163 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29078 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#29026 …}
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#29034
    #collection: Doctrine\Common\Collections\ArrayCollection {#29043 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#29022 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#37562 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#37564 …}
  }
  "withDescription" => false
]
Attributes
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29090
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29081 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29163 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29078 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => "Porte-rouleau essuie-tout Roll & Tear Guzzini"
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#29034
    #collection: Doctrine\Common\Collections\ArrayCollection {#29043 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#29022 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#37562 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#37564 …}
  }
  "withDescription" => false
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#29167
  -props: [
    "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29090
      +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29081 …}
      +context: Sylius\TwigHooks\Bag\DataBag {#29163 …}
      +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29078 …}
      +prefixes: [
        "sylius_shop.product.index.content.body.main.card.prices"
        "sylius_shop.shared.product.card.prices"
      ]
    }
    "variant" => App\Entity\Product\ProductVariant {#29026 …}
    "applied_promotions" => Doctrine\ORM\PersistentCollection {#29034
      #collection: Doctrine\Common\Collections\ArrayCollection {#29043 …}
      #initialized: true
      -snapshot: []
      -owner: App\Entity\Channel\ChannelPricing {#29022 …}
      -association: Symfony\Component\VarDumper\Caster\CutStub {#37562 …}
      -backRefFieldName: null
      -isDirty: false
      -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
      -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#37564 …}
    }
    "withDescription" => false
  ]
}
sylius_shop:product:card:price Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent 118.0 MiB 0.14 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29217
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29208 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29215 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29216 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#29026 …}
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Attributes
[
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent {#29220
  +variant: App\Entity\Product\ProductVariant {#29026 …}
  +price: "19,00\u{A0}"
  +originalPrice: "19,00\u{A0}"
  +hasDiscount: false
  #productVariantPricesCalculator: Sylius\Component\Core\Calculator\ProductVariantPriceCalculator {#5465 …}
  #moneyFormatter: Sylius\Bundle\MoneyBundle\Formatter\MoneyFormatter {#9008 …}
  #channelContext: Sylius\Component\Channel\Context\CachedPerRequestChannelContext {#4203 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  #currencyContext: Sylius\Component\Core\Currency\Context\ChannelAwareCurrencyContext {#12438 …}
  #currencyConverter: Sylius\Component\Currency\Converter\CurrencyConverter {#9005 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29217
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29208 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29215 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29216 …}
    +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 118.0 MiB 4.77 ms
Input props
[
  "product" => App\Entity\Product\Product {#8555
    #id: 2857
    #code: "devidoir-de-table-inox-992"
    #attributes: Doctrine\ORM\PersistentCollection {#8562 …}
    #variants: Doctrine\ORM\PersistentCollection {#8564 …}
    #options: Doctrine\ORM\PersistentCollection {#8568 …}
    #associations: Doctrine\ORM\PersistentCollection {#8566 …}
    #createdAt: DateTime @1758632673 {#8553
      date: 2025-09-23 21:04:33.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632673 {#8554
      date: 2025-09-23 21:04:33.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8571 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8572
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8555}
        #id: 2857
        #name: "Dévidoir de table inox"
        #slug: "devidoir-de-table-inox-992"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Tr&egrave;s bonne stabilit&eacute;.</li>\n
          <li>Syst&egrave;me de maintient.</li>\n
          </ul>\n
          &nbsp;</div><div class="col is-12"><font face="Verdana" size="1">\r\n
          <p align="left">Pied massif pour une meilleure stabilit&eacute;. Syst&egrave;me de maintien pour &eacute;viter le d&eacute;roulage intempestif.</p>\r\n
          </font></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 {#8574 …}
    #channels: Doctrine\ORM\PersistentCollection {#8560 …}
    #mainTaxon: App\Entity\Taxonomy\Taxon {#7528 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8556 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8558 …}
    #productType: null
  }
  "template" => "@SyliusShop/product/common/card.html.twig"
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27652
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27685 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27691 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27678 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
]
Attributes
[
  "template" => "@SyliusShop/product/common/card.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent {#29088
  +product: App\Entity\Product\Product {#8555
    #id: 2857
    #code: "devidoir-de-table-inox-992"
    #attributes: Doctrine\ORM\PersistentCollection {#8562 …}
    #variants: Doctrine\ORM\PersistentCollection {#8564 …}
    #options: Doctrine\ORM\PersistentCollection {#8568 …}
    #associations: Doctrine\ORM\PersistentCollection {#8566 …}
    #createdAt: DateTime @1758632673 {#8553
      date: 2025-09-23 21:04:33.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632673 {#8554
      date: 2025-09-23 21:04:33.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8571 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8572
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8555}
        #id: 2857
        #name: "Dévidoir de table inox"
        #slug: "devidoir-de-table-inox-992"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Tr&egrave;s bonne stabilit&eacute;.</li>\n
          <li>Syst&egrave;me de maintient.</li>\n
          </ul>\n
          &nbsp;</div><div class="col is-12"><font face="Verdana" size="1">\r\n
          <p align="left">Pied massif pour une meilleure stabilit&eacute;. Syst&egrave;me de maintien pour &eacute;viter le d&eacute;roulage intempestif.</p>\r\n
          </font></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 {#8574 …}
    #channels: Doctrine\ORM\PersistentCollection {#8560 …}
    #mainTaxon: App\Entity\Taxonomy\Taxon {#7528 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8556 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8558 …}
    #productType: null
  }
  +variant: App\Entity\Product\ProductVariant {#29283 …}
  +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 {#27652
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27685 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27691 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27678 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
}
sylius_shop:main_image
[Anonymous]
118.0 MiB 0.76 ms
Input props
[
  "product" => App\Entity\Product\Product {#8555
    #id: 2857
    #code: "devidoir-de-table-inox-992"
    #attributes: Doctrine\ORM\PersistentCollection {#8562 …}
    #variants: Doctrine\ORM\PersistentCollection {#8564 …}
    #options: Doctrine\ORM\PersistentCollection {#8568 …}
    #associations: Doctrine\ORM\PersistentCollection {#8566 …}
    #createdAt: DateTime @1758632673 {#8553
      date: 2025-09-23 21:04:33.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632673 {#8554
      date: 2025-09-23 21:04:33.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8571 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8572
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8555}
        #id: 2857
        #name: "Dévidoir de table inox"
        #slug: "devidoir-de-table-inox-992"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Tr&egrave;s bonne stabilit&eacute;.</li>\n
          <li>Syst&egrave;me de maintient.</li>\n
          </ul>\n
          &nbsp;</div><div class="col is-12"><font face="Verdana" size="1">\r\n
          <p align="left">Pied massif pour une meilleure stabilit&eacute;. Syst&egrave;me de maintien pour &eacute;viter le d&eacute;roulage intempestif.</p>\r\n
          </font></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 {#8574 …}
    #channels: Doctrine\ORM\PersistentCollection {#8560 …}
    #mainTaxon: App\Entity\Taxonomy\Taxon {#7528 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8556 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8558 …}
    #productType: null
  }
  "class" => "w-100 h-100 object-fit-cover"
]
Attributes
[
  "product" => "Dévidoir de table inox"
  "class" => "w-100 h-100 object-fit-cover"
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#29354
  -props: [
    "product" => App\Entity\Product\Product {#8555
      #id: 2857
      #code: "devidoir-de-table-inox-992"
      #attributes: Doctrine\ORM\PersistentCollection {#8562 …}
      #variants: Doctrine\ORM\PersistentCollection {#8564 …}
      #options: Doctrine\ORM\PersistentCollection {#8568 …}
      #associations: Doctrine\ORM\PersistentCollection {#8566 …}
      #createdAt: DateTime @1758632673 {#8553
        date: 2025-09-23 21:04:33.0 PRC (+08:00)
      }
      #updatedAt: DateTime @1758632673 {#8554
        date: 2025-09-23 21:04:33.0 PRC (+08:00)
      }
      #enabled: true
      #translations: Doctrine\ORM\PersistentCollection {#8571 …}
      #translationsCache: [
        "fr_FR" => App\Entity\Product\ProductTranslation {#8572
          #locale: "fr_FR"
          #translatable: App\Entity\Product\Product {#8555}
          #id: 2857
          #name: "Dévidoir de table inox"
          #slug: "devidoir-de-table-inox-992"
          #description: """
            <div class="col is-12"><ul>\n
            <li>Tr&egrave;s bonne stabilit&eacute;.</li>\n
            <li>Syst&egrave;me de maintient.</li>\n
            </ul>\n
            &nbsp;</div><div class="col is-12"><font face="Verdana" size="1">\r\n
            <p align="left">Pied massif pour une meilleure stabilit&eacute;. Syst&egrave;me de maintien pour &eacute;viter le d&eacute;roulage intempestif.</p>\r\n
            </font></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 {#8574 …}
      #channels: Doctrine\ORM\PersistentCollection {#8560 …}
      #mainTaxon: App\Entity\Taxonomy\Taxon {#7528 …}
      #reviews: Doctrine\ORM\PersistentCollection {#8556 …}
      #averageRating: 0.0
      #images: Doctrine\ORM\PersistentCollection {#8558 …}
      #productType: null
    }
    "class" => "w-100 h-100 object-fit-cover"
  ]
}
sylius_shop:catalog_promotions
[Anonymous]
118.0 MiB 0.75 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29347
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29338 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29405 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29335 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#29283 …}
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#29291
    #collection: Doctrine\Common\Collections\ArrayCollection {#29300 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#29279 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#37576 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#37578 …}
  }
  "withDescription" => false
]
Attributes
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29347
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29338 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29405 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29335 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => "Dévidoir de table inox"
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#29291
    #collection: Doctrine\Common\Collections\ArrayCollection {#29300 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#29279 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#37576 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#37578 …}
  }
  "withDescription" => false
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#29409
  -props: [
    "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29347
      +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29338 …}
      +context: Sylius\TwigHooks\Bag\DataBag {#29405 …}
      +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29335 …}
      +prefixes: [
        "sylius_shop.product.index.content.body.main.card.prices"
        "sylius_shop.shared.product.card.prices"
      ]
    }
    "variant" => App\Entity\Product\ProductVariant {#29283 …}
    "applied_promotions" => Doctrine\ORM\PersistentCollection {#29291
      #collection: Doctrine\Common\Collections\ArrayCollection {#29300 …}
      #initialized: true
      -snapshot: []
      -owner: App\Entity\Channel\ChannelPricing {#29279 …}
      -association: Symfony\Component\VarDumper\Caster\CutStub {#37576 …}
      -backRefFieldName: null
      -isDirty: false
      -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
      -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#37578 …}
    }
    "withDescription" => false
  ]
}
sylius_shop:product:card:price Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent 118.0 MiB 0.14 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29459
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29450 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29457 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29458 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#29283 …}
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Attributes
[
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent {#29462
  +variant: App\Entity\Product\ProductVariant {#29283 …}
  +price: "19,00\u{A0}"
  +originalPrice: "19,00\u{A0}"
  +hasDiscount: false
  #productVariantPricesCalculator: Sylius\Component\Core\Calculator\ProductVariantPriceCalculator {#5465 …}
  #moneyFormatter: Sylius\Bundle\MoneyBundle\Formatter\MoneyFormatter {#9008 …}
  #channelContext: Sylius\Component\Channel\Context\CachedPerRequestChannelContext {#4203 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  #currencyContext: Sylius\Component\Core\Currency\Context\ChannelAwareCurrencyContext {#12438 …}
  #currencyConverter: Sylius\Component\Currency\Converter\CurrencyConverter {#9005 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29459
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29450 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29457 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29458 …}
    +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 118.0 MiB 4.80 ms
Input props
[
  "product" => App\Entity\Product\Product {#8581
    #id: 2858
    #code: "derouleur-mural-contura-emsa-2182"
    #attributes: Doctrine\ORM\PersistentCollection {#8588 …}
    #variants: Doctrine\ORM\PersistentCollection {#8590 …}
    #options: Doctrine\ORM\PersistentCollection {#8594 …}
    #associations: Doctrine\ORM\PersistentCollection {#8592 …}
    #createdAt: DateTime @1758632673 {#8579
      date: 2025-09-23 21:04:33.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632673 {#8580
      date: 2025-09-23 21:04:33.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8597 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8598
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8581}
        #id: 2858
        #name: "Dérouleur mural Contura Emsa"
        #slug: "derouleur-mural-contura-emsa-2182"
        #description: """
          <div class="col is-12"><ul>\r\n
              <li>Technique de coupe brevet&eacute;e </li>\r\n
              <li>Fonction de coupe garantie dans les deux sens </li>\r\n
              <li>Remplacement simple des rouleaux </li>\r\n
          </ul></div><h1>Description Dérouleur mural Contura Emsa</h1><div class="col is-12"><p>Le d&eacute;rouleur mural EMSA&nbsp;assure une coupe parfaite et nette du papier aluminium, du film alimentaire et du papier sulfuris&eacute;, ceci dans les deux sens (de gauche &agrave; droite et de droite &agrave; gauche). Il&nbsp;garantit une manipulation s&ucirc;re gr&acirc;ce aux molettes de coupe masqu&eacute;es et une utilisation facile gr&acirc;ce &agrave; la fixation automatique de la feuille lors de la coupe. Il&nbsp;se recharge facilement et s'utilise &eacute;galement sans le support de rouleaux essuie-tout.</p></div><h1>Caractéristiques Dérouleur mural Contura Emsa</h1><div class="col is-12"><span style="font-size: 12px;">Pr&eacute;vu pour 3 rouleaux : film alimentaire, papier alu et essuie-tout.&nbsp;</span>Largeur : 40 cm. Hauteur : 16.5 cm. Profondeur maxi : 9.5 cm. Inox 18/10 et ABS noir. Technique de coupe brevet&eacute;e. Vendu sans rouleaux.</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 {#8600 …}
    #channels: Doctrine\ORM\PersistentCollection {#8586 …}
    #mainTaxon: App\Entity\Taxonomy\Taxon {#7528 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8582 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8584 …}
    #productType: null
  }
  "template" => "@SyliusShop/product/common/card.html.twig"
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27652
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27685 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27691 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27678 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
]
Attributes
[
  "template" => "@SyliusShop/product/common/card.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent {#29345
  +product: App\Entity\Product\Product {#8581
    #id: 2858
    #code: "derouleur-mural-contura-emsa-2182"
    #attributes: Doctrine\ORM\PersistentCollection {#8588 …}
    #variants: Doctrine\ORM\PersistentCollection {#8590 …}
    #options: Doctrine\ORM\PersistentCollection {#8594 …}
    #associations: Doctrine\ORM\PersistentCollection {#8592 …}
    #createdAt: DateTime @1758632673 {#8579
      date: 2025-09-23 21:04:33.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632673 {#8580
      date: 2025-09-23 21:04:33.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8597 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8598
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8581}
        #id: 2858
        #name: "Dérouleur mural Contura Emsa"
        #slug: "derouleur-mural-contura-emsa-2182"
        #description: """
          <div class="col is-12"><ul>\r\n
              <li>Technique de coupe brevet&eacute;e </li>\r\n
              <li>Fonction de coupe garantie dans les deux sens </li>\r\n
              <li>Remplacement simple des rouleaux </li>\r\n
          </ul></div><h1>Description Dérouleur mural Contura Emsa</h1><div class="col is-12"><p>Le d&eacute;rouleur mural EMSA&nbsp;assure une coupe parfaite et nette du papier aluminium, du film alimentaire et du papier sulfuris&eacute;, ceci dans les deux sens (de gauche &agrave; droite et de droite &agrave; gauche). Il&nbsp;garantit une manipulation s&ucirc;re gr&acirc;ce aux molettes de coupe masqu&eacute;es et une utilisation facile gr&acirc;ce &agrave; la fixation automatique de la feuille lors de la coupe. Il&nbsp;se recharge facilement et s'utilise &eacute;galement sans le support de rouleaux essuie-tout.</p></div><h1>Caractéristiques Dérouleur mural Contura Emsa</h1><div class="col is-12"><span style="font-size: 12px;">Pr&eacute;vu pour 3 rouleaux : film alimentaire, papier alu et essuie-tout.&nbsp;</span>Largeur : 40 cm. Hauteur : 16.5 cm. Profondeur maxi : 9.5 cm. Inox 18/10 et ABS noir. Technique de coupe brevet&eacute;e. Vendu sans rouleaux.</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 {#8600 …}
    #channels: Doctrine\ORM\PersistentCollection {#8586 …}
    #mainTaxon: App\Entity\Taxonomy\Taxon {#7528 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8582 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8584 …}
    #productType: null
  }
  +variant: App\Entity\Product\ProductVariant {#29525 …}
  +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 {#27652
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27685 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27691 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27678 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
}
sylius_shop:main_image
[Anonymous]
118.0 MiB 0.93 ms
Input props
[
  "product" => App\Entity\Product\Product {#8581
    #id: 2858
    #code: "derouleur-mural-contura-emsa-2182"
    #attributes: Doctrine\ORM\PersistentCollection {#8588 …}
    #variants: Doctrine\ORM\PersistentCollection {#8590 …}
    #options: Doctrine\ORM\PersistentCollection {#8594 …}
    #associations: Doctrine\ORM\PersistentCollection {#8592 …}
    #createdAt: DateTime @1758632673 {#8579
      date: 2025-09-23 21:04:33.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632673 {#8580
      date: 2025-09-23 21:04:33.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8597 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8598
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8581}
        #id: 2858
        #name: "Dérouleur mural Contura Emsa"
        #slug: "derouleur-mural-contura-emsa-2182"
        #description: """
          <div class="col is-12"><ul>\r\n
              <li>Technique de coupe brevet&eacute;e </li>\r\n
              <li>Fonction de coupe garantie dans les deux sens </li>\r\n
              <li>Remplacement simple des rouleaux </li>\r\n
          </ul></div><h1>Description Dérouleur mural Contura Emsa</h1><div class="col is-12"><p>Le d&eacute;rouleur mural EMSA&nbsp;assure une coupe parfaite et nette du papier aluminium, du film alimentaire et du papier sulfuris&eacute;, ceci dans les deux sens (de gauche &agrave; droite et de droite &agrave; gauche). Il&nbsp;garantit une manipulation s&ucirc;re gr&acirc;ce aux molettes de coupe masqu&eacute;es et une utilisation facile gr&acirc;ce &agrave; la fixation automatique de la feuille lors de la coupe. Il&nbsp;se recharge facilement et s'utilise &eacute;galement sans le support de rouleaux essuie-tout.</p></div><h1>Caractéristiques Dérouleur mural Contura Emsa</h1><div class="col is-12"><span style="font-size: 12px;">Pr&eacute;vu pour 3 rouleaux : film alimentaire, papier alu et essuie-tout.&nbsp;</span>Largeur : 40 cm. Hauteur : 16.5 cm. Profondeur maxi : 9.5 cm. Inox 18/10 et ABS noir. Technique de coupe brevet&eacute;e. Vendu sans rouleaux.</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 {#8600 …}
    #channels: Doctrine\ORM\PersistentCollection {#8586 …}
    #mainTaxon: App\Entity\Taxonomy\Taxon {#7528 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8582 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8584 …}
    #productType: null
  }
  "class" => "w-100 h-100 object-fit-cover"
]
Attributes
[
  "product" => "Dérouleur mural Contura Emsa"
  "class" => "w-100 h-100 object-fit-cover"
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#29596
  -props: [
    "product" => App\Entity\Product\Product {#8581
      #id: 2858
      #code: "derouleur-mural-contura-emsa-2182"
      #attributes: Doctrine\ORM\PersistentCollection {#8588 …}
      #variants: Doctrine\ORM\PersistentCollection {#8590 …}
      #options: Doctrine\ORM\PersistentCollection {#8594 …}
      #associations: Doctrine\ORM\PersistentCollection {#8592 …}
      #createdAt: DateTime @1758632673 {#8579
        date: 2025-09-23 21:04:33.0 PRC (+08:00)
      }
      #updatedAt: DateTime @1758632673 {#8580
        date: 2025-09-23 21:04:33.0 PRC (+08:00)
      }
      #enabled: true
      #translations: Doctrine\ORM\PersistentCollection {#8597 …}
      #translationsCache: [
        "fr_FR" => App\Entity\Product\ProductTranslation {#8598
          #locale: "fr_FR"
          #translatable: App\Entity\Product\Product {#8581}
          #id: 2858
          #name: "Dérouleur mural Contura Emsa"
          #slug: "derouleur-mural-contura-emsa-2182"
          #description: """
            <div class="col is-12"><ul>\r\n
                <li>Technique de coupe brevet&eacute;e </li>\r\n
                <li>Fonction de coupe garantie dans les deux sens </li>\r\n
                <li>Remplacement simple des rouleaux </li>\r\n
            </ul></div><h1>Description Dérouleur mural Contura Emsa</h1><div class="col is-12"><p>Le d&eacute;rouleur mural EMSA&nbsp;assure une coupe parfaite et nette du papier aluminium, du film alimentaire et du papier sulfuris&eacute;, ceci dans les deux sens (de gauche &agrave; droite et de droite &agrave; gauche). Il&nbsp;garantit une manipulation s&ucirc;re gr&acirc;ce aux molettes de coupe masqu&eacute;es et une utilisation facile gr&acirc;ce &agrave; la fixation automatique de la feuille lors de la coupe. Il&nbsp;se recharge facilement et s'utilise &eacute;galement sans le support de rouleaux essuie-tout.</p></div><h1>Caractéristiques Dérouleur mural Contura Emsa</h1><div class="col is-12"><span style="font-size: 12px;">Pr&eacute;vu pour 3 rouleaux : film alimentaire, papier alu et essuie-tout.&nbsp;</span>Largeur : 40 cm. Hauteur : 16.5 cm. Profondeur maxi : 9.5 cm. Inox 18/10 et ABS noir. Technique de coupe brevet&eacute;e. Vendu sans rouleaux.</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 {#8600 …}
      #channels: Doctrine\ORM\PersistentCollection {#8586 …}
      #mainTaxon: App\Entity\Taxonomy\Taxon {#7528 …}
      #reviews: Doctrine\ORM\PersistentCollection {#8582 …}
      #averageRating: 0.0
      #images: Doctrine\ORM\PersistentCollection {#8584 …}
      #productType: null
    }
    "class" => "w-100 h-100 object-fit-cover"
  ]
}
sylius_shop:catalog_promotions
[Anonymous]
118.0 MiB 0.73 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29589
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29580 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29656 …}
    +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 {#29525 …}
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#29533
    #collection: Doctrine\Common\Collections\ArrayCollection {#29542 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#29521 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#37590 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#37592 …}
  }
  "withDescription" => false
]
Attributes
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29589
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29580 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29656 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29577 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => "Dérouleur mural Contura Emsa"
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#29533
    #collection: Doctrine\Common\Collections\ArrayCollection {#29542 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#29521 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#37590 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#37592 …}
  }
  "withDescription" => false
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#29660
  -props: [
    "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29589
      +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29580 …}
      +context: Sylius\TwigHooks\Bag\DataBag {#29656 …}
      +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 {#29525 …}
    "applied_promotions" => Doctrine\ORM\PersistentCollection {#29533
      #collection: Doctrine\Common\Collections\ArrayCollection {#29542 …}
      #initialized: true
      -snapshot: []
      -owner: App\Entity\Channel\ChannelPricing {#29521 …}
      -association: Symfony\Component\VarDumper\Caster\CutStub {#37590 …}
      -backRefFieldName: null
      -isDirty: false
      -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
      -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#37592 …}
    }
    "withDescription" => false
  ]
}
sylius_shop:product:card:price Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent 118.0 MiB 0.14 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29710
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29701 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29708 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29709 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#29525 …}
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Attributes
[
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent {#29713
  +variant: App\Entity\Product\ProductVariant {#29525 …}
  +price: "55,00\u{A0}"
  +originalPrice: "55,00\u{A0}"
  +hasDiscount: false
  #productVariantPricesCalculator: Sylius\Component\Core\Calculator\ProductVariantPriceCalculator {#5465 …}
  #moneyFormatter: Sylius\Bundle\MoneyBundle\Formatter\MoneyFormatter {#9008 …}
  #channelContext: Sylius\Component\Channel\Context\CachedPerRequestChannelContext {#4203 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  #currencyContext: Sylius\Component\Core\Currency\Context\ChannelAwareCurrencyContext {#12438 …}
  #currencyConverter: Sylius\Component\Currency\Converter\CurrencyConverter {#9005 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29710
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29701 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29708 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29709 …}
    +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 118.0 MiB 4.90 ms
Input props
[
  "product" => App\Entity\Product\Product {#8604
    #id: 2859
    #code: "derouleur-mural-superline-emsa-2183"
    #attributes: Doctrine\ORM\PersistentCollection {#8611 …}
    #variants: Doctrine\ORM\PersistentCollection {#8613 …}
    #options: Doctrine\ORM\PersistentCollection {#8617 …}
    #associations: Doctrine\ORM\PersistentCollection {#8615 …}
    #createdAt: DateTime @1758632673 {#8602
      date: 2025-09-23 21:04:33.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632673 {#8603
      date: 2025-09-23 21:04:33.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8620 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8621
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8604}
        #id: 2859
        #name: "Dérouleur mural Superline Emsa"
        #slug: "derouleur-mural-superline-emsa-2183"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Technique de coupe brevet&eacute;e </li>\n
          <li>Fonction de coupe garantie dans les deux sens </li>\n
          <li>Remplacement simple des rouleaux </li>\n
          <li><strong>Fabriqu&eacute; en Allemagne.</strong></li>\n
          </ul></div><h1>Description Dérouleur mural Superline Emsa</h1><div class="col is-12"><p>Le d&eacute;rouleur mural EMSA&nbsp;assure une coupe parfaite et nette du papier aluminium, du film alimentaire et du papier sulfuris&eacute;, ceci dans les deux sens (de gauche &agrave; droite et de droite &agrave; gauche).<br />Le d&eacute;rouleur mural EMSA garantit une manipulation s&ucirc;re gr&acirc;ce aux molettes de coupe masqu&eacute;es et une utilisation facile gr&acirc;ce &agrave; la fixation automatique de la feuille lors de la coupe.<br />Le d&eacute;rouleur mural EMSA se recharge facilement.</p></div><h1>Caractéristiques Dérouleur mural Superline Emsa</h1><div class="col is-12">Largeur : 40 cm. Hauteur : 16.5 cm. Profondeur maxi : 9.5 cm. PVC. Technique de coupe brevet&eacute;e. Vendu avec essui-tout, papier aluminium et film alimentaire.</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 {#8623 …}
    #channels: Doctrine\ORM\PersistentCollection {#8609 …}
    #mainTaxon: App\Entity\Taxonomy\Taxon {#7528 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8605 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8607 …}
    #productType: null
  }
  "template" => "@SyliusShop/product/common/card.html.twig"
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27652
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27685 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27691 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27678 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
]
Attributes
[
  "template" => "@SyliusShop/product/common/card.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent {#29587
  +product: App\Entity\Product\Product {#8604
    #id: 2859
    #code: "derouleur-mural-superline-emsa-2183"
    #attributes: Doctrine\ORM\PersistentCollection {#8611 …}
    #variants: Doctrine\ORM\PersistentCollection {#8613 …}
    #options: Doctrine\ORM\PersistentCollection {#8617 …}
    #associations: Doctrine\ORM\PersistentCollection {#8615 …}
    #createdAt: DateTime @1758632673 {#8602
      date: 2025-09-23 21:04:33.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632673 {#8603
      date: 2025-09-23 21:04:33.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8620 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8621
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8604}
        #id: 2859
        #name: "Dérouleur mural Superline Emsa"
        #slug: "derouleur-mural-superline-emsa-2183"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Technique de coupe brevet&eacute;e </li>\n
          <li>Fonction de coupe garantie dans les deux sens </li>\n
          <li>Remplacement simple des rouleaux </li>\n
          <li><strong>Fabriqu&eacute; en Allemagne.</strong></li>\n
          </ul></div><h1>Description Dérouleur mural Superline Emsa</h1><div class="col is-12"><p>Le d&eacute;rouleur mural EMSA&nbsp;assure une coupe parfaite et nette du papier aluminium, du film alimentaire et du papier sulfuris&eacute;, ceci dans les deux sens (de gauche &agrave; droite et de droite &agrave; gauche).<br />Le d&eacute;rouleur mural EMSA garantit une manipulation s&ucirc;re gr&acirc;ce aux molettes de coupe masqu&eacute;es et une utilisation facile gr&acirc;ce &agrave; la fixation automatique de la feuille lors de la coupe.<br />Le d&eacute;rouleur mural EMSA se recharge facilement.</p></div><h1>Caractéristiques Dérouleur mural Superline Emsa</h1><div class="col is-12">Largeur : 40 cm. Hauteur : 16.5 cm. Profondeur maxi : 9.5 cm. PVC. Technique de coupe brevet&eacute;e. Vendu avec essui-tout, papier aluminium et film alimentaire.</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 {#8623 …}
    #channels: Doctrine\ORM\PersistentCollection {#8609 …}
    #mainTaxon: App\Entity\Taxonomy\Taxon {#7528 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8605 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8607 …}
    #productType: null
  }
  +variant: App\Entity\Product\ProductVariant {#29776 …}
  +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 {#27652
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27685 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27691 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27678 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
}
sylius_shop:main_image
[Anonymous]
118.0 MiB 0.99 ms
Input props
[
  "product" => App\Entity\Product\Product {#8604
    #id: 2859
    #code: "derouleur-mural-superline-emsa-2183"
    #attributes: Doctrine\ORM\PersistentCollection {#8611 …}
    #variants: Doctrine\ORM\PersistentCollection {#8613 …}
    #options: Doctrine\ORM\PersistentCollection {#8617 …}
    #associations: Doctrine\ORM\PersistentCollection {#8615 …}
    #createdAt: DateTime @1758632673 {#8602
      date: 2025-09-23 21:04:33.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632673 {#8603
      date: 2025-09-23 21:04:33.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8620 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8621
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8604}
        #id: 2859
        #name: "Dérouleur mural Superline Emsa"
        #slug: "derouleur-mural-superline-emsa-2183"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Technique de coupe brevet&eacute;e </li>\n
          <li>Fonction de coupe garantie dans les deux sens </li>\n
          <li>Remplacement simple des rouleaux </li>\n
          <li><strong>Fabriqu&eacute; en Allemagne.</strong></li>\n
          </ul></div><h1>Description Dérouleur mural Superline Emsa</h1><div class="col is-12"><p>Le d&eacute;rouleur mural EMSA&nbsp;assure une coupe parfaite et nette du papier aluminium, du film alimentaire et du papier sulfuris&eacute;, ceci dans les deux sens (de gauche &agrave; droite et de droite &agrave; gauche).<br />Le d&eacute;rouleur mural EMSA garantit une manipulation s&ucirc;re gr&acirc;ce aux molettes de coupe masqu&eacute;es et une utilisation facile gr&acirc;ce &agrave; la fixation automatique de la feuille lors de la coupe.<br />Le d&eacute;rouleur mural EMSA se recharge facilement.</p></div><h1>Caractéristiques Dérouleur mural Superline Emsa</h1><div class="col is-12">Largeur : 40 cm. Hauteur : 16.5 cm. Profondeur maxi : 9.5 cm. PVC. Technique de coupe brevet&eacute;e. Vendu avec essui-tout, papier aluminium et film alimentaire.</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 {#8623 …}
    #channels: Doctrine\ORM\PersistentCollection {#8609 …}
    #mainTaxon: App\Entity\Taxonomy\Taxon {#7528 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8605 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8607 …}
    #productType: null
  }
  "class" => "w-100 h-100 object-fit-cover"
]
Attributes
[
  "product" => "Dérouleur mural Superline Emsa"
  "class" => "w-100 h-100 object-fit-cover"
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#29850
  -props: [
    "product" => App\Entity\Product\Product {#8604
      #id: 2859
      #code: "derouleur-mural-superline-emsa-2183"
      #attributes: Doctrine\ORM\PersistentCollection {#8611 …}
      #variants: Doctrine\ORM\PersistentCollection {#8613 …}
      #options: Doctrine\ORM\PersistentCollection {#8617 …}
      #associations: Doctrine\ORM\PersistentCollection {#8615 …}
      #createdAt: DateTime @1758632673 {#8602
        date: 2025-09-23 21:04:33.0 PRC (+08:00)
      }
      #updatedAt: DateTime @1758632673 {#8603
        date: 2025-09-23 21:04:33.0 PRC (+08:00)
      }
      #enabled: true
      #translations: Doctrine\ORM\PersistentCollection {#8620 …}
      #translationsCache: [
        "fr_FR" => App\Entity\Product\ProductTranslation {#8621
          #locale: "fr_FR"
          #translatable: App\Entity\Product\Product {#8604}
          #id: 2859
          #name: "Dérouleur mural Superline Emsa"
          #slug: "derouleur-mural-superline-emsa-2183"
          #description: """
            <div class="col is-12"><ul>\n
            <li>Technique de coupe brevet&eacute;e </li>\n
            <li>Fonction de coupe garantie dans les deux sens </li>\n
            <li>Remplacement simple des rouleaux </li>\n
            <li><strong>Fabriqu&eacute; en Allemagne.</strong></li>\n
            </ul></div><h1>Description Dérouleur mural Superline Emsa</h1><div class="col is-12"><p>Le d&eacute;rouleur mural EMSA&nbsp;assure une coupe parfaite et nette du papier aluminium, du film alimentaire et du papier sulfuris&eacute;, ceci dans les deux sens (de gauche &agrave; droite et de droite &agrave; gauche).<br />Le d&eacute;rouleur mural EMSA garantit une manipulation s&ucirc;re gr&acirc;ce aux molettes de coupe masqu&eacute;es et une utilisation facile gr&acirc;ce &agrave; la fixation automatique de la feuille lors de la coupe.<br />Le d&eacute;rouleur mural EMSA se recharge facilement.</p></div><h1>Caractéristiques Dérouleur mural Superline Emsa</h1><div class="col is-12">Largeur : 40 cm. Hauteur : 16.5 cm. Profondeur maxi : 9.5 cm. PVC. Technique de coupe brevet&eacute;e. Vendu avec essui-tout, papier aluminium et film alimentaire.</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 {#8623 …}
      #channels: Doctrine\ORM\PersistentCollection {#8609 …}
      #mainTaxon: App\Entity\Taxonomy\Taxon {#7528 …}
      #reviews: Doctrine\ORM\PersistentCollection {#8605 …}
      #averageRating: 0.0
      #images: Doctrine\ORM\PersistentCollection {#8607 …}
      #productType: null
    }
    "class" => "w-100 h-100 object-fit-cover"
  ]
}
sylius_shop:catalog_promotions
[Anonymous]
118.0 MiB 0.76 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29843
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29834 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29901 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29831 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#29776 …}
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#29784
    #collection: Doctrine\Common\Collections\ArrayCollection {#29796 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#29772 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#37604 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#37606 …}
  }
  "withDescription" => false
]
Attributes
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29843
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29834 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29901 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29831 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => "Dérouleur mural Superline Emsa"
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#29784
    #collection: Doctrine\Common\Collections\ArrayCollection {#29796 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#29772 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#37604 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#37606 …}
  }
  "withDescription" => false
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#29905
  -props: [
    "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29843
      +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29834 …}
      +context: Sylius\TwigHooks\Bag\DataBag {#29901 …}
      +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29831 …}
      +prefixes: [
        "sylius_shop.product.index.content.body.main.card.prices"
        "sylius_shop.shared.product.card.prices"
      ]
    }
    "variant" => App\Entity\Product\ProductVariant {#29776 …}
    "applied_promotions" => Doctrine\ORM\PersistentCollection {#29784
      #collection: Doctrine\Common\Collections\ArrayCollection {#29796 …}
      #initialized: true
      -snapshot: []
      -owner: App\Entity\Channel\ChannelPricing {#29772 …}
      -association: Symfony\Component\VarDumper\Caster\CutStub {#37604 …}
      -backRefFieldName: null
      -isDirty: false
      -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
      -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#37606 …}
    }
    "withDescription" => false
  ]
}
sylius_shop:product:card:price Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent 118.0 MiB 0.14 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29955
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29946 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29953 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29954 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#29776 …}
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Attributes
[
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent {#29958
  +variant: App\Entity\Product\ProductVariant {#29776 …}
  +price: "27,00\u{A0}"
  +originalPrice: "27,00\u{A0}"
  +hasDiscount: false
  #productVariantPricesCalculator: Sylius\Component\Core\Calculator\ProductVariantPriceCalculator {#5465 …}
  #moneyFormatter: Sylius\Bundle\MoneyBundle\Formatter\MoneyFormatter {#9008 …}
  #channelContext: Sylius\Component\Channel\Context\CachedPerRequestChannelContext {#4203 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  #currencyContext: Sylius\Component\Core\Currency\Context\ChannelAwareCurrencyContext {#12438 …}
  #currencyConverter: Sylius\Component\Currency\Converter\CurrencyConverter {#9005 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29955
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29946 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29953 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29954 …}
    +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 118.0 MiB 5.11 ms
Input props
[
  "product" => App\Entity\Product\Product {#8627
    #id: 2860
    #code: "derouleur-coupe-film-emsa-click-cut-2532"
    #attributes: Doctrine\ORM\PersistentCollection {#8634 …}
    #variants: Doctrine\ORM\PersistentCollection {#8636 …}
    #options: Doctrine\ORM\PersistentCollection {#8640 …}
    #associations: Doctrine\ORM\PersistentCollection {#8638 …}
    #createdAt: DateTime @1758632673 {#8625
      date: 2025-09-23 21:04:33.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632673 {#8626
      date: 2025-09-23 21:04:33.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8643 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8644
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8627}
        #id: 2860
        #name: "Dérouleur coupe film EMSA Click& Cut"
        #slug: "derouleur-coupe-film-emsa-click-cut-2532"
        #description: """
          <div class="col is-12"><ul>\r\n
              <li>Coupe proprement et efficacement.</li>\r\n
              <li>Sans risque de blessure gr&acirc;ce au syst&egrave;me de verrouillage.</li>\r\n
              <li>Encombrement r&eacute;duit, se range dans un tiroir.<br /></li>\r\n
          </ul></div><h1>Description dérouleur coupe film EMSA Click& Cut</h1><div class="col is-12">Le d&eacute;rouleur coupe film EMSA Click&amp; Cut permet de couper efficacement papier aluminium et film alimentaire. Longueur 30,5 cm. Pr&eacute;vu pour des rouleaux de 30 m&egrave;tres (papier alu). Garantie 2 ans.</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 {#8646 …}
    #channels: Doctrine\ORM\PersistentCollection {#8632 …}
    #mainTaxon: App\Entity\Taxonomy\Taxon {#7528 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8628 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8630 …}
    #productType: null
  }
  "template" => "@SyliusShop/product/common/card.html.twig"
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27652
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27685 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27691 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27678 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
]
Attributes
[
  "template" => "@SyliusShop/product/common/card.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent {#29841
  +product: App\Entity\Product\Product {#8627
    #id: 2860
    #code: "derouleur-coupe-film-emsa-click-cut-2532"
    #attributes: Doctrine\ORM\PersistentCollection {#8634 …}
    #variants: Doctrine\ORM\PersistentCollection {#8636 …}
    #options: Doctrine\ORM\PersistentCollection {#8640 …}
    #associations: Doctrine\ORM\PersistentCollection {#8638 …}
    #createdAt: DateTime @1758632673 {#8625
      date: 2025-09-23 21:04:33.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632673 {#8626
      date: 2025-09-23 21:04:33.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8643 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8644
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8627}
        #id: 2860
        #name: "Dérouleur coupe film EMSA Click& Cut"
        #slug: "derouleur-coupe-film-emsa-click-cut-2532"
        #description: """
          <div class="col is-12"><ul>\r\n
              <li>Coupe proprement et efficacement.</li>\r\n
              <li>Sans risque de blessure gr&acirc;ce au syst&egrave;me de verrouillage.</li>\r\n
              <li>Encombrement r&eacute;duit, se range dans un tiroir.<br /></li>\r\n
          </ul></div><h1>Description dérouleur coupe film EMSA Click& Cut</h1><div class="col is-12">Le d&eacute;rouleur coupe film EMSA Click&amp; Cut permet de couper efficacement papier aluminium et film alimentaire. Longueur 30,5 cm. Pr&eacute;vu pour des rouleaux de 30 m&egrave;tres (papier alu). Garantie 2 ans.</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 {#8646 …}
    #channels: Doctrine\ORM\PersistentCollection {#8632 …}
    #mainTaxon: App\Entity\Taxonomy\Taxon {#7528 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8628 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8630 …}
    #productType: null
  }
  +variant: App\Entity\Product\ProductVariant {#30021 …}
  +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 {#27652
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27685 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27691 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27678 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
}
sylius_shop:main_image
[Anonymous]
118.0 MiB 0.91 ms
Input props
[
  "product" => App\Entity\Product\Product {#8627
    #id: 2860
    #code: "derouleur-coupe-film-emsa-click-cut-2532"
    #attributes: Doctrine\ORM\PersistentCollection {#8634 …}
    #variants: Doctrine\ORM\PersistentCollection {#8636 …}
    #options: Doctrine\ORM\PersistentCollection {#8640 …}
    #associations: Doctrine\ORM\PersistentCollection {#8638 …}
    #createdAt: DateTime @1758632673 {#8625
      date: 2025-09-23 21:04:33.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632673 {#8626
      date: 2025-09-23 21:04:33.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8643 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8644
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8627}
        #id: 2860
        #name: "Dérouleur coupe film EMSA Click& Cut"
        #slug: "derouleur-coupe-film-emsa-click-cut-2532"
        #description: """
          <div class="col is-12"><ul>\r\n
              <li>Coupe proprement et efficacement.</li>\r\n
              <li>Sans risque de blessure gr&acirc;ce au syst&egrave;me de verrouillage.</li>\r\n
              <li>Encombrement r&eacute;duit, se range dans un tiroir.<br /></li>\r\n
          </ul></div><h1>Description dérouleur coupe film EMSA Click& Cut</h1><div class="col is-12">Le d&eacute;rouleur coupe film EMSA Click&amp; Cut permet de couper efficacement papier aluminium et film alimentaire. Longueur 30,5 cm. Pr&eacute;vu pour des rouleaux de 30 m&egrave;tres (papier alu). Garantie 2 ans.</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 {#8646 …}
    #channels: Doctrine\ORM\PersistentCollection {#8632 …}
    #mainTaxon: App\Entity\Taxonomy\Taxon {#7528 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8628 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8630 …}
    #productType: null
  }
  "class" => "w-100 h-100 object-fit-cover"
]
Attributes
[
  "product" => "Dérouleur coupe film EMSA Click& Cut"
  "class" => "w-100 h-100 object-fit-cover"
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#30095
  -props: [
    "product" => App\Entity\Product\Product {#8627
      #id: 2860
      #code: "derouleur-coupe-film-emsa-click-cut-2532"
      #attributes: Doctrine\ORM\PersistentCollection {#8634 …}
      #variants: Doctrine\ORM\PersistentCollection {#8636 …}
      #options: Doctrine\ORM\PersistentCollection {#8640 …}
      #associations: Doctrine\ORM\PersistentCollection {#8638 …}
      #createdAt: DateTime @1758632673 {#8625
        date: 2025-09-23 21:04:33.0 PRC (+08:00)
      }
      #updatedAt: DateTime @1758632673 {#8626
        date: 2025-09-23 21:04:33.0 PRC (+08:00)
      }
      #enabled: true
      #translations: Doctrine\ORM\PersistentCollection {#8643 …}
      #translationsCache: [
        "fr_FR" => App\Entity\Product\ProductTranslation {#8644
          #locale: "fr_FR"
          #translatable: App\Entity\Product\Product {#8627}
          #id: 2860
          #name: "Dérouleur coupe film EMSA Click& Cut"
          #slug: "derouleur-coupe-film-emsa-click-cut-2532"
          #description: """
            <div class="col is-12"><ul>\r\n
                <li>Coupe proprement et efficacement.</li>\r\n
                <li>Sans risque de blessure gr&acirc;ce au syst&egrave;me de verrouillage.</li>\r\n
                <li>Encombrement r&eacute;duit, se range dans un tiroir.<br /></li>\r\n
            </ul></div><h1>Description dérouleur coupe film EMSA Click& Cut</h1><div class="col is-12">Le d&eacute;rouleur coupe film EMSA Click&amp; Cut permet de couper efficacement papier aluminium et film alimentaire. Longueur 30,5 cm. Pr&eacute;vu pour des rouleaux de 30 m&egrave;tres (papier alu). Garantie 2 ans.</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 {#8646 …}
      #channels: Doctrine\ORM\PersistentCollection {#8632 …}
      #mainTaxon: App\Entity\Taxonomy\Taxon {#7528 …}
      #reviews: Doctrine\ORM\PersistentCollection {#8628 …}
      #averageRating: 0.0
      #images: Doctrine\ORM\PersistentCollection {#8630 …}
      #productType: null
    }
    "class" => "w-100 h-100 object-fit-cover"
  ]
}
sylius_shop:catalog_promotions
[Anonymous]
118.0 MiB 0.73 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30166
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30079 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30155 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30076 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#30021 …}
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#30029
    #collection: Doctrine\Common\Collections\ArrayCollection {#30041 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#30017 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#37618 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#37620 …}
  }
  "withDescription" => false
]
Attributes
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30166
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30079 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30155 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30076 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => "Dérouleur coupe film EMSA Click& Cut"
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#30029
    #collection: Doctrine\Common\Collections\ArrayCollection {#30041 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#30017 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#37618 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#37620 …}
  }
  "withDescription" => false
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#30171
  -props: [
    "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30166
      +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30079 …}
      +context: Sylius\TwigHooks\Bag\DataBag {#30155 …}
      +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30076 …}
      +prefixes: [
        "sylius_shop.product.index.content.body.main.card.prices"
        "sylius_shop.shared.product.card.prices"
      ]
    }
    "variant" => App\Entity\Product\ProductVariant {#30021 …}
    "applied_promotions" => Doctrine\ORM\PersistentCollection {#30029
      #collection: Doctrine\Common\Collections\ArrayCollection {#30041 …}
      #initialized: true
      -snapshot: []
      -owner: App\Entity\Channel\ChannelPricing {#30017 …}
      -association: Symfony\Component\VarDumper\Caster\CutStub {#37618 …}
      -backRefFieldName: null
      -isDirty: false
      -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
      -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#37620 …}
    }
    "withDescription" => false
  ]
}
sylius_shop:product:card:price Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent 118.0 MiB 0.14 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30220
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30211 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30218 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30219 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#30021 …}
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Attributes
[
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent {#30223
  +variant: App\Entity\Product\ProductVariant {#30021 …}
  +price: "22,00\u{A0}"
  +originalPrice: "22,00\u{A0}"
  +hasDiscount: false
  #productVariantPricesCalculator: Sylius\Component\Core\Calculator\ProductVariantPriceCalculator {#5465 …}
  #moneyFormatter: Sylius\Bundle\MoneyBundle\Formatter\MoneyFormatter {#9008 …}
  #channelContext: Sylius\Component\Channel\Context\CachedPerRequestChannelContext {#4203 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  #currencyContext: Sylius\Component\Core\Currency\Context\ChannelAwareCurrencyContext {#12438 …}
  #currencyConverter: Sylius\Component\Currency\Converter\CurrencyConverter {#9005 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30220
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30211 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30218 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30219 …}
    +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 118.0 MiB 4.86 ms
Input props
[
  "product" => App\Entity\Product\Product {#8650
    #id: 2861
    #code: "derouleur-essuie-tout-oxo-8157"
    #attributes: Doctrine\ORM\PersistentCollection {#8657 …}
    #variants: Doctrine\ORM\PersistentCollection {#8659 …}
    #options: Doctrine\ORM\PersistentCollection {#8663 …}
    #associations: Doctrine\ORM\PersistentCollection {#8661 …}
    #createdAt: DateTime @1758632673 {#8648
      date: 2025-09-23 21:04:33.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632673 {#8649
      date: 2025-09-23 21:04:33.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8666 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8667
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8650}
        #id: 2861
        #name: "Dérouleur Essuie-Tout Oxo"
        #slug: "derouleur-essuie-tout-oxo-8157"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Utilisation d'une seule main, confort d'utilisation.</li>\n
          <li>Bras de tension pour le papier, efficacit&eacute;.</li>\n
          <li>Base anti-d&eacute;rapante, stabilit&eacute;.</li>\n
          </ul></div><h1>Descriptif Dérouleur Essuie-Tout Oxo</h1><div class="col is-12">Le d&eacute;rouleur essuie-tout Oxo sera appr&eacute;ci&eacute; au quotidien gr&acirc;ce &agrave; sa grande praticit&eacute;. A la fois stable gr&acirc;ce &agrave; son poids et muni d'un bras de tension pour le papier, il est facilement utilisable d'une seule main. Pratique lorsque l'on cuisine et que l'on a les mains sales ou encombr&eacute;es ! Le bouton situ&eacute; sur la partie sup&eacute;rieure permet de transporter le d&eacute;rouleur sans toucher le papier.</div><h1>Caractéristiques Dérouleur Essuie-Tout Oxo</h1><div class="col is-12">- Acier inoxydable.<br />- Bras de tension pour le papier.<br />- Lourd et stable.<br />- Utilisation d'une seule main.<br />- Garantie : 2 ans.&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 {#8669 …}
    #channels: Doctrine\ORM\PersistentCollection {#8655 …}
    #mainTaxon: App\Entity\Taxonomy\Taxon {#7528 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8651 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8653 …}
    #productType: null
  }
  "template" => "@SyliusShop/product/common/card.html.twig"
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27652
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27685 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27691 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27678 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
]
Attributes
[
  "template" => "@SyliusShop/product/common/card.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent {#30086
  +product: App\Entity\Product\Product {#8650
    #id: 2861
    #code: "derouleur-essuie-tout-oxo-8157"
    #attributes: Doctrine\ORM\PersistentCollection {#8657 …}
    #variants: Doctrine\ORM\PersistentCollection {#8659 …}
    #options: Doctrine\ORM\PersistentCollection {#8663 …}
    #associations: Doctrine\ORM\PersistentCollection {#8661 …}
    #createdAt: DateTime @1758632673 {#8648
      date: 2025-09-23 21:04:33.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632673 {#8649
      date: 2025-09-23 21:04:33.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8666 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8667
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8650}
        #id: 2861
        #name: "Dérouleur Essuie-Tout Oxo"
        #slug: "derouleur-essuie-tout-oxo-8157"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Utilisation d'une seule main, confort d'utilisation.</li>\n
          <li>Bras de tension pour le papier, efficacit&eacute;.</li>\n
          <li>Base anti-d&eacute;rapante, stabilit&eacute;.</li>\n
          </ul></div><h1>Descriptif Dérouleur Essuie-Tout Oxo</h1><div class="col is-12">Le d&eacute;rouleur essuie-tout Oxo sera appr&eacute;ci&eacute; au quotidien gr&acirc;ce &agrave; sa grande praticit&eacute;. A la fois stable gr&acirc;ce &agrave; son poids et muni d'un bras de tension pour le papier, il est facilement utilisable d'une seule main. Pratique lorsque l'on cuisine et que l'on a les mains sales ou encombr&eacute;es ! Le bouton situ&eacute; sur la partie sup&eacute;rieure permet de transporter le d&eacute;rouleur sans toucher le papier.</div><h1>Caractéristiques Dérouleur Essuie-Tout Oxo</h1><div class="col is-12">- Acier inoxydable.<br />- Bras de tension pour le papier.<br />- Lourd et stable.<br />- Utilisation d'une seule main.<br />- Garantie : 2 ans.&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 {#8669 …}
    #channels: Doctrine\ORM\PersistentCollection {#8655 …}
    #mainTaxon: App\Entity\Taxonomy\Taxon {#7528 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8651 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8653 …}
    #productType: null
  }
  +variant: App\Entity\Product\ProductVariant {#30286 …}
  +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 {#27652
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27685 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27691 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27678 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
}
sylius_shop:main_image
[Anonymous]
118.0 MiB 0.93 ms
Input props
[
  "product" => App\Entity\Product\Product {#8650
    #id: 2861
    #code: "derouleur-essuie-tout-oxo-8157"
    #attributes: Doctrine\ORM\PersistentCollection {#8657 …}
    #variants: Doctrine\ORM\PersistentCollection {#8659 …}
    #options: Doctrine\ORM\PersistentCollection {#8663 …}
    #associations: Doctrine\ORM\PersistentCollection {#8661 …}
    #createdAt: DateTime @1758632673 {#8648
      date: 2025-09-23 21:04:33.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632673 {#8649
      date: 2025-09-23 21:04:33.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8666 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8667
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8650}
        #id: 2861
        #name: "Dérouleur Essuie-Tout Oxo"
        #slug: "derouleur-essuie-tout-oxo-8157"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Utilisation d'une seule main, confort d'utilisation.</li>\n
          <li>Bras de tension pour le papier, efficacit&eacute;.</li>\n
          <li>Base anti-d&eacute;rapante, stabilit&eacute;.</li>\n
          </ul></div><h1>Descriptif Dérouleur Essuie-Tout Oxo</h1><div class="col is-12">Le d&eacute;rouleur essuie-tout Oxo sera appr&eacute;ci&eacute; au quotidien gr&acirc;ce &agrave; sa grande praticit&eacute;. A la fois stable gr&acirc;ce &agrave; son poids et muni d'un bras de tension pour le papier, il est facilement utilisable d'une seule main. Pratique lorsque l'on cuisine et que l'on a les mains sales ou encombr&eacute;es ! Le bouton situ&eacute; sur la partie sup&eacute;rieure permet de transporter le d&eacute;rouleur sans toucher le papier.</div><h1>Caractéristiques Dérouleur Essuie-Tout Oxo</h1><div class="col is-12">- Acier inoxydable.<br />- Bras de tension pour le papier.<br />- Lourd et stable.<br />- Utilisation d'une seule main.<br />- Garantie : 2 ans.&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 {#8669 …}
    #channels: Doctrine\ORM\PersistentCollection {#8655 …}
    #mainTaxon: App\Entity\Taxonomy\Taxon {#7528 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8651 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8653 …}
    #productType: null
  }
  "class" => "w-100 h-100 object-fit-cover"
]
Attributes
[
  "product" => "Dérouleur Essuie-Tout Oxo"
  "class" => "w-100 h-100 object-fit-cover"
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#30357
  -props: [
    "product" => App\Entity\Product\Product {#8650
      #id: 2861
      #code: "derouleur-essuie-tout-oxo-8157"
      #attributes: Doctrine\ORM\PersistentCollection {#8657 …}
      #variants: Doctrine\ORM\PersistentCollection {#8659 …}
      #options: Doctrine\ORM\PersistentCollection {#8663 …}
      #associations: Doctrine\ORM\PersistentCollection {#8661 …}
      #createdAt: DateTime @1758632673 {#8648
        date: 2025-09-23 21:04:33.0 PRC (+08:00)
      }
      #updatedAt: DateTime @1758632673 {#8649
        date: 2025-09-23 21:04:33.0 PRC (+08:00)
      }
      #enabled: true
      #translations: Doctrine\ORM\PersistentCollection {#8666 …}
      #translationsCache: [
        "fr_FR" => App\Entity\Product\ProductTranslation {#8667
          #locale: "fr_FR"
          #translatable: App\Entity\Product\Product {#8650}
          #id: 2861
          #name: "Dérouleur Essuie-Tout Oxo"
          #slug: "derouleur-essuie-tout-oxo-8157"
          #description: """
            <div class="col is-12"><ul>\n
            <li>Utilisation d'une seule main, confort d'utilisation.</li>\n
            <li>Bras de tension pour le papier, efficacit&eacute;.</li>\n
            <li>Base anti-d&eacute;rapante, stabilit&eacute;.</li>\n
            </ul></div><h1>Descriptif Dérouleur Essuie-Tout Oxo</h1><div class="col is-12">Le d&eacute;rouleur essuie-tout Oxo sera appr&eacute;ci&eacute; au quotidien gr&acirc;ce &agrave; sa grande praticit&eacute;. A la fois stable gr&acirc;ce &agrave; son poids et muni d'un bras de tension pour le papier, il est facilement utilisable d'une seule main. Pratique lorsque l'on cuisine et que l'on a les mains sales ou encombr&eacute;es ! Le bouton situ&eacute; sur la partie sup&eacute;rieure permet de transporter le d&eacute;rouleur sans toucher le papier.</div><h1>Caractéristiques Dérouleur Essuie-Tout Oxo</h1><div class="col is-12">- Acier inoxydable.<br />- Bras de tension pour le papier.<br />- Lourd et stable.<br />- Utilisation d'une seule main.<br />- Garantie : 2 ans.&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 {#8669 …}
      #channels: Doctrine\ORM\PersistentCollection {#8655 …}
      #mainTaxon: App\Entity\Taxonomy\Taxon {#7528 …}
      #reviews: Doctrine\ORM\PersistentCollection {#8651 …}
      #averageRating: 0.0
      #images: Doctrine\ORM\PersistentCollection {#8653 …}
      #productType: null
    }
    "class" => "w-100 h-100 object-fit-cover"
  ]
}
sylius_shop:catalog_promotions
[Anonymous]
118.0 MiB 0.74 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30350
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30341 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30417 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30338 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#30286 …}
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#30294
    #collection: Doctrine\Common\Collections\ArrayCollection {#30303 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#30282 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#37632 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#37634 …}
  }
  "withDescription" => false
]
Attributes
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30350
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30341 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30417 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30338 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => "Dérouleur Essuie-Tout Oxo"
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#30294
    #collection: Doctrine\Common\Collections\ArrayCollection {#30303 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#30282 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#37632 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#37634 …}
  }
  "withDescription" => false
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#30421
  -props: [
    "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30350
      +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30341 …}
      +context: Sylius\TwigHooks\Bag\DataBag {#30417 …}
      +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30338 …}
      +prefixes: [
        "sylius_shop.product.index.content.body.main.card.prices"
        "sylius_shop.shared.product.card.prices"
      ]
    }
    "variant" => App\Entity\Product\ProductVariant {#30286 …}
    "applied_promotions" => Doctrine\ORM\PersistentCollection {#30294
      #collection: Doctrine\Common\Collections\ArrayCollection {#30303 …}
      #initialized: true
      -snapshot: []
      -owner: App\Entity\Channel\ChannelPricing {#30282 …}
      -association: Symfony\Component\VarDumper\Caster\CutStub {#37632 …}
      -backRefFieldName: null
      -isDirty: false
      -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
      -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#37634 …}
    }
    "withDescription" => false
  ]
}
sylius_shop:product:card:price Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent 118.0 MiB 0.14 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30471
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30462 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30469 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30470 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#30286 …}
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Attributes
[
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent {#30474
  +variant: App\Entity\Product\ProductVariant {#30286 …}
  +price: "35,00\u{A0}"
  +originalPrice: "35,00\u{A0}"
  +hasDiscount: false
  #productVariantPricesCalculator: Sylius\Component\Core\Calculator\ProductVariantPriceCalculator {#5465 …}
  #moneyFormatter: Sylius\Bundle\MoneyBundle\Formatter\MoneyFormatter {#9008 …}
  #channelContext: Sylius\Component\Channel\Context\CachedPerRequestChannelContext {#4203 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  #currencyContext: Sylius\Component\Core\Currency\Context\ChannelAwareCurrencyContext {#12438 …}
  #currencyConverter: Sylius\Component\Currency\Converter\CurrencyConverter {#9005 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30471
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30462 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30469 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30470 …}
    +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 118.0 MiB 2.01 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27365
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#12503 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27387 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#12513 …}
    +prefixes: [
      "sylius_shop.base.offcanvas"
    ]
  }
  "template" => "@SyliusShop/shared/layout/base/offcanvas/cart.html.twig"
]
Attributes
[]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Cart\WidgetComponent {#30751
  +cart: App\Entity\Order\Order {#13417 …}
  #cartContext: Sylius\Component\Order\Context\CompositeCartContext {#1322 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27365
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#12503 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27387 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#12513 …}
    +prefixes: [
      "sylius_shop.base.offcanvas"
    ]
  }
  +template: "@SyliusShop/shared/layout/base/offcanvas/cart.html.twig"
  #repository: Sylius\Bundle\CoreBundle\Doctrine\ORM\OrderRepository {#4980 …}
}