GET https://sylius-cuisinstore.preprod.eu/fr_FR/taxons/coin-cuisine-cocktails-vins-pour-les-fetes-1504

Components

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

Components

Name Metadata Render Count Render Time
sylius_shop:product:card
"Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent"
@SyliusUi/components/default.html.twig
9 88.52ms
sylius_shop:main_image
[Anonymous]
@SyliusShop/shared/components/main_image.html.twig
9 17.41ms
sylius_shop:catalog_promotions
[Anonymous]
@SyliusShop/shared/components/catalog_promotions.html.twig
9 8.07ms
sylius_shop:product:card:price
"Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent"
@SyliusUi/components/default.html.twig
9 1.64ms
sylius_shop:common:currency_switcher
"Sylius\Bundle\ShopBundle\Twig\Component\Common\CurrencySwitcherComponent"
@SyliusUi/components/default.html.twig
1 1.13ms
sylius_shop:common:locale_switcher
"Sylius\Bundle\ShopBundle\Twig\Component\Common\LocaleSwitcherComponent"
@SyliusUi/components/default.html.twig
1 0.72ms
sylius_shop:cart:widget
"Sylius\Bundle\ShopBundle\Twig\Component\Cart\WidgetComponent"
@SyliusUi/components/default.html.twig
1 9.37ms
sylius_shop:common:taxon_menu
"Sylius\Bundle\ShopBundle\Twig\Component\Common\TaxonMenuComponent"
@SyliusUi/components/default.html.twig
1 15.59ms
sylius_shop:product:show:breadcrumbs
"Sylius\Bundle\ShopBundle\Twig\Component\Product\BreadcrumbComponent"
@SyliusUi/components/default.html.twig
1 1.12ms
sylius_shop:product:show:taxonomy
"Sylius\Bundle\ShopBundle\Twig\Component\Product\BreadcrumbComponent"
@SyliusUi/components/default.html.twig
1 0.80ms
sylius_shop:product:show:header
"Sylius\Bundle\ShopBundle\Twig\Component\Product\BreadcrumbComponent"
@SyliusUi/components/default.html.twig
1 1.93ms
sylius_shop:cart:widget:offcanvas
"Sylius\Bundle\ShopBundle\Twig\Component\Cart\WidgetComponent"
@SyliusUi/components/default.html.twig
1 2.14ms

Render calls

sylius_shop:common:currency_switcher Sylius\Bundle\ShopBundle\Twig\Component\Common\CurrencySwitcherComponent 114.0 MiB 1.13 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#12603
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#12596 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#12602 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#12601 …}
    +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 {#13223
  #channelContext: Sylius\Component\Channel\Context\CachedPerRequestChannelContext {#4203 …}
  #currencyContext: Sylius\Component\Core\Currency\Context\ChannelAwareCurrencyContext {#12494 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#12603
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#12596 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#12602 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#12601 …}
    +prefixes: [
      "sylius_shop.base.header.top_bar"
    ]
  }
}
sylius_shop:common:locale_switcher Sylius\Bundle\ShopBundle\Twig\Component\Common\LocaleSwitcherComponent 114.0 MiB 0.72 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#13300
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#13296 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#13298 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#13299 …}
    +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 {#13309
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  #localeProvider: Sylius\Component\Core\Provider\ChannelBasedLocaleProvider {#4528 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#13300
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#13296 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#13298 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#13299 …}
    +prefixes: [
      "sylius_shop.base.header.top_bar"
    ]
  }
}
sylius_shop:cart:widget Sylius\Bundle\ShopBundle\Twig\Component\Cart\WidgetComponent 114.0 MiB 9.37 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#13391
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#13370 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#13390 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#13389 …}
    +prefixes: [
      "sylius_shop.base.header.content"
    ]
  }
  "template" => "@SyliusShop/shared/components/header/cart.html.twig"
]
Attributes
[]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Cart\WidgetComponent {#13406
  +cart: App\Entity\Order\Order {#13473 …}
  #cartContext: Sylius\Component\Order\Context\CompositeCartContext {#1322 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#13391
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#13370 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#13390 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#13389 …}
    +prefixes: [
      "sylius_shop.base.header.content"
    ]
  }
  +template: "@SyliusShop/shared/components/header/cart.html.twig"
  #repository: Sylius\Bundle\CoreBundle\Doctrine\ORM\OrderRepository {#4980 …}
}
sylius_shop:common:taxon_menu Sylius\Bundle\ShopBundle\Twig\Component\Common\TaxonMenuComponent 114.0 MiB 15.59 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#13659
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#13647 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#13653 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#13645 …}
    +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 {#13668
  #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 {#13659
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#13647 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#13653 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#13645 …}
    +prefixes: [
      "sylius_shop.base.header.navbar"
    ]
  }
}
sylius_shop:product:show:breadcrumbs Sylius\Bundle\ShopBundle\Twig\Component\Product\BreadcrumbComponent 114.0 MiB 1.12 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27456
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27452 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27453 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27455 …}
    +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 {#27465
  #requestStack: Symfony\Component\HttpFoundation\RequestStack {#243 …}
  #taxonRepository: App\Repository\TaxonRepository {#7413 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27456
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27452 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27453 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27455 …}
    +prefixes: [
      "sylius_shop.product.index.content"
    ]
  }
}
sylius_shop:product:show:taxonomy Sylius\Bundle\ShopBundle\Twig\Component\Product\BreadcrumbComponent 114.0 MiB 0.80 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27569
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27565 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27566 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27568 …}
    +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 {#27577
  #requestStack: Symfony\Component\HttpFoundation\RequestStack {#243 …}
  #taxonRepository: App\Repository\TaxonRepository {#7413 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27569
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27565 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27566 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27568 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.sidebar"
    ]
  }
}
sylius_shop:product:show:header Sylius\Bundle\ShopBundle\Twig\Component\Product\BreadcrumbComponent 114.0 MiB 1.93 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27640
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27636 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27637 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27639 …}
    +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 {#27648
  #requestStack: Symfony\Component\HttpFoundation\RequestStack {#243 …}
  #taxonRepository: App\Repository\TaxonRepository {#7413 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27640
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27636 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27637 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27639 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
}
sylius_shop:product:card Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent 114.0 MiB 36.03 ms
Input props
[
  "product" => App\Entity\Product\Product {#7995
    #id: 2453
    #code: "porte-verre-a-clipser-tellier-4708"
    #attributes: Doctrine\ORM\PersistentCollection {#8171 …}
    #variants: Doctrine\ORM\PersistentCollection {#8394 …}
    #options: Doctrine\ORM\PersistentCollection {#8522 …}
    #associations: Doctrine\ORM\PersistentCollection {#8462 …}
    #createdAt: DateTime @1758632545 {#7725
      date: 2025-09-23 21:02:25.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632545 {#7770
      date: 2025-09-23 21:02:25.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8521 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8524
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#7995}
        #id: 2453
        #name: "Porte-verre à clipser Tellier"
        #slug: "porte-verre-a-clipser-tellier-4708"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Permet de poser votre verre au bord de l'assiette.</li>\n
          <li>Facile &agrave; ins&eacute;rer.&nbsp;</li>\n
          </ul></div><h1>Description Porte-verre à clipser Tellier</h1><div class="col is-12">Le Porte-verre &agrave; clipser Tellier permet de maintenir efficacement vos verres en bord d'assiette sans risque qu'ils ne se renversent. Id&eacute;al pour vos soir&eacute;es et cocktails...</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 {#8527 …}
    #channels: Doctrine\ORM\PersistentCollection {#8030 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#6651 …}
    #reviews: Doctrine\ORM\PersistentCollection {#7918 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8033 …}
    #productType: null
  }
  "template" => "@SyliusShop/product/common/card.html.twig"
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27705
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27738 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27744 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27731 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
]
Attributes
[
  "template" => "@SyliusShop/product/common/card.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent {#28174
  +product: App\Entity\Product\Product {#7995
    #id: 2453
    #code: "porte-verre-a-clipser-tellier-4708"
    #attributes: Doctrine\ORM\PersistentCollection {#8171 …}
    #variants: Doctrine\ORM\PersistentCollection {#8394 …}
    #options: Doctrine\ORM\PersistentCollection {#8522 …}
    #associations: Doctrine\ORM\PersistentCollection {#8462 …}
    #createdAt: DateTime @1758632545 {#7725
      date: 2025-09-23 21:02:25.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632545 {#7770
      date: 2025-09-23 21:02:25.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8521 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8524
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#7995}
        #id: 2453
        #name: "Porte-verre à clipser Tellier"
        #slug: "porte-verre-a-clipser-tellier-4708"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Permet de poser votre verre au bord de l'assiette.</li>\n
          <li>Facile &agrave; ins&eacute;rer.&nbsp;</li>\n
          </ul></div><h1>Description Porte-verre à clipser Tellier</h1><div class="col is-12">Le Porte-verre &agrave; clipser Tellier permet de maintenir efficacement vos verres en bord d'assiette sans risque qu'ils ne se renversent. Id&eacute;al pour vos soir&eacute;es et cocktails...</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 {#8527 …}
    #channels: Doctrine\ORM\PersistentCollection {#8030 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#6651 …}
    #reviews: Doctrine\ORM\PersistentCollection {#7918 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8033 …}
    #productType: null
  }
  +variant: App\Entity\Product\ProductVariant {#28440 …}
  +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 {#27705
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27738 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27744 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27731 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
}
sylius_shop:main_image
[Anonymous]
114.0 MiB 11.27 ms
Input props
[
  "product" => App\Entity\Product\Product {#7995
    #id: 2453
    #code: "porte-verre-a-clipser-tellier-4708"
    #attributes: Doctrine\ORM\PersistentCollection {#8171 …}
    #variants: Doctrine\ORM\PersistentCollection {#8394 …}
    #options: Doctrine\ORM\PersistentCollection {#8522 …}
    #associations: Doctrine\ORM\PersistentCollection {#8462 …}
    #createdAt: DateTime @1758632545 {#7725
      date: 2025-09-23 21:02:25.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632545 {#7770
      date: 2025-09-23 21:02:25.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8521 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8524
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#7995}
        #id: 2453
        #name: "Porte-verre à clipser Tellier"
        #slug: "porte-verre-a-clipser-tellier-4708"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Permet de poser votre verre au bord de l'assiette.</li>\n
          <li>Facile &agrave; ins&eacute;rer.&nbsp;</li>\n
          </ul></div><h1>Description Porte-verre à clipser Tellier</h1><div class="col is-12">Le Porte-verre &agrave; clipser Tellier permet de maintenir efficacement vos verres en bord d'assiette sans risque qu'ils ne se renversent. Id&eacute;al pour vos soir&eacute;es et cocktails...</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 {#8527 …}
    #channels: Doctrine\ORM\PersistentCollection {#8030 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#6651 …}
    #reviews: Doctrine\ORM\PersistentCollection {#7918 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8033 …}
    #productType: null
  }
  "class" => "w-100 h-100 object-fit-cover"
]
Attributes
[
  "product" => "Porte-verre à clipser Tellier"
  "class" => "w-100 h-100 object-fit-cover"
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#28851
  -props: [
    "product" => App\Entity\Product\Product {#7995
      #id: 2453
      #code: "porte-verre-a-clipser-tellier-4708"
      #attributes: Doctrine\ORM\PersistentCollection {#8171 …}
      #variants: Doctrine\ORM\PersistentCollection {#8394 …}
      #options: Doctrine\ORM\PersistentCollection {#8522 …}
      #associations: Doctrine\ORM\PersistentCollection {#8462 …}
      #createdAt: DateTime @1758632545 {#7725
        date: 2025-09-23 21:02:25.0 PRC (+08:00)
      }
      #updatedAt: DateTime @1758632545 {#7770
        date: 2025-09-23 21:02:25.0 PRC (+08:00)
      }
      #enabled: true
      #translations: Doctrine\ORM\PersistentCollection {#8521 …}
      #translationsCache: [
        "fr_FR" => App\Entity\Product\ProductTranslation {#8524
          #locale: "fr_FR"
          #translatable: App\Entity\Product\Product {#7995}
          #id: 2453
          #name: "Porte-verre à clipser Tellier"
          #slug: "porte-verre-a-clipser-tellier-4708"
          #description: """
            <div class="col is-12"><ul>\n
            <li>Permet de poser votre verre au bord de l'assiette.</li>\n
            <li>Facile &agrave; ins&eacute;rer.&nbsp;</li>\n
            </ul></div><h1>Description Porte-verre à clipser Tellier</h1><div class="col is-12">Le Porte-verre &agrave; clipser Tellier permet de maintenir efficacement vos verres en bord d'assiette sans risque qu'ils ne se renversent. Id&eacute;al pour vos soir&eacute;es et cocktails...</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 {#8527 …}
      #channels: Doctrine\ORM\PersistentCollection {#8030 …}
      #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#6651 …}
      #reviews: Doctrine\ORM\PersistentCollection {#7918 …}
      #averageRating: 0.0
      #images: Doctrine\ORM\PersistentCollection {#8033 …}
      #productType: null
    }
    "class" => "w-100 h-100 object-fit-cover"
  ]
}
sylius_shop:catalog_promotions
[Anonymous]
114.0 MiB 1.73 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#28921
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#28924 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#28919 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#28918 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#28440 …}
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#28786
    #collection: Doctrine\Common\Collections\ArrayCollection {#28785 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#28623 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38222 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38274 …}
  }
  "withDescription" => false
]
Attributes
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#28921
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#28924 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#28919 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#28918 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => "Porte-verre à clipser Tellier"
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#28786
    #collection: Doctrine\Common\Collections\ArrayCollection {#28785 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#28623 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38222 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38274 …}
  }
  "withDescription" => false
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#28929
  -props: [
    "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#28921
      +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#28924 …}
      +context: Sylius\TwigHooks\Bag\DataBag {#28919 …}
      +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#28918 …}
      +prefixes: [
        "sylius_shop.product.index.content.body.main.card.prices"
        "sylius_shop.shared.product.card.prices"
      ]
    }
    "variant" => App\Entity\Product\ProductVariant {#28440 …}
    "applied_promotions" => Doctrine\ORM\PersistentCollection {#28786
      #collection: Doctrine\Common\Collections\ArrayCollection {#28785 …}
      #initialized: true
      -snapshot: []
      -owner: App\Entity\Channel\ChannelPricing {#28623 …}
      -association: Symfony\Component\VarDumper\Caster\CutStub {#38222 …}
      -backRefFieldName: null
      -isDirty: false
      -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
      -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38274 …}
    }
    "withDescription" => false
  ]
}
sylius_shop:product:card:price Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent 114.0 MiB 0.42 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#28997
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#28987 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#28995 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#28996 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#28440 …}
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Attributes
[
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent {#29006
  +variant: App\Entity\Product\ProductVariant {#28440 …}
  +price: "7,00\u{A0}"
  +originalPrice: "7,00\u{A0}"
  +hasDiscount: false
  #productVariantPricesCalculator: Sylius\Component\Core\Calculator\ProductVariantPriceCalculator {#5465 …}
  #moneyFormatter: Sylius\Bundle\MoneyBundle\Formatter\MoneyFormatter {#9064 …}
  #channelContext: Sylius\Component\Channel\Context\CachedPerRequestChannelContext {#4203 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  #currencyContext: Sylius\Component\Core\Currency\Context\ChannelAwareCurrencyContext {#12494 …}
  #currencyConverter: Sylius\Component\Currency\Converter\CurrencyConverter {#9061 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#28997
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#28987 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#28995 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#28996 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
}
sylius_shop:product:card Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent 114.0 MiB 12.23 ms
Input props
[
  "product" => App\Entity\Product\Product {#8536
    #id: 2540
    #code: "theiere-verre-darjeeling-cristel-8009"
    #attributes: Doctrine\ORM\PersistentCollection {#8546 …}
    #variants: Doctrine\ORM\PersistentCollection {#8548 …}
    #options: Doctrine\ORM\PersistentCollection {#8552 …}
    #associations: Doctrine\ORM\PersistentCollection {#8550 …}
    #createdAt: DateTime @1758632568 {#8534
      date: 2025-09-23 21:02:48.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632568 {#8535
      date: 2025-09-23 21:02:48.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8555 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8556
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8536}
        #id: 2540
        #name: "Théière Verre Darjeeling Cristel"
        #slug: "theiere-verre-darjeeling-cristel-8009"
        #description: """
          <div class="col is-12"><ul>\n
          <li>verre borosilicate.</li>\n
          <li>Bec verseur anti-goutte.</li>\n
          <li>Filtre, support &amp; couvercle inox.</li>\n
          <li>Enti&egrave;rement d&eacute;montable.</li>\n
          </ul></div><h1>Descriptif Théière Verre Darjeeling Cristel</h1><div class="col is-12">La Th&eacute;i&egrave;re Verre Darjeeling Cristel permet d'infuser vos th&eacute;s en transparence et de r&eacute;v&eacute;ler les ar&ocirc;mes les plus subtils de ces derniers. Tr&egrave;s &eacute;l&eacute;gante, elle est r&eacute;alis&eacute;e en verre borosilicate et en acier inoxydable. D'une contenance de 1,2 litre, elle est minie d'un bec verseur anti-goutte et est enti&egrave;rement d&eacute;montable pour un entretien facile.</div><h1>Caractéristiques Théière Verre Darjeeling Cristel</h1><div class="col is-12">- Verre borosilicate.<br />- Couvercle inox brillant.<br />- Filtre amovible inox.<br />- Double paroi.<br />- Infuseur int&eacute;gr&eacute;.<br />- Filtre int&eacute;gr&eacute;.<br />- Longueur : 17,00 cm.<br />- Hauteur : 18,5 cm.<br />- Hauteur sans couvercle : 15,50 cm<br />- Poids : 0,48 kg.<br />- Contenance : 1,2 litre.</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 {#8558 …}
    #channels: Doctrine\ORM\PersistentCollection {#8544 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8538 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8540 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8542 …}
    #productType: null
  }
  "template" => "@SyliusShop/product/common/card.html.twig"
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27705
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27738 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27744 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27731 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
]
Attributes
[
  "template" => "@SyliusShop/product/common/card.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent {#28829
  +product: App\Entity\Product\Product {#8536
    #id: 2540
    #code: "theiere-verre-darjeeling-cristel-8009"
    #attributes: Doctrine\ORM\PersistentCollection {#8546 …}
    #variants: Doctrine\ORM\PersistentCollection {#8548 …}
    #options: Doctrine\ORM\PersistentCollection {#8552 …}
    #associations: Doctrine\ORM\PersistentCollection {#8550 …}
    #createdAt: DateTime @1758632568 {#8534
      date: 2025-09-23 21:02:48.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632568 {#8535
      date: 2025-09-23 21:02:48.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8555 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8556
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8536}
        #id: 2540
        #name: "Théière Verre Darjeeling Cristel"
        #slug: "theiere-verre-darjeeling-cristel-8009"
        #description: """
          <div class="col is-12"><ul>\n
          <li>verre borosilicate.</li>\n
          <li>Bec verseur anti-goutte.</li>\n
          <li>Filtre, support &amp; couvercle inox.</li>\n
          <li>Enti&egrave;rement d&eacute;montable.</li>\n
          </ul></div><h1>Descriptif Théière Verre Darjeeling Cristel</h1><div class="col is-12">La Th&eacute;i&egrave;re Verre Darjeeling Cristel permet d'infuser vos th&eacute;s en transparence et de r&eacute;v&eacute;ler les ar&ocirc;mes les plus subtils de ces derniers. Tr&egrave;s &eacute;l&eacute;gante, elle est r&eacute;alis&eacute;e en verre borosilicate et en acier inoxydable. D'une contenance de 1,2 litre, elle est minie d'un bec verseur anti-goutte et est enti&egrave;rement d&eacute;montable pour un entretien facile.</div><h1>Caractéristiques Théière Verre Darjeeling Cristel</h1><div class="col is-12">- Verre borosilicate.<br />- Couvercle inox brillant.<br />- Filtre amovible inox.<br />- Double paroi.<br />- Infuseur int&eacute;gr&eacute;.<br />- Filtre int&eacute;gr&eacute;.<br />- Longueur : 17,00 cm.<br />- Hauteur : 18,5 cm.<br />- Hauteur sans couvercle : 15,50 cm<br />- Poids : 0,48 kg.<br />- Contenance : 1,2 litre.</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 {#8558 …}
    #channels: Doctrine\ORM\PersistentCollection {#8544 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8538 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8540 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8542 …}
    #productType: null
  }
  +variant: App\Entity\Product\ProductVariant {#29079 …}
  +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 {#27705
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27738 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27744 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27731 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
}
sylius_shop:main_image
[Anonymous]
114.0 MiB 0.75 ms
Input props
[
  "product" => App\Entity\Product\Product {#8536
    #id: 2540
    #code: "theiere-verre-darjeeling-cristel-8009"
    #attributes: Doctrine\ORM\PersistentCollection {#8546 …}
    #variants: Doctrine\ORM\PersistentCollection {#8548 …}
    #options: Doctrine\ORM\PersistentCollection {#8552 …}
    #associations: Doctrine\ORM\PersistentCollection {#8550 …}
    #createdAt: DateTime @1758632568 {#8534
      date: 2025-09-23 21:02:48.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632568 {#8535
      date: 2025-09-23 21:02:48.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8555 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8556
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8536}
        #id: 2540
        #name: "Théière Verre Darjeeling Cristel"
        #slug: "theiere-verre-darjeeling-cristel-8009"
        #description: """
          <div class="col is-12"><ul>\n
          <li>verre borosilicate.</li>\n
          <li>Bec verseur anti-goutte.</li>\n
          <li>Filtre, support &amp; couvercle inox.</li>\n
          <li>Enti&egrave;rement d&eacute;montable.</li>\n
          </ul></div><h1>Descriptif Théière Verre Darjeeling Cristel</h1><div class="col is-12">La Th&eacute;i&egrave;re Verre Darjeeling Cristel permet d'infuser vos th&eacute;s en transparence et de r&eacute;v&eacute;ler les ar&ocirc;mes les plus subtils de ces derniers. Tr&egrave;s &eacute;l&eacute;gante, elle est r&eacute;alis&eacute;e en verre borosilicate et en acier inoxydable. D'une contenance de 1,2 litre, elle est minie d'un bec verseur anti-goutte et est enti&egrave;rement d&eacute;montable pour un entretien facile.</div><h1>Caractéristiques Théière Verre Darjeeling Cristel</h1><div class="col is-12">- Verre borosilicate.<br />- Couvercle inox brillant.<br />- Filtre amovible inox.<br />- Double paroi.<br />- Infuseur int&eacute;gr&eacute;.<br />- Filtre int&eacute;gr&eacute;.<br />- Longueur : 17,00 cm.<br />- Hauteur : 18,5 cm.<br />- Hauteur sans couvercle : 15,50 cm<br />- Poids : 0,48 kg.<br />- Contenance : 1,2 litre.</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 {#8558 …}
    #channels: Doctrine\ORM\PersistentCollection {#8544 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8538 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8540 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8542 …}
    #productType: null
  }
  "class" => "w-100 h-100 object-fit-cover"
]
Attributes
[
  "product" => "Théière Verre Darjeeling Cristel"
  "class" => "w-100 h-100 object-fit-cover"
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#29153
  -props: [
    "product" => App\Entity\Product\Product {#8536
      #id: 2540
      #code: "theiere-verre-darjeeling-cristel-8009"
      #attributes: Doctrine\ORM\PersistentCollection {#8546 …}
      #variants: Doctrine\ORM\PersistentCollection {#8548 …}
      #options: Doctrine\ORM\PersistentCollection {#8552 …}
      #associations: Doctrine\ORM\PersistentCollection {#8550 …}
      #createdAt: DateTime @1758632568 {#8534
        date: 2025-09-23 21:02:48.0 PRC (+08:00)
      }
      #updatedAt: DateTime @1758632568 {#8535
        date: 2025-09-23 21:02:48.0 PRC (+08:00)
      }
      #enabled: true
      #translations: Doctrine\ORM\PersistentCollection {#8555 …}
      #translationsCache: [
        "fr_FR" => App\Entity\Product\ProductTranslation {#8556
          #locale: "fr_FR"
          #translatable: App\Entity\Product\Product {#8536}
          #id: 2540
          #name: "Théière Verre Darjeeling Cristel"
          #slug: "theiere-verre-darjeeling-cristel-8009"
          #description: """
            <div class="col is-12"><ul>\n
            <li>verre borosilicate.</li>\n
            <li>Bec verseur anti-goutte.</li>\n
            <li>Filtre, support &amp; couvercle inox.</li>\n
            <li>Enti&egrave;rement d&eacute;montable.</li>\n
            </ul></div><h1>Descriptif Théière Verre Darjeeling Cristel</h1><div class="col is-12">La Th&eacute;i&egrave;re Verre Darjeeling Cristel permet d'infuser vos th&eacute;s en transparence et de r&eacute;v&eacute;ler les ar&ocirc;mes les plus subtils de ces derniers. Tr&egrave;s &eacute;l&eacute;gante, elle est r&eacute;alis&eacute;e en verre borosilicate et en acier inoxydable. D'une contenance de 1,2 litre, elle est minie d'un bec verseur anti-goutte et est enti&egrave;rement d&eacute;montable pour un entretien facile.</div><h1>Caractéristiques Théière Verre Darjeeling Cristel</h1><div class="col is-12">- Verre borosilicate.<br />- Couvercle inox brillant.<br />- Filtre amovible inox.<br />- Double paroi.<br />- Infuseur int&eacute;gr&eacute;.<br />- Filtre int&eacute;gr&eacute;.<br />- Longueur : 17,00 cm.<br />- Hauteur : 18,5 cm.<br />- Hauteur sans couvercle : 15,50 cm<br />- Poids : 0,48 kg.<br />- Contenance : 1,2 litre.</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 {#8558 …}
      #channels: Doctrine\ORM\PersistentCollection {#8544 …}
      #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8538 …}
      #reviews: Doctrine\ORM\PersistentCollection {#8540 …}
      #averageRating: 0.0
      #images: Doctrine\ORM\PersistentCollection {#8542 …}
      #productType: null
    }
    "class" => "w-100 h-100 object-fit-cover"
  ]
}
sylius_shop:catalog_promotions
[Anonymous]
114.0 MiB 0.88 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29146
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29137 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29210 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29134 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#29079 …}
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#29087
    #collection: Doctrine\Common\Collections\ArrayCollection {#29099 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#29075 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38294 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38296 …}
  }
  "withDescription" => false
]
Attributes
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29146
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29137 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29210 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29134 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => "Théière Verre Darjeeling Cristel"
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#29087
    #collection: Doctrine\Common\Collections\ArrayCollection {#29099 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#29075 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38294 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38296 …}
  }
  "withDescription" => false
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#29214
  -props: [
    "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29146
      +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29137 …}
      +context: Sylius\TwigHooks\Bag\DataBag {#29210 …}
      +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29134 …}
      +prefixes: [
        "sylius_shop.product.index.content.body.main.card.prices"
        "sylius_shop.shared.product.card.prices"
      ]
    }
    "variant" => App\Entity\Product\ProductVariant {#29079 …}
    "applied_promotions" => Doctrine\ORM\PersistentCollection {#29087
      #collection: Doctrine\Common\Collections\ArrayCollection {#29099 …}
      #initialized: true
      -snapshot: []
      -owner: App\Entity\Channel\ChannelPricing {#29075 …}
      -association: Symfony\Component\VarDumper\Caster\CutStub {#38294 …}
      -backRefFieldName: null
      -isDirty: false
      -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
      -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38296 …}
    }
    "withDescription" => false
  ]
}
sylius_shop:product:card:price Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent 114.0 MiB 0.17 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29264
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29255 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29262 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29263 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#29079 …}
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Attributes
[
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent {#29267
  +variant: App\Entity\Product\ProductVariant {#29079 …}
  +price: "37,00\u{A0}"
  +originalPrice: "37,00\u{A0}"
  +hasDiscount: false
  #productVariantPricesCalculator: Sylius\Component\Core\Calculator\ProductVariantPriceCalculator {#5465 …}
  #moneyFormatter: Sylius\Bundle\MoneyBundle\Formatter\MoneyFormatter {#9064 …}
  #channelContext: Sylius\Component\Channel\Context\CachedPerRequestChannelContext {#4203 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  #currencyContext: Sylius\Component\Core\Currency\Context\ChannelAwareCurrencyContext {#12494 …}
  #currencyConverter: Sylius\Component\Currency\Converter\CurrencyConverter {#9061 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29264
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29255 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29262 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29263 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
}
sylius_shop:product:card Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent 114.0 MiB 4.67 ms
Input props
[
  "product" => App\Entity\Product\Product {#8562
    #id: 2561
    #code: "tire-bouchon-altar-peugeot-4600"
    #attributes: Doctrine\ORM\PersistentCollection {#8572 …}
    #variants: Doctrine\ORM\PersistentCollection {#8574 …}
    #options: Doctrine\ORM\PersistentCollection {#8578 …}
    #associations: Doctrine\ORM\PersistentCollection {#8576 …}
    #createdAt: DateTime @1758632577 {#8560
      date: 2025-09-23 21:02:57.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632577 {#8561
      date: 2025-09-23 21:02:57.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8581 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8582
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8562}
        #id: 2561
        #name: "Tire bouchon Altar Peugeot"
        #slug: "tire-bouchon-altar-peugeot-4600"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Vis sans fin, ouverture sans effort.</li>\n
          <li>Rev&ecirc;tement soft touch.&nbsp;</li>\n
          <li>Livr&eacute; avec coupe capsule.&nbsp;</li>\n
          </ul></div><h1>Description Tire bouchon Altar Peugeot</h1><div class="col is-12">Le Tire bouchon Altar Peugeot permet de d&eacute;boucher vos bouteilles pr&eacute;f&eacute;r&eacute;es sans effort et avec d&eacute;licatesse. Muni d'une vis sans fin, ouvrir une bouteille avec ce tire bouchon devient un jeu d'enfant ! Efficace, il n'en oublie pas pour autant d'&ecirc;tre &eacute;l&eacute;gant avec un design tr&egrave;s contemporain et tout en sobri&eacute;t&eacute;. Son coupe capsule se montre aussi &agrave; la fois beau et efficace.</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 {#8584 …}
    #channels: Doctrine\ORM\PersistentCollection {#8570 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8564 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8566 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8568 …}
    #productType: null
  }
  "template" => "@SyliusShop/product/common/card.html.twig"
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27705
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27738 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27744 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27731 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
]
Attributes
[
  "template" => "@SyliusShop/product/common/card.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent {#29144
  +product: App\Entity\Product\Product {#8562
    #id: 2561
    #code: "tire-bouchon-altar-peugeot-4600"
    #attributes: Doctrine\ORM\PersistentCollection {#8572 …}
    #variants: Doctrine\ORM\PersistentCollection {#8574 …}
    #options: Doctrine\ORM\PersistentCollection {#8578 …}
    #associations: Doctrine\ORM\PersistentCollection {#8576 …}
    #createdAt: DateTime @1758632577 {#8560
      date: 2025-09-23 21:02:57.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632577 {#8561
      date: 2025-09-23 21:02:57.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8581 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8582
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8562}
        #id: 2561
        #name: "Tire bouchon Altar Peugeot"
        #slug: "tire-bouchon-altar-peugeot-4600"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Vis sans fin, ouverture sans effort.</li>\n
          <li>Rev&ecirc;tement soft touch.&nbsp;</li>\n
          <li>Livr&eacute; avec coupe capsule.&nbsp;</li>\n
          </ul></div><h1>Description Tire bouchon Altar Peugeot</h1><div class="col is-12">Le Tire bouchon Altar Peugeot permet de d&eacute;boucher vos bouteilles pr&eacute;f&eacute;r&eacute;es sans effort et avec d&eacute;licatesse. Muni d'une vis sans fin, ouvrir une bouteille avec ce tire bouchon devient un jeu d'enfant ! Efficace, il n'en oublie pas pour autant d'&ecirc;tre &eacute;l&eacute;gant avec un design tr&egrave;s contemporain et tout en sobri&eacute;t&eacute;. Son coupe capsule se montre aussi &agrave; la fois beau et efficace.</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 {#8584 …}
    #channels: Doctrine\ORM\PersistentCollection {#8570 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8564 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8566 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8568 …}
    #productType: null
  }
  +variant: App\Entity\Product\ProductVariant {#29330 …}
  +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 {#27705
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27738 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27744 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27731 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
}
sylius_shop:main_image
[Anonymous]
114.0 MiB 0.78 ms
Input props
[
  "product" => App\Entity\Product\Product {#8562
    #id: 2561
    #code: "tire-bouchon-altar-peugeot-4600"
    #attributes: Doctrine\ORM\PersistentCollection {#8572 …}
    #variants: Doctrine\ORM\PersistentCollection {#8574 …}
    #options: Doctrine\ORM\PersistentCollection {#8578 …}
    #associations: Doctrine\ORM\PersistentCollection {#8576 …}
    #createdAt: DateTime @1758632577 {#8560
      date: 2025-09-23 21:02:57.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632577 {#8561
      date: 2025-09-23 21:02:57.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8581 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8582
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8562}
        #id: 2561
        #name: "Tire bouchon Altar Peugeot"
        #slug: "tire-bouchon-altar-peugeot-4600"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Vis sans fin, ouverture sans effort.</li>\n
          <li>Rev&ecirc;tement soft touch.&nbsp;</li>\n
          <li>Livr&eacute; avec coupe capsule.&nbsp;</li>\n
          </ul></div><h1>Description Tire bouchon Altar Peugeot</h1><div class="col is-12">Le Tire bouchon Altar Peugeot permet de d&eacute;boucher vos bouteilles pr&eacute;f&eacute;r&eacute;es sans effort et avec d&eacute;licatesse. Muni d'une vis sans fin, ouvrir une bouteille avec ce tire bouchon devient un jeu d'enfant ! Efficace, il n'en oublie pas pour autant d'&ecirc;tre &eacute;l&eacute;gant avec un design tr&egrave;s contemporain et tout en sobri&eacute;t&eacute;. Son coupe capsule se montre aussi &agrave; la fois beau et efficace.</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 {#8584 …}
    #channels: Doctrine\ORM\PersistentCollection {#8570 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8564 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8566 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8568 …}
    #productType: null
  }
  "class" => "w-100 h-100 object-fit-cover"
]
Attributes
[
  "product" => "Tire bouchon Altar Peugeot"
  "class" => "w-100 h-100 object-fit-cover"
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#29401
  -props: [
    "product" => App\Entity\Product\Product {#8562
      #id: 2561
      #code: "tire-bouchon-altar-peugeot-4600"
      #attributes: Doctrine\ORM\PersistentCollection {#8572 …}
      #variants: Doctrine\ORM\PersistentCollection {#8574 …}
      #options: Doctrine\ORM\PersistentCollection {#8578 …}
      #associations: Doctrine\ORM\PersistentCollection {#8576 …}
      #createdAt: DateTime @1758632577 {#8560
        date: 2025-09-23 21:02:57.0 PRC (+08:00)
      }
      #updatedAt: DateTime @1758632577 {#8561
        date: 2025-09-23 21:02:57.0 PRC (+08:00)
      }
      #enabled: true
      #translations: Doctrine\ORM\PersistentCollection {#8581 …}
      #translationsCache: [
        "fr_FR" => App\Entity\Product\ProductTranslation {#8582
          #locale: "fr_FR"
          #translatable: App\Entity\Product\Product {#8562}
          #id: 2561
          #name: "Tire bouchon Altar Peugeot"
          #slug: "tire-bouchon-altar-peugeot-4600"
          #description: """
            <div class="col is-12"><ul>\n
            <li>Vis sans fin, ouverture sans effort.</li>\n
            <li>Rev&ecirc;tement soft touch.&nbsp;</li>\n
            <li>Livr&eacute; avec coupe capsule.&nbsp;</li>\n
            </ul></div><h1>Description Tire bouchon Altar Peugeot</h1><div class="col is-12">Le Tire bouchon Altar Peugeot permet de d&eacute;boucher vos bouteilles pr&eacute;f&eacute;r&eacute;es sans effort et avec d&eacute;licatesse. Muni d'une vis sans fin, ouvrir une bouteille avec ce tire bouchon devient un jeu d'enfant ! Efficace, il n'en oublie pas pour autant d'&ecirc;tre &eacute;l&eacute;gant avec un design tr&egrave;s contemporain et tout en sobri&eacute;t&eacute;. Son coupe capsule se montre aussi &agrave; la fois beau et efficace.</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 {#8584 …}
      #channels: Doctrine\ORM\PersistentCollection {#8570 …}
      #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8564 …}
      #reviews: Doctrine\ORM\PersistentCollection {#8566 …}
      #averageRating: 0.0
      #images: Doctrine\ORM\PersistentCollection {#8568 …}
      #productType: null
    }
    "class" => "w-100 h-100 object-fit-cover"
  ]
}
sylius_shop:catalog_promotions
[Anonymous]
114.0 MiB 0.61 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29475
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29385 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29464 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29382 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#29330 …}
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#29338
    #collection: Doctrine\Common\Collections\ArrayCollection {#29347 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#29326 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38308 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38310 …}
  }
  "withDescription" => false
]
Attributes
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29475
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29385 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29464 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29382 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => "Tire bouchon Altar Peugeot"
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#29338
    #collection: Doctrine\Common\Collections\ArrayCollection {#29347 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#29326 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38308 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38310 …}
  }
  "withDescription" => false
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#29480
  -props: [
    "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29475
      +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29385 …}
      +context: Sylius\TwigHooks\Bag\DataBag {#29464 …}
      +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29382 …}
      +prefixes: [
        "sylius_shop.product.index.content.body.main.card.prices"
        "sylius_shop.shared.product.card.prices"
      ]
    }
    "variant" => App\Entity\Product\ProductVariant {#29330 …}
    "applied_promotions" => Doctrine\ORM\PersistentCollection {#29338
      #collection: Doctrine\Common\Collections\ArrayCollection {#29347 …}
      #initialized: true
      -snapshot: []
      -owner: App\Entity\Channel\ChannelPricing {#29326 …}
      -association: Symfony\Component\VarDumper\Caster\CutStub {#38308 …}
      -backRefFieldName: null
      -isDirty: false
      -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
      -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38310 …}
    }
    "withDescription" => false
  ]
}
sylius_shop:product:card:price Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent 114.0 MiB 0.14 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29529
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29520 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29527 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29528 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#29330 …}
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Attributes
[
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent {#29532
  +variant: App\Entity\Product\ProductVariant {#29330 …}
  +price: "42,00\u{A0}"
  +originalPrice: "42,00\u{A0}"
  +hasDiscount: false
  #productVariantPricesCalculator: Sylius\Component\Core\Calculator\ProductVariantPriceCalculator {#5465 …}
  #moneyFormatter: Sylius\Bundle\MoneyBundle\Formatter\MoneyFormatter {#9064 …}
  #channelContext: Sylius\Component\Channel\Context\CachedPerRequestChannelContext {#4203 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  #currencyContext: Sylius\Component\Core\Currency\Context\ChannelAwareCurrencyContext {#12494 …}
  #currencyConverter: Sylius\Component\Currency\Converter\CurrencyConverter {#9061 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29529
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29520 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29527 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29528 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
}
sylius_shop:product:card Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent 114.0 MiB 4.46 ms
Input props
[
  "product" => App\Entity\Product\Product {#8588
    #id: 2566
    #code: "tire-bouchon-a-air-vin-bouquet-6122"
    #attributes: Doctrine\ORM\PersistentCollection {#8595 …}
    #variants: Doctrine\ORM\PersistentCollection {#8597 …}
    #options: Doctrine\ORM\PersistentCollection {#8601 …}
    #associations: Doctrine\ORM\PersistentCollection {#8599 …}
    #createdAt: DateTime @1758632577 {#8586
      date: 2025-09-23 21:02:57.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632577 {#8587
      date: 2025-09-23 21:02:57.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8604 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8605
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8588}
        #id: 2566
        #name: "Tire Bouchon à Air Vin Bouquet"
        #slug: "tire-bouchon-a-air-vin-bouquet-6122"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Simple et rapide.</li>\n
          <li>Sans efforts.</li>\n
          <li><strong>Ne doit pas &ecirc;tre utilis&eacute; avec des vins effervescents ou du Champagne.</strong></li>\n
          </ul></div><h1>Descriptif Tire Bouchon à Air Vin Bouquet</h1><div class="col is-12">Le Tire Bouchon &agrave; Air Vin Bouquet est&nbsp;&eacute;quip&eacute; d'une aiguille creuse permettant d'injecter de l'air dans la bouteille afin d'extraite le bouchon par surpression. Quelques actions de pompage suffisent &agrave; produire suffisament de pression &agrave; l'int&eacute;rieur de la bouteille pour que le bouchon soit &eacute;jecter. Cet ustensile ne doit pas &ecirc;tre utilis&eacute; avec des vins effervescents ou du Champagne.</div><h1>Caractéristiques Tire Bouchon à Air Vin Bouquet</h1><div class="col is-12">- Diam&egrave;tre : 4,7 cm.<br />- Hauteur : 19,3 cm.</div>
          """
        #metaKeywords: null
        #metaDescription: null
        #shortDescription: null
        -fullTitle: null
        -metaTitle: null
      }
    ]
    #currentLocale: "fr_FR"
    #currentTranslation: null
    #fallbackLocale: "fr_FR"
    #variantSelectionMethod: "choice"
    #productTaxons: Doctrine\ORM\PersistentCollection {#8607 …}
    #channels: Doctrine\ORM\PersistentCollection {#8593 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8564 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8589 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8591 …}
    #productType: null
  }
  "template" => "@SyliusShop/product/common/card.html.twig"
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27705
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27738 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27744 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27731 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
]
Attributes
[
  "template" => "@SyliusShop/product/common/card.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent {#29392
  +product: App\Entity\Product\Product {#8588
    #id: 2566
    #code: "tire-bouchon-a-air-vin-bouquet-6122"
    #attributes: Doctrine\ORM\PersistentCollection {#8595 …}
    #variants: Doctrine\ORM\PersistentCollection {#8597 …}
    #options: Doctrine\ORM\PersistentCollection {#8601 …}
    #associations: Doctrine\ORM\PersistentCollection {#8599 …}
    #createdAt: DateTime @1758632577 {#8586
      date: 2025-09-23 21:02:57.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632577 {#8587
      date: 2025-09-23 21:02:57.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8604 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8605
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8588}
        #id: 2566
        #name: "Tire Bouchon à Air Vin Bouquet"
        #slug: "tire-bouchon-a-air-vin-bouquet-6122"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Simple et rapide.</li>\n
          <li>Sans efforts.</li>\n
          <li><strong>Ne doit pas &ecirc;tre utilis&eacute; avec des vins effervescents ou du Champagne.</strong></li>\n
          </ul></div><h1>Descriptif Tire Bouchon à Air Vin Bouquet</h1><div class="col is-12">Le Tire Bouchon &agrave; Air Vin Bouquet est&nbsp;&eacute;quip&eacute; d'une aiguille creuse permettant d'injecter de l'air dans la bouteille afin d'extraite le bouchon par surpression. Quelques actions de pompage suffisent &agrave; produire suffisament de pression &agrave; l'int&eacute;rieur de la bouteille pour que le bouchon soit &eacute;jecter. Cet ustensile ne doit pas &ecirc;tre utilis&eacute; avec des vins effervescents ou du Champagne.</div><h1>Caractéristiques Tire Bouchon à Air Vin Bouquet</h1><div class="col is-12">- Diam&egrave;tre : 4,7 cm.<br />- Hauteur : 19,3 cm.</div>
          """
        #metaKeywords: null
        #metaDescription: null
        #shortDescription: null
        -fullTitle: null
        -metaTitle: null
      }
    ]
    #currentLocale: "fr_FR"
    #currentTranslation: null
    #fallbackLocale: "fr_FR"
    #variantSelectionMethod: "choice"
    #productTaxons: Doctrine\ORM\PersistentCollection {#8607 …}
    #channels: Doctrine\ORM\PersistentCollection {#8593 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8564 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8589 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8591 …}
    #productType: null
  }
  +variant: App\Entity\Product\ProductVariant {#29595 …}
  +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 {#27705
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27738 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27744 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27731 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
}
sylius_shop:main_image
[Anonymous]
114.0 MiB 0.79 ms
Input props
[
  "product" => App\Entity\Product\Product {#8588
    #id: 2566
    #code: "tire-bouchon-a-air-vin-bouquet-6122"
    #attributes: Doctrine\ORM\PersistentCollection {#8595 …}
    #variants: Doctrine\ORM\PersistentCollection {#8597 …}
    #options: Doctrine\ORM\PersistentCollection {#8601 …}
    #associations: Doctrine\ORM\PersistentCollection {#8599 …}
    #createdAt: DateTime @1758632577 {#8586
      date: 2025-09-23 21:02:57.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632577 {#8587
      date: 2025-09-23 21:02:57.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8604 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8605
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8588}
        #id: 2566
        #name: "Tire Bouchon à Air Vin Bouquet"
        #slug: "tire-bouchon-a-air-vin-bouquet-6122"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Simple et rapide.</li>\n
          <li>Sans efforts.</li>\n
          <li><strong>Ne doit pas &ecirc;tre utilis&eacute; avec des vins effervescents ou du Champagne.</strong></li>\n
          </ul></div><h1>Descriptif Tire Bouchon à Air Vin Bouquet</h1><div class="col is-12">Le Tire Bouchon &agrave; Air Vin Bouquet est&nbsp;&eacute;quip&eacute; d'une aiguille creuse permettant d'injecter de l'air dans la bouteille afin d'extraite le bouchon par surpression. Quelques actions de pompage suffisent &agrave; produire suffisament de pression &agrave; l'int&eacute;rieur de la bouteille pour que le bouchon soit &eacute;jecter. Cet ustensile ne doit pas &ecirc;tre utilis&eacute; avec des vins effervescents ou du Champagne.</div><h1>Caractéristiques Tire Bouchon à Air Vin Bouquet</h1><div class="col is-12">- Diam&egrave;tre : 4,7 cm.<br />- Hauteur : 19,3 cm.</div>
          """
        #metaKeywords: null
        #metaDescription: null
        #shortDescription: null
        -fullTitle: null
        -metaTitle: null
      }
    ]
    #currentLocale: "fr_FR"
    #currentTranslation: null
    #fallbackLocale: "fr_FR"
    #variantSelectionMethod: "choice"
    #productTaxons: Doctrine\ORM\PersistentCollection {#8607 …}
    #channels: Doctrine\ORM\PersistentCollection {#8593 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8564 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8589 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8591 …}
    #productType: null
  }
  "class" => "w-100 h-100 object-fit-cover"
]
Attributes
[
  "product" => "Tire Bouchon à Air Vin Bouquet"
  "class" => "w-100 h-100 object-fit-cover"
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#29666
  -props: [
    "product" => App\Entity\Product\Product {#8588
      #id: 2566
      #code: "tire-bouchon-a-air-vin-bouquet-6122"
      #attributes: Doctrine\ORM\PersistentCollection {#8595 …}
      #variants: Doctrine\ORM\PersistentCollection {#8597 …}
      #options: Doctrine\ORM\PersistentCollection {#8601 …}
      #associations: Doctrine\ORM\PersistentCollection {#8599 …}
      #createdAt: DateTime @1758632577 {#8586
        date: 2025-09-23 21:02:57.0 PRC (+08:00)
      }
      #updatedAt: DateTime @1758632577 {#8587
        date: 2025-09-23 21:02:57.0 PRC (+08:00)
      }
      #enabled: true
      #translations: Doctrine\ORM\PersistentCollection {#8604 …}
      #translationsCache: [
        "fr_FR" => App\Entity\Product\ProductTranslation {#8605
          #locale: "fr_FR"
          #translatable: App\Entity\Product\Product {#8588}
          #id: 2566
          #name: "Tire Bouchon à Air Vin Bouquet"
          #slug: "tire-bouchon-a-air-vin-bouquet-6122"
          #description: """
            <div class="col is-12"><ul>\n
            <li>Simple et rapide.</li>\n
            <li>Sans efforts.</li>\n
            <li><strong>Ne doit pas &ecirc;tre utilis&eacute; avec des vins effervescents ou du Champagne.</strong></li>\n
            </ul></div><h1>Descriptif Tire Bouchon à Air Vin Bouquet</h1><div class="col is-12">Le Tire Bouchon &agrave; Air Vin Bouquet est&nbsp;&eacute;quip&eacute; d'une aiguille creuse permettant d'injecter de l'air dans la bouteille afin d'extraite le bouchon par surpression. Quelques actions de pompage suffisent &agrave; produire suffisament de pression &agrave; l'int&eacute;rieur de la bouteille pour que le bouchon soit &eacute;jecter. Cet ustensile ne doit pas &ecirc;tre utilis&eacute; avec des vins effervescents ou du Champagne.</div><h1>Caractéristiques Tire Bouchon à Air Vin Bouquet</h1><div class="col is-12">- Diam&egrave;tre : 4,7 cm.<br />- Hauteur : 19,3 cm.</div>
            """
          #metaKeywords: null
          #metaDescription: null
          #shortDescription: null
          -fullTitle: null
          -metaTitle: null
        }
      ]
      #currentLocale: "fr_FR"
      #currentTranslation: null
      #fallbackLocale: "fr_FR"
      #variantSelectionMethod: "choice"
      #productTaxons: Doctrine\ORM\PersistentCollection {#8607 …}
      #channels: Doctrine\ORM\PersistentCollection {#8593 …}
      #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8564 …}
      #reviews: Doctrine\ORM\PersistentCollection {#8589 …}
      #averageRating: 0.0
      #images: Doctrine\ORM\PersistentCollection {#8591 …}
      #productType: null
    }
    "class" => "w-100 h-100 object-fit-cover"
  ]
}
sylius_shop:catalog_promotions
[Anonymous]
114.0 MiB 0.66 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29659
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29650 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29726 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29647 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#29595 …}
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#29603
    #collection: Doctrine\Common\Collections\ArrayCollection {#29612 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#29591 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38322 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38324 …}
  }
  "withDescription" => false
]
Attributes
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29659
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29650 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29726 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29647 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => "Tire Bouchon à Air Vin Bouquet"
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#29603
    #collection: Doctrine\Common\Collections\ArrayCollection {#29612 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#29591 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38322 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38324 …}
  }
  "withDescription" => false
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#29730
  -props: [
    "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29659
      +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29650 …}
      +context: Sylius\TwigHooks\Bag\DataBag {#29726 …}
      +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29647 …}
      +prefixes: [
        "sylius_shop.product.index.content.body.main.card.prices"
        "sylius_shop.shared.product.card.prices"
      ]
    }
    "variant" => App\Entity\Product\ProductVariant {#29595 …}
    "applied_promotions" => Doctrine\ORM\PersistentCollection {#29603
      #collection: Doctrine\Common\Collections\ArrayCollection {#29612 …}
      #initialized: true
      -snapshot: []
      -owner: App\Entity\Channel\ChannelPricing {#29591 …}
      -association: Symfony\Component\VarDumper\Caster\CutStub {#38322 …}
      -backRefFieldName: null
      -isDirty: false
      -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
      -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38324 …}
    }
    "withDescription" => false
  ]
}
sylius_shop:product:card:price Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent 114.0 MiB 0.15 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29780
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29771 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29778 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29779 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#29595 …}
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Attributes
[
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent {#29783
  +variant: App\Entity\Product\ProductVariant {#29595 …}
  +price: "16,00\u{A0}"
  +originalPrice: "16,00\u{A0}"
  +hasDiscount: false
  #productVariantPricesCalculator: Sylius\Component\Core\Calculator\ProductVariantPriceCalculator {#5465 …}
  #moneyFormatter: Sylius\Bundle\MoneyBundle\Formatter\MoneyFormatter {#9064 …}
  #channelContext: Sylius\Component\Channel\Context\CachedPerRequestChannelContext {#4203 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  #currencyContext: Sylius\Component\Core\Currency\Context\ChannelAwareCurrencyContext {#12494 …}
  #currencyConverter: Sylius\Component\Currency\Converter\CurrencyConverter {#9061 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29780
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29771 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29778 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29779 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
}
sylius_shop:product:card Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent 114.0 MiB 12.12 ms
Input props
[
  "product" => App\Entity\Product\Product {#8611
    #id: 2567
    #code: "tire-bouchon-sommelier-bois-point-virgule-6746"
    #attributes: Doctrine\ORM\PersistentCollection {#8618 …}
    #variants: Doctrine\ORM\PersistentCollection {#8620 …}
    #options: Doctrine\ORM\PersistentCollection {#8624 …}
    #associations: Doctrine\ORM\PersistentCollection {#8622 …}
    #createdAt: DateTime @1758632577 {#8609
      date: 2025-09-23 21:02:57.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632577 {#8610
      date: 2025-09-23 21:02:57.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8627 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8628
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8611}
        #id: 2567
        #name: "Tire Bouchon Sommelier Bois Point Virgule"
        #slug: "tire-bouchon-sommelier-bois-point-virgule-6746"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Tr&egrave;s belle finition.</li>\n
          <li>Parties coupantes en inox avec habillage bois.</li>\n
          </ul></div><h1>Descriptif Tire Bouchon Sommelier Bois Point Virgule</h1><div class="col is-12">D&eacute;bouchez une bonne bouteille gr&acirc;ce &agrave; cet &eacute;l&eacute;gant Tire-bouchon Sommelier r&eacute;alis&eacute; en acier inoxydable habill&eacute; de bois rouge. Pliable pour &ecirc;tre facilement rang&eacute;.&nbsp;<br /></div><h1>Caractéristiques Tire Bouchon Sommelier Bois Point Virgule</h1><div class="col is-12">- Acier inoxydable et bois rouge.<br />- Longueur : 120 mm.<br />- Largeur : 30 mm.<br />- Hauteur : 15 mm.&nbsp;<br />- Poids : 120 gr.<br />- Ne pas mettre au lave vaisselle.</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 {#8630 …}
    #channels: Doctrine\ORM\PersistentCollection {#8616 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8564 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8612 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8614 …}
    #productType: null
  }
  "template" => "@SyliusShop/product/common/card.html.twig"
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27705
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27738 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27744 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27731 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
]
Attributes
[
  "template" => "@SyliusShop/product/common/card.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent {#29657
  +product: App\Entity\Product\Product {#8611
    #id: 2567
    #code: "tire-bouchon-sommelier-bois-point-virgule-6746"
    #attributes: Doctrine\ORM\PersistentCollection {#8618 …}
    #variants: Doctrine\ORM\PersistentCollection {#8620 …}
    #options: Doctrine\ORM\PersistentCollection {#8624 …}
    #associations: Doctrine\ORM\PersistentCollection {#8622 …}
    #createdAt: DateTime @1758632577 {#8609
      date: 2025-09-23 21:02:57.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632577 {#8610
      date: 2025-09-23 21:02:57.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8627 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8628
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8611}
        #id: 2567
        #name: "Tire Bouchon Sommelier Bois Point Virgule"
        #slug: "tire-bouchon-sommelier-bois-point-virgule-6746"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Tr&egrave;s belle finition.</li>\n
          <li>Parties coupantes en inox avec habillage bois.</li>\n
          </ul></div><h1>Descriptif Tire Bouchon Sommelier Bois Point Virgule</h1><div class="col is-12">D&eacute;bouchez une bonne bouteille gr&acirc;ce &agrave; cet &eacute;l&eacute;gant Tire-bouchon Sommelier r&eacute;alis&eacute; en acier inoxydable habill&eacute; de bois rouge. Pliable pour &ecirc;tre facilement rang&eacute;.&nbsp;<br /></div><h1>Caractéristiques Tire Bouchon Sommelier Bois Point Virgule</h1><div class="col is-12">- Acier inoxydable et bois rouge.<br />- Longueur : 120 mm.<br />- Largeur : 30 mm.<br />- Hauteur : 15 mm.&nbsp;<br />- Poids : 120 gr.<br />- Ne pas mettre au lave vaisselle.</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 {#8630 …}
    #channels: Doctrine\ORM\PersistentCollection {#8616 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8564 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8612 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8614 …}
    #productType: null
  }
  +variant: App\Entity\Product\ProductVariant {#29846 …}
  +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 {#27705
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27738 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27744 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27731 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
}
sylius_shop:main_image
[Anonymous]
114.0 MiB 0.76 ms
Input props
[
  "product" => App\Entity\Product\Product {#8611
    #id: 2567
    #code: "tire-bouchon-sommelier-bois-point-virgule-6746"
    #attributes: Doctrine\ORM\PersistentCollection {#8618 …}
    #variants: Doctrine\ORM\PersistentCollection {#8620 …}
    #options: Doctrine\ORM\PersistentCollection {#8624 …}
    #associations: Doctrine\ORM\PersistentCollection {#8622 …}
    #createdAt: DateTime @1758632577 {#8609
      date: 2025-09-23 21:02:57.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632577 {#8610
      date: 2025-09-23 21:02:57.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8627 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8628
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8611}
        #id: 2567
        #name: "Tire Bouchon Sommelier Bois Point Virgule"
        #slug: "tire-bouchon-sommelier-bois-point-virgule-6746"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Tr&egrave;s belle finition.</li>\n
          <li>Parties coupantes en inox avec habillage bois.</li>\n
          </ul></div><h1>Descriptif Tire Bouchon Sommelier Bois Point Virgule</h1><div class="col is-12">D&eacute;bouchez une bonne bouteille gr&acirc;ce &agrave; cet &eacute;l&eacute;gant Tire-bouchon Sommelier r&eacute;alis&eacute; en acier inoxydable habill&eacute; de bois rouge. Pliable pour &ecirc;tre facilement rang&eacute;.&nbsp;<br /></div><h1>Caractéristiques Tire Bouchon Sommelier Bois Point Virgule</h1><div class="col is-12">- Acier inoxydable et bois rouge.<br />- Longueur : 120 mm.<br />- Largeur : 30 mm.<br />- Hauteur : 15 mm.&nbsp;<br />- Poids : 120 gr.<br />- Ne pas mettre au lave vaisselle.</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 {#8630 …}
    #channels: Doctrine\ORM\PersistentCollection {#8616 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8564 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8612 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8614 …}
    #productType: null
  }
  "class" => "w-100 h-100 object-fit-cover"
]
Attributes
[
  "product" => "Tire Bouchon Sommelier Bois Point Virgule"
  "class" => "w-100 h-100 object-fit-cover"
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#29917
  -props: [
    "product" => App\Entity\Product\Product {#8611
      #id: 2567
      #code: "tire-bouchon-sommelier-bois-point-virgule-6746"
      #attributes: Doctrine\ORM\PersistentCollection {#8618 …}
      #variants: Doctrine\ORM\PersistentCollection {#8620 …}
      #options: Doctrine\ORM\PersistentCollection {#8624 …}
      #associations: Doctrine\ORM\PersistentCollection {#8622 …}
      #createdAt: DateTime @1758632577 {#8609
        date: 2025-09-23 21:02:57.0 PRC (+08:00)
      }
      #updatedAt: DateTime @1758632577 {#8610
        date: 2025-09-23 21:02:57.0 PRC (+08:00)
      }
      #enabled: true
      #translations: Doctrine\ORM\PersistentCollection {#8627 …}
      #translationsCache: [
        "fr_FR" => App\Entity\Product\ProductTranslation {#8628
          #locale: "fr_FR"
          #translatable: App\Entity\Product\Product {#8611}
          #id: 2567
          #name: "Tire Bouchon Sommelier Bois Point Virgule"
          #slug: "tire-bouchon-sommelier-bois-point-virgule-6746"
          #description: """
            <div class="col is-12"><ul>\n
            <li>Tr&egrave;s belle finition.</li>\n
            <li>Parties coupantes en inox avec habillage bois.</li>\n
            </ul></div><h1>Descriptif Tire Bouchon Sommelier Bois Point Virgule</h1><div class="col is-12">D&eacute;bouchez une bonne bouteille gr&acirc;ce &agrave; cet &eacute;l&eacute;gant Tire-bouchon Sommelier r&eacute;alis&eacute; en acier inoxydable habill&eacute; de bois rouge. Pliable pour &ecirc;tre facilement rang&eacute;.&nbsp;<br /></div><h1>Caractéristiques Tire Bouchon Sommelier Bois Point Virgule</h1><div class="col is-12">- Acier inoxydable et bois rouge.<br />- Longueur : 120 mm.<br />- Largeur : 30 mm.<br />- Hauteur : 15 mm.&nbsp;<br />- Poids : 120 gr.<br />- Ne pas mettre au lave vaisselle.</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 {#8630 …}
      #channels: Doctrine\ORM\PersistentCollection {#8616 …}
      #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8564 …}
      #reviews: Doctrine\ORM\PersistentCollection {#8612 …}
      #averageRating: 0.0
      #images: Doctrine\ORM\PersistentCollection {#8614 …}
      #productType: null
    }
    "class" => "w-100 h-100 object-fit-cover"
  ]
}
sylius_shop:catalog_promotions
[Anonymous]
114.0 MiB 0.70 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29910
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29901 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29971 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29898 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#29846 …}
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#29854
    #collection: Doctrine\Common\Collections\ArrayCollection {#29863 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#29842 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38336 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38338 …}
  }
  "withDescription" => false
]
Attributes
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29910
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29901 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29971 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29898 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => "Tire Bouchon Sommelier Bois Point Virgule"
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#29854
    #collection: Doctrine\Common\Collections\ArrayCollection {#29863 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#29842 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38336 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38338 …}
  }
  "withDescription" => false
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#29975
  -props: [
    "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29910
      +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29901 …}
      +context: Sylius\TwigHooks\Bag\DataBag {#29971 …}
      +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29898 …}
      +prefixes: [
        "sylius_shop.product.index.content.body.main.card.prices"
        "sylius_shop.shared.product.card.prices"
      ]
    }
    "variant" => App\Entity\Product\ProductVariant {#29846 …}
    "applied_promotions" => Doctrine\ORM\PersistentCollection {#29854
      #collection: Doctrine\Common\Collections\ArrayCollection {#29863 …}
      #initialized: true
      -snapshot: []
      -owner: App\Entity\Channel\ChannelPricing {#29842 …}
      -association: Symfony\Component\VarDumper\Caster\CutStub {#38336 …}
      -backRefFieldName: null
      -isDirty: false
      -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
      -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38338 …}
    }
    "withDescription" => false
  ]
}
sylius_shop:product:card:price Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent 114.0 MiB 0.15 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30025
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30016 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30023 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30024 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#29846 …}
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Attributes
[
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent {#30028
  +variant: App\Entity\Product\ProductVariant {#29846 …}
  +price: "25,00\u{A0}"
  +originalPrice: "25,00\u{A0}"
  +hasDiscount: false
  #productVariantPricesCalculator: Sylius\Component\Core\Calculator\ProductVariantPriceCalculator {#5465 …}
  #moneyFormatter: Sylius\Bundle\MoneyBundle\Formatter\MoneyFormatter {#9064 …}
  #channelContext: Sylius\Component\Channel\Context\CachedPerRequestChannelContext {#4203 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  #currencyContext: Sylius\Component\Core\Currency\Context\ChannelAwareCurrencyContext {#12494 …}
  #currencyConverter: Sylius\Component\Currency\Converter\CurrencyConverter {#9061 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30025
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30016 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30023 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30024 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
}
sylius_shop:product:card Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent 114.0 MiB 4.36 ms
Input props
[
  "product" => App\Entity\Product\Product {#8634
    #id: 2568
    #code: "tire-bouchon-andree-jardin-7086"
    #attributes: Doctrine\ORM\PersistentCollection {#8641 …}
    #variants: Doctrine\ORM\PersistentCollection {#8643 …}
    #options: Doctrine\ORM\PersistentCollection {#8647 …}
    #associations: Doctrine\ORM\PersistentCollection {#8645 …}
    #createdAt: DateTime @1758632577 {#8632
      date: 2025-09-23 21:02:57.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632577 {#8633
      date: 2025-09-23 21:02:57.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8650 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8651
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8634}
        #id: 2568
        #name: "Tire-Bouchon Andrée Jardin"
        #slug: "tire-bouchon-andree-jardin-7086"
        #description: """
          <div class="col is-12"><div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Efficace et malin.</div>\n
          <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Avec un petit truc en plus, une brosse qui &eacute;limine tous les r&eacute;sidus au moment du d&eacute;bouchage ! T</div>\n
          <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Tout simple mais costaud qui r&eacute;siste au temps. Et des mat&eacute;riaux nobles et sains : inox, ch&ecirc;ne et crin naturel.</div>\n
          <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Fabriqu&eacute; en France.</div>\n
          <div>\n
          <ul>\n
          <li>Avec un petit truc en plus, une brosse qui &eacute;limine tous les r&eacute;sidus au moment du d&eacute;bouchage !&nbsp;</li>\n
          <li>Tout simple mais costaud qui r&eacute;siste au temps. Et des mat&eacute;riaux nobles et sains : inox, ch&ecirc;ne et crin naturel.</li>\n
          <li><strong>Fabriqu&eacute; en France. La Chapelle sur Erdre. Loire Atlantique (44)</strong></li>\n
          </ul>\n
          </div></div><h1>Un tire-bouchon efficace et malin</h1><div class="col is-12"><div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Mais &agrave; quoi peut bien servir cette petite brosse ? Lorsque l'on d&eacute;bouche une bonne bouteille qui a pris un peu d'&acirc;ge, il n'est pas rare d'observer des r&eacute;sidus provenant du bouchon qui viennent malencontreusement se d&eacute;poser sur le goulot. Pour &eacute;viter qu'ils ne viennent souiller votre pr&eacute;cieux breuvage, un coup de brosse et c'est fini ! La brosse peut aussi servir &agrave; retirer la poussi&egrave;re sur l'&eacute;tiquette.</div>\n
          <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Mais n'oublions pas que sa fonction premi&egrave;re est d'ouvrir les bouteilles ! Nos amis de la fabrique Andr&eacute; Jardin se sont donc attel&eacute;s &agrave; &eacute;quiper leur tire-bouchon d'une m&egrave;che tout inox efficace qui convient &agrave; tous les types de bouchon. Au fait, vous &ecirc;tes plut&ocirc;t bouchon li&egrave;ge ou bouchon synth&eacute;tique ?</div>\n
          <div>Mais &agrave; quoi peut bien servir cette petite brosse ? Lorsque l'on d&eacute;bouche une bonne bouteille qui a pris un peu d'&acirc;ge, il n'est pas rare d'observer des r&eacute;sidus provenant du bouchon qui viennent malencontreusement se d&eacute;poser sur le goulot. Pour &eacute;viter qu'ils ne viennent souiller votre pr&eacute;cieux breuvage, un coup de brosse et c'est fini ! La brosse peut aussi servir &agrave; retirer la poussi&egrave;re sur l'&eacute;tiquette.<br /><br /></div>\n
          <div>Mais n'oublions pas que sa fonction premi&egrave;re est d'ouvrir les bouteilles ! Nos amis de la fabrique Andr&eacute; Jardin se sont donc attel&eacute;s &agrave; &eacute;quiper leur tire-bouchon d'une m&egrave;che tout inox efficace qui convient &agrave; tous les types de bouchon. Au fait, vous &ecirc;tes plut&ocirc;t bouchon li&egrave;ge ou bouchon synth&eacute;tique ?</div></div><h1>Caractéristiques Tire-Bouchon Andrée Jardin</h1><div class="col is-12"><div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Mat&eacute;riaux</div>\n
          <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Ch&ecirc;ne pour la poign&eacute;e. Inox pour la m&egrave;che. Crin naturel pour la brosse.</div>\n
          <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Dimensions</div>\n
          <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">11 x 11 cm</div>\n
          <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Garantie</div>\n
          <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">1 an</div>\n
          <div><strong>Mat&eacute;riaux</strong></div>\n
          <div>Ch&ecirc;ne pour la poign&eacute;e. Inox pour la m&egrave;che. Crin naturel pour la brosse.</div>\n
          <div></div>\n
          <div><strong>Dimensions</strong></div>\n
          <div>11 x 11 cm</div>\n
          <div></div>\n
          <div><strong>Garantie</strong></div>\n
          <div>1 an</div></div>
          """
        #metaKeywords: null
        #metaDescription: null
        #shortDescription: null
        -fullTitle: null
        -metaTitle: null
      }
    ]
    #currentLocale: "fr_FR"
    #currentTranslation: null
    #fallbackLocale: "fr_FR"
    #variantSelectionMethod: "choice"
    #productTaxons: Doctrine\ORM\PersistentCollection {#8653 …}
    #channels: Doctrine\ORM\PersistentCollection {#8639 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8564 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8635 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8637 …}
    #productType: null
  }
  "template" => "@SyliusShop/product/common/card.html.twig"
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27705
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27738 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27744 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27731 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
]
Attributes
[
  "template" => "@SyliusShop/product/common/card.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent {#29908
  +product: App\Entity\Product\Product {#8634
    #id: 2568
    #code: "tire-bouchon-andree-jardin-7086"
    #attributes: Doctrine\ORM\PersistentCollection {#8641 …}
    #variants: Doctrine\ORM\PersistentCollection {#8643 …}
    #options: Doctrine\ORM\PersistentCollection {#8647 …}
    #associations: Doctrine\ORM\PersistentCollection {#8645 …}
    #createdAt: DateTime @1758632577 {#8632
      date: 2025-09-23 21:02:57.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632577 {#8633
      date: 2025-09-23 21:02:57.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8650 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8651
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8634}
        #id: 2568
        #name: "Tire-Bouchon Andrée Jardin"
        #slug: "tire-bouchon-andree-jardin-7086"
        #description: """
          <div class="col is-12"><div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Efficace et malin.</div>\n
          <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Avec un petit truc en plus, une brosse qui &eacute;limine tous les r&eacute;sidus au moment du d&eacute;bouchage ! T</div>\n
          <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Tout simple mais costaud qui r&eacute;siste au temps. Et des mat&eacute;riaux nobles et sains : inox, ch&ecirc;ne et crin naturel.</div>\n
          <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Fabriqu&eacute; en France.</div>\n
          <div>\n
          <ul>\n
          <li>Avec un petit truc en plus, une brosse qui &eacute;limine tous les r&eacute;sidus au moment du d&eacute;bouchage !&nbsp;</li>\n
          <li>Tout simple mais costaud qui r&eacute;siste au temps. Et des mat&eacute;riaux nobles et sains : inox, ch&ecirc;ne et crin naturel.</li>\n
          <li><strong>Fabriqu&eacute; en France. La Chapelle sur Erdre. Loire Atlantique (44)</strong></li>\n
          </ul>\n
          </div></div><h1>Un tire-bouchon efficace et malin</h1><div class="col is-12"><div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Mais &agrave; quoi peut bien servir cette petite brosse ? Lorsque l'on d&eacute;bouche une bonne bouteille qui a pris un peu d'&acirc;ge, il n'est pas rare d'observer des r&eacute;sidus provenant du bouchon qui viennent malencontreusement se d&eacute;poser sur le goulot. Pour &eacute;viter qu'ils ne viennent souiller votre pr&eacute;cieux breuvage, un coup de brosse et c'est fini ! La brosse peut aussi servir &agrave; retirer la poussi&egrave;re sur l'&eacute;tiquette.</div>\n
          <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Mais n'oublions pas que sa fonction premi&egrave;re est d'ouvrir les bouteilles ! Nos amis de la fabrique Andr&eacute; Jardin se sont donc attel&eacute;s &agrave; &eacute;quiper leur tire-bouchon d'une m&egrave;che tout inox efficace qui convient &agrave; tous les types de bouchon. Au fait, vous &ecirc;tes plut&ocirc;t bouchon li&egrave;ge ou bouchon synth&eacute;tique ?</div>\n
          <div>Mais &agrave; quoi peut bien servir cette petite brosse ? Lorsque l'on d&eacute;bouche une bonne bouteille qui a pris un peu d'&acirc;ge, il n'est pas rare d'observer des r&eacute;sidus provenant du bouchon qui viennent malencontreusement se d&eacute;poser sur le goulot. Pour &eacute;viter qu'ils ne viennent souiller votre pr&eacute;cieux breuvage, un coup de brosse et c'est fini ! La brosse peut aussi servir &agrave; retirer la poussi&egrave;re sur l'&eacute;tiquette.<br /><br /></div>\n
          <div>Mais n'oublions pas que sa fonction premi&egrave;re est d'ouvrir les bouteilles ! Nos amis de la fabrique Andr&eacute; Jardin se sont donc attel&eacute;s &agrave; &eacute;quiper leur tire-bouchon d'une m&egrave;che tout inox efficace qui convient &agrave; tous les types de bouchon. Au fait, vous &ecirc;tes plut&ocirc;t bouchon li&egrave;ge ou bouchon synth&eacute;tique ?</div></div><h1>Caractéristiques Tire-Bouchon Andrée Jardin</h1><div class="col is-12"><div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Mat&eacute;riaux</div>\n
          <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Ch&ecirc;ne pour la poign&eacute;e. Inox pour la m&egrave;che. Crin naturel pour la brosse.</div>\n
          <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Dimensions</div>\n
          <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">11 x 11 cm</div>\n
          <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Garantie</div>\n
          <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">1 an</div>\n
          <div><strong>Mat&eacute;riaux</strong></div>\n
          <div>Ch&ecirc;ne pour la poign&eacute;e. Inox pour la m&egrave;che. Crin naturel pour la brosse.</div>\n
          <div></div>\n
          <div><strong>Dimensions</strong></div>\n
          <div>11 x 11 cm</div>\n
          <div></div>\n
          <div><strong>Garantie</strong></div>\n
          <div>1 an</div></div>
          """
        #metaKeywords: null
        #metaDescription: null
        #shortDescription: null
        -fullTitle: null
        -metaTitle: null
      }
    ]
    #currentLocale: "fr_FR"
    #currentTranslation: null
    #fallbackLocale: "fr_FR"
    #variantSelectionMethod: "choice"
    #productTaxons: Doctrine\ORM\PersistentCollection {#8653 …}
    #channels: Doctrine\ORM\PersistentCollection {#8639 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8564 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8635 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8637 …}
    #productType: null
  }
  +variant: App\Entity\Product\ProductVariant {#30091 …}
  +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 {#27705
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27738 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27744 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27731 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
}
sylius_shop:main_image
[Anonymous]
114.0 MiB 0.72 ms
Input props
[
  "product" => App\Entity\Product\Product {#8634
    #id: 2568
    #code: "tire-bouchon-andree-jardin-7086"
    #attributes: Doctrine\ORM\PersistentCollection {#8641 …}
    #variants: Doctrine\ORM\PersistentCollection {#8643 …}
    #options: Doctrine\ORM\PersistentCollection {#8647 …}
    #associations: Doctrine\ORM\PersistentCollection {#8645 …}
    #createdAt: DateTime @1758632577 {#8632
      date: 2025-09-23 21:02:57.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632577 {#8633
      date: 2025-09-23 21:02:57.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8650 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8651
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8634}
        #id: 2568
        #name: "Tire-Bouchon Andrée Jardin"
        #slug: "tire-bouchon-andree-jardin-7086"
        #description: """
          <div class="col is-12"><div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Efficace et malin.</div>\n
          <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Avec un petit truc en plus, une brosse qui &eacute;limine tous les r&eacute;sidus au moment du d&eacute;bouchage ! T</div>\n
          <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Tout simple mais costaud qui r&eacute;siste au temps. Et des mat&eacute;riaux nobles et sains : inox, ch&ecirc;ne et crin naturel.</div>\n
          <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Fabriqu&eacute; en France.</div>\n
          <div>\n
          <ul>\n
          <li>Avec un petit truc en plus, une brosse qui &eacute;limine tous les r&eacute;sidus au moment du d&eacute;bouchage !&nbsp;</li>\n
          <li>Tout simple mais costaud qui r&eacute;siste au temps. Et des mat&eacute;riaux nobles et sains : inox, ch&ecirc;ne et crin naturel.</li>\n
          <li><strong>Fabriqu&eacute; en France. La Chapelle sur Erdre. Loire Atlantique (44)</strong></li>\n
          </ul>\n
          </div></div><h1>Un tire-bouchon efficace et malin</h1><div class="col is-12"><div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Mais &agrave; quoi peut bien servir cette petite brosse ? Lorsque l'on d&eacute;bouche une bonne bouteille qui a pris un peu d'&acirc;ge, il n'est pas rare d'observer des r&eacute;sidus provenant du bouchon qui viennent malencontreusement se d&eacute;poser sur le goulot. Pour &eacute;viter qu'ils ne viennent souiller votre pr&eacute;cieux breuvage, un coup de brosse et c'est fini ! La brosse peut aussi servir &agrave; retirer la poussi&egrave;re sur l'&eacute;tiquette.</div>\n
          <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Mais n'oublions pas que sa fonction premi&egrave;re est d'ouvrir les bouteilles ! Nos amis de la fabrique Andr&eacute; Jardin se sont donc attel&eacute;s &agrave; &eacute;quiper leur tire-bouchon d'une m&egrave;che tout inox efficace qui convient &agrave; tous les types de bouchon. Au fait, vous &ecirc;tes plut&ocirc;t bouchon li&egrave;ge ou bouchon synth&eacute;tique ?</div>\n
          <div>Mais &agrave; quoi peut bien servir cette petite brosse ? Lorsque l'on d&eacute;bouche une bonne bouteille qui a pris un peu d'&acirc;ge, il n'est pas rare d'observer des r&eacute;sidus provenant du bouchon qui viennent malencontreusement se d&eacute;poser sur le goulot. Pour &eacute;viter qu'ils ne viennent souiller votre pr&eacute;cieux breuvage, un coup de brosse et c'est fini ! La brosse peut aussi servir &agrave; retirer la poussi&egrave;re sur l'&eacute;tiquette.<br /><br /></div>\n
          <div>Mais n'oublions pas que sa fonction premi&egrave;re est d'ouvrir les bouteilles ! Nos amis de la fabrique Andr&eacute; Jardin se sont donc attel&eacute;s &agrave; &eacute;quiper leur tire-bouchon d'une m&egrave;che tout inox efficace qui convient &agrave; tous les types de bouchon. Au fait, vous &ecirc;tes plut&ocirc;t bouchon li&egrave;ge ou bouchon synth&eacute;tique ?</div></div><h1>Caractéristiques Tire-Bouchon Andrée Jardin</h1><div class="col is-12"><div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Mat&eacute;riaux</div>\n
          <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Ch&ecirc;ne pour la poign&eacute;e. Inox pour la m&egrave;che. Crin naturel pour la brosse.</div>\n
          <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Dimensions</div>\n
          <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">11 x 11 cm</div>\n
          <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Garantie</div>\n
          <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">1 an</div>\n
          <div><strong>Mat&eacute;riaux</strong></div>\n
          <div>Ch&ecirc;ne pour la poign&eacute;e. Inox pour la m&egrave;che. Crin naturel pour la brosse.</div>\n
          <div></div>\n
          <div><strong>Dimensions</strong></div>\n
          <div>11 x 11 cm</div>\n
          <div></div>\n
          <div><strong>Garantie</strong></div>\n
          <div>1 an</div></div>
          """
        #metaKeywords: null
        #metaDescription: null
        #shortDescription: null
        -fullTitle: null
        -metaTitle: null
      }
    ]
    #currentLocale: "fr_FR"
    #currentTranslation: null
    #fallbackLocale: "fr_FR"
    #variantSelectionMethod: "choice"
    #productTaxons: Doctrine\ORM\PersistentCollection {#8653 …}
    #channels: Doctrine\ORM\PersistentCollection {#8639 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8564 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8635 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8637 …}
    #productType: null
  }
  "class" => "w-100 h-100 object-fit-cover"
]
Attributes
[
  "product" => "Tire-Bouchon Andrée Jardin"
  "class" => "w-100 h-100 object-fit-cover"
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#30162
  -props: [
    "product" => App\Entity\Product\Product {#8634
      #id: 2568
      #code: "tire-bouchon-andree-jardin-7086"
      #attributes: Doctrine\ORM\PersistentCollection {#8641 …}
      #variants: Doctrine\ORM\PersistentCollection {#8643 …}
      #options: Doctrine\ORM\PersistentCollection {#8647 …}
      #associations: Doctrine\ORM\PersistentCollection {#8645 …}
      #createdAt: DateTime @1758632577 {#8632
        date: 2025-09-23 21:02:57.0 PRC (+08:00)
      }
      #updatedAt: DateTime @1758632577 {#8633
        date: 2025-09-23 21:02:57.0 PRC (+08:00)
      }
      #enabled: true
      #translations: Doctrine\ORM\PersistentCollection {#8650 …}
      #translationsCache: [
        "fr_FR" => App\Entity\Product\ProductTranslation {#8651
          #locale: "fr_FR"
          #translatable: App\Entity\Product\Product {#8634}
          #id: 2568
          #name: "Tire-Bouchon Andrée Jardin"
          #slug: "tire-bouchon-andree-jardin-7086"
          #description: """
            <div class="col is-12"><div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Efficace et malin.</div>\n
            <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Avec un petit truc en plus, une brosse qui &eacute;limine tous les r&eacute;sidus au moment du d&eacute;bouchage ! T</div>\n
            <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Tout simple mais costaud qui r&eacute;siste au temps. Et des mat&eacute;riaux nobles et sains : inox, ch&ecirc;ne et crin naturel.</div>\n
            <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Fabriqu&eacute; en France.</div>\n
            <div>\n
            <ul>\n
            <li>Avec un petit truc en plus, une brosse qui &eacute;limine tous les r&eacute;sidus au moment du d&eacute;bouchage !&nbsp;</li>\n
            <li>Tout simple mais costaud qui r&eacute;siste au temps. Et des mat&eacute;riaux nobles et sains : inox, ch&ecirc;ne et crin naturel.</li>\n
            <li><strong>Fabriqu&eacute; en France. La Chapelle sur Erdre. Loire Atlantique (44)</strong></li>\n
            </ul>\n
            </div></div><h1>Un tire-bouchon efficace et malin</h1><div class="col is-12"><div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Mais &agrave; quoi peut bien servir cette petite brosse ? Lorsque l'on d&eacute;bouche une bonne bouteille qui a pris un peu d'&acirc;ge, il n'est pas rare d'observer des r&eacute;sidus provenant du bouchon qui viennent malencontreusement se d&eacute;poser sur le goulot. Pour &eacute;viter qu'ils ne viennent souiller votre pr&eacute;cieux breuvage, un coup de brosse et c'est fini ! La brosse peut aussi servir &agrave; retirer la poussi&egrave;re sur l'&eacute;tiquette.</div>\n
            <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Mais n'oublions pas que sa fonction premi&egrave;re est d'ouvrir les bouteilles ! Nos amis de la fabrique Andr&eacute; Jardin se sont donc attel&eacute;s &agrave; &eacute;quiper leur tire-bouchon d'une m&egrave;che tout inox efficace qui convient &agrave; tous les types de bouchon. Au fait, vous &ecirc;tes plut&ocirc;t bouchon li&egrave;ge ou bouchon synth&eacute;tique ?</div>\n
            <div>Mais &agrave; quoi peut bien servir cette petite brosse ? Lorsque l'on d&eacute;bouche une bonne bouteille qui a pris un peu d'&acirc;ge, il n'est pas rare d'observer des r&eacute;sidus provenant du bouchon qui viennent malencontreusement se d&eacute;poser sur le goulot. Pour &eacute;viter qu'ils ne viennent souiller votre pr&eacute;cieux breuvage, un coup de brosse et c'est fini ! La brosse peut aussi servir &agrave; retirer la poussi&egrave;re sur l'&eacute;tiquette.<br /><br /></div>\n
            <div>Mais n'oublions pas que sa fonction premi&egrave;re est d'ouvrir les bouteilles ! Nos amis de la fabrique Andr&eacute; Jardin se sont donc attel&eacute;s &agrave; &eacute;quiper leur tire-bouchon d'une m&egrave;che tout inox efficace qui convient &agrave; tous les types de bouchon. Au fait, vous &ecirc;tes plut&ocirc;t bouchon li&egrave;ge ou bouchon synth&eacute;tique ?</div></div><h1>Caractéristiques Tire-Bouchon Andrée Jardin</h1><div class="col is-12"><div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Mat&eacute;riaux</div>\n
            <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Ch&ecirc;ne pour la poign&eacute;e. Inox pour la m&egrave;che. Crin naturel pour la brosse.</div>\n
            <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Dimensions</div>\n
            <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">11 x 11 cm</div>\n
            <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Garantie</div>\n
            <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">1 an</div>\n
            <div><strong>Mat&eacute;riaux</strong></div>\n
            <div>Ch&ecirc;ne pour la poign&eacute;e. Inox pour la m&egrave;che. Crin naturel pour la brosse.</div>\n
            <div></div>\n
            <div><strong>Dimensions</strong></div>\n
            <div>11 x 11 cm</div>\n
            <div></div>\n
            <div><strong>Garantie</strong></div>\n
            <div>1 an</div></div>
            """
          #metaKeywords: null
          #metaDescription: null
          #shortDescription: null
          -fullTitle: null
          -metaTitle: null
        }
      ]
      #currentLocale: "fr_FR"
      #currentTranslation: null
      #fallbackLocale: "fr_FR"
      #variantSelectionMethod: "choice"
      #productTaxons: Doctrine\ORM\PersistentCollection {#8653 …}
      #channels: Doctrine\ORM\PersistentCollection {#8639 …}
      #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8564 …}
      #reviews: Doctrine\ORM\PersistentCollection {#8635 …}
      #averageRating: 0.0
      #images: Doctrine\ORM\PersistentCollection {#8637 …}
      #productType: null
    }
    "class" => "w-100 h-100 object-fit-cover"
  ]
}
sylius_shop:catalog_promotions
[Anonymous]
114.0 MiB 0.66 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30155
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30146 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30222 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30143 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#30091 …}
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#30099
    #collection: Doctrine\Common\Collections\ArrayCollection {#30108 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#30087 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38350 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38352 …}
  }
  "withDescription" => false
]
Attributes
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30155
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30146 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30222 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30143 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => "Tire-Bouchon Andrée Jardin"
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#30099
    #collection: Doctrine\Common\Collections\ArrayCollection {#30108 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#30087 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38350 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38352 …}
  }
  "withDescription" => false
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#30226
  -props: [
    "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30155
      +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30146 …}
      +context: Sylius\TwigHooks\Bag\DataBag {#30222 …}
      +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30143 …}
      +prefixes: [
        "sylius_shop.product.index.content.body.main.card.prices"
        "sylius_shop.shared.product.card.prices"
      ]
    }
    "variant" => App\Entity\Product\ProductVariant {#30091 …}
    "applied_promotions" => Doctrine\ORM\PersistentCollection {#30099
      #collection: Doctrine\Common\Collections\ArrayCollection {#30108 …}
      #initialized: true
      -snapshot: []
      -owner: App\Entity\Channel\ChannelPricing {#30087 …}
      -association: Symfony\Component\VarDumper\Caster\CutStub {#38350 …}
      -backRefFieldName: null
      -isDirty: false
      -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
      -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38352 …}
    }
    "withDescription" => false
  ]
}
sylius_shop:product:card:price Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent 114.0 MiB 0.15 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30276
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30267 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30274 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30275 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#30091 …}
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Attributes
[
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent {#30279
  +variant: App\Entity\Product\ProductVariant {#30091 …}
  +price: "18,00\u{A0}"
  +originalPrice: "18,00\u{A0}"
  +hasDiscount: false
  #productVariantPricesCalculator: Sylius\Component\Core\Calculator\ProductVariantPriceCalculator {#5465 …}
  #moneyFormatter: Sylius\Bundle\MoneyBundle\Formatter\MoneyFormatter {#9064 …}
  #channelContext: Sylius\Component\Channel\Context\CachedPerRequestChannelContext {#4203 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  #currencyContext: Sylius\Component\Core\Currency\Context\ChannelAwareCurrencyContext {#12494 …}
  #currencyConverter: Sylius\Component\Currency\Converter\CurrencyConverter {#9061 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30276
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30267 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30274 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30275 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
}
sylius_shop:product:card Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent 114.0 MiB 5.56 ms
Input props
[
  "product" => App\Entity\Product\Product {#8657
    #id: 2570
    #code: "ouvre-bouteille-a-champagne-vacuvin-7696"
    #attributes: Doctrine\ORM\PersistentCollection {#8664 …}
    #variants: Doctrine\ORM\PersistentCollection {#8666 …}
    #options: Doctrine\ORM\PersistentCollection {#8670 …}
    #associations: Doctrine\ORM\PersistentCollection {#8668 …}
    #createdAt: DateTime @1758632577 {#8655
      date: 2025-09-23 21:02:57.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632577 {#8656
      date: 2025-09-23 21:02:57.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8673 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8674
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8657}
        #id: 2570
        #name: "Ouvre Bouteille à Champagne Vacuvin"
        #slug: "ouvre-bouteille-a-champagne-vacuvin-7696"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Enl&egrave;ve le film, le capuchon en fer et le li&egrave;ge.</li>\n
          <li>Ergonomique.</li>\n
          <li>Acier inoxydable et polypropyl&egrave;ne.</li>\n
          </ul></div><h1>Descriptif Ouvre Bouteille à Champagne Vacuvin</h1><div class="col is-12">L'Ouvre Bouteille &agrave; Champagne Vacuvin enl&egrave;ve le film, le capuchon en fer et le li&egrave;ge en un seul mouvement. De part sa forme g&eacute;n&eacute;ral et la tr&egrave;s bonne prise en main de sa poign&eacute;e, il ne n&eacute;cessite que peu d'effort. Il peut m&ecirc;me servir de casse-noix !&nbsp;</div><h1>Caractéristiques Ouvre Bouteille à Champagne Vacuvin</h1><div class="col is-12">- Acier inoxydable et polypropyl&egrave;ne.<br />- Prise confortable.<br />- Peu d'effort.<br />- Dimensions : 4 x 3,6 x 15,6 cm.</div>
          """
        #metaKeywords: null
        #metaDescription: null
        #shortDescription: null
        -fullTitle: null
        -metaTitle: null
      }
    ]
    #currentLocale: "fr_FR"
    #currentTranslation: null
    #fallbackLocale: "fr_FR"
    #variantSelectionMethod: "choice"
    #productTaxons: Doctrine\ORM\PersistentCollection {#8676 …}
    #channels: Doctrine\ORM\PersistentCollection {#8662 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8564 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8658 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8660 …}
    #productType: null
  }
  "template" => "@SyliusShop/product/common/card.html.twig"
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27705
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27738 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27744 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27731 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
]
Attributes
[
  "template" => "@SyliusShop/product/common/card.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent {#30153
  +product: App\Entity\Product\Product {#8657
    #id: 2570
    #code: "ouvre-bouteille-a-champagne-vacuvin-7696"
    #attributes: Doctrine\ORM\PersistentCollection {#8664 …}
    #variants: Doctrine\ORM\PersistentCollection {#8666 …}
    #options: Doctrine\ORM\PersistentCollection {#8670 …}
    #associations: Doctrine\ORM\PersistentCollection {#8668 …}
    #createdAt: DateTime @1758632577 {#8655
      date: 2025-09-23 21:02:57.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632577 {#8656
      date: 2025-09-23 21:02:57.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8673 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8674
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8657}
        #id: 2570
        #name: "Ouvre Bouteille à Champagne Vacuvin"
        #slug: "ouvre-bouteille-a-champagne-vacuvin-7696"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Enl&egrave;ve le film, le capuchon en fer et le li&egrave;ge.</li>\n
          <li>Ergonomique.</li>\n
          <li>Acier inoxydable et polypropyl&egrave;ne.</li>\n
          </ul></div><h1>Descriptif Ouvre Bouteille à Champagne Vacuvin</h1><div class="col is-12">L'Ouvre Bouteille &agrave; Champagne Vacuvin enl&egrave;ve le film, le capuchon en fer et le li&egrave;ge en un seul mouvement. De part sa forme g&eacute;n&eacute;ral et la tr&egrave;s bonne prise en main de sa poign&eacute;e, il ne n&eacute;cessite que peu d'effort. Il peut m&ecirc;me servir de casse-noix !&nbsp;</div><h1>Caractéristiques Ouvre Bouteille à Champagne Vacuvin</h1><div class="col is-12">- Acier inoxydable et polypropyl&egrave;ne.<br />- Prise confortable.<br />- Peu d'effort.<br />- Dimensions : 4 x 3,6 x 15,6 cm.</div>
          """
        #metaKeywords: null
        #metaDescription: null
        #shortDescription: null
        -fullTitle: null
        -metaTitle: null
      }
    ]
    #currentLocale: "fr_FR"
    #currentTranslation: null
    #fallbackLocale: "fr_FR"
    #variantSelectionMethod: "choice"
    #productTaxons: Doctrine\ORM\PersistentCollection {#8676 …}
    #channels: Doctrine\ORM\PersistentCollection {#8662 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8564 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8658 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8660 …}
    #productType: null
  }
  +variant: App\Entity\Product\ProductVariant {#30342 …}
  +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 {#27705
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27738 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27744 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27731 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
}
sylius_shop:main_image
[Anonymous]
114.0 MiB 0.79 ms
Input props
[
  "product" => App\Entity\Product\Product {#8657
    #id: 2570
    #code: "ouvre-bouteille-a-champagne-vacuvin-7696"
    #attributes: Doctrine\ORM\PersistentCollection {#8664 …}
    #variants: Doctrine\ORM\PersistentCollection {#8666 …}
    #options: Doctrine\ORM\PersistentCollection {#8670 …}
    #associations: Doctrine\ORM\PersistentCollection {#8668 …}
    #createdAt: DateTime @1758632577 {#8655
      date: 2025-09-23 21:02:57.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632577 {#8656
      date: 2025-09-23 21:02:57.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8673 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8674
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8657}
        #id: 2570
        #name: "Ouvre Bouteille à Champagne Vacuvin"
        #slug: "ouvre-bouteille-a-champagne-vacuvin-7696"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Enl&egrave;ve le film, le capuchon en fer et le li&egrave;ge.</li>\n
          <li>Ergonomique.</li>\n
          <li>Acier inoxydable et polypropyl&egrave;ne.</li>\n
          </ul></div><h1>Descriptif Ouvre Bouteille à Champagne Vacuvin</h1><div class="col is-12">L'Ouvre Bouteille &agrave; Champagne Vacuvin enl&egrave;ve le film, le capuchon en fer et le li&egrave;ge en un seul mouvement. De part sa forme g&eacute;n&eacute;ral et la tr&egrave;s bonne prise en main de sa poign&eacute;e, il ne n&eacute;cessite que peu d'effort. Il peut m&ecirc;me servir de casse-noix !&nbsp;</div><h1>Caractéristiques Ouvre Bouteille à Champagne Vacuvin</h1><div class="col is-12">- Acier inoxydable et polypropyl&egrave;ne.<br />- Prise confortable.<br />- Peu d'effort.<br />- Dimensions : 4 x 3,6 x 15,6 cm.</div>
          """
        #metaKeywords: null
        #metaDescription: null
        #shortDescription: null
        -fullTitle: null
        -metaTitle: null
      }
    ]
    #currentLocale: "fr_FR"
    #currentTranslation: null
    #fallbackLocale: "fr_FR"
    #variantSelectionMethod: "choice"
    #productTaxons: Doctrine\ORM\PersistentCollection {#8676 …}
    #channels: Doctrine\ORM\PersistentCollection {#8662 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8564 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8658 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8660 …}
    #productType: null
  }
  "class" => "w-100 h-100 object-fit-cover"
]
Attributes
[
  "product" => "Ouvre Bouteille à Champagne Vacuvin"
  "class" => "w-100 h-100 object-fit-cover"
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#30413
  -props: [
    "product" => App\Entity\Product\Product {#8657
      #id: 2570
      #code: "ouvre-bouteille-a-champagne-vacuvin-7696"
      #attributes: Doctrine\ORM\PersistentCollection {#8664 …}
      #variants: Doctrine\ORM\PersistentCollection {#8666 …}
      #options: Doctrine\ORM\PersistentCollection {#8670 …}
      #associations: Doctrine\ORM\PersistentCollection {#8668 …}
      #createdAt: DateTime @1758632577 {#8655
        date: 2025-09-23 21:02:57.0 PRC (+08:00)
      }
      #updatedAt: DateTime @1758632577 {#8656
        date: 2025-09-23 21:02:57.0 PRC (+08:00)
      }
      #enabled: true
      #translations: Doctrine\ORM\PersistentCollection {#8673 …}
      #translationsCache: [
        "fr_FR" => App\Entity\Product\ProductTranslation {#8674
          #locale: "fr_FR"
          #translatable: App\Entity\Product\Product {#8657}
          #id: 2570
          #name: "Ouvre Bouteille à Champagne Vacuvin"
          #slug: "ouvre-bouteille-a-champagne-vacuvin-7696"
          #description: """
            <div class="col is-12"><ul>\n
            <li>Enl&egrave;ve le film, le capuchon en fer et le li&egrave;ge.</li>\n
            <li>Ergonomique.</li>\n
            <li>Acier inoxydable et polypropyl&egrave;ne.</li>\n
            </ul></div><h1>Descriptif Ouvre Bouteille à Champagne Vacuvin</h1><div class="col is-12">L'Ouvre Bouteille &agrave; Champagne Vacuvin enl&egrave;ve le film, le capuchon en fer et le li&egrave;ge en un seul mouvement. De part sa forme g&eacute;n&eacute;ral et la tr&egrave;s bonne prise en main de sa poign&eacute;e, il ne n&eacute;cessite que peu d'effort. Il peut m&ecirc;me servir de casse-noix !&nbsp;</div><h1>Caractéristiques Ouvre Bouteille à Champagne Vacuvin</h1><div class="col is-12">- Acier inoxydable et polypropyl&egrave;ne.<br />- Prise confortable.<br />- Peu d'effort.<br />- Dimensions : 4 x 3,6 x 15,6 cm.</div>
            """
          #metaKeywords: null
          #metaDescription: null
          #shortDescription: null
          -fullTitle: null
          -metaTitle: null
        }
      ]
      #currentLocale: "fr_FR"
      #currentTranslation: null
      #fallbackLocale: "fr_FR"
      #variantSelectionMethod: "choice"
      #productTaxons: Doctrine\ORM\PersistentCollection {#8676 …}
      #channels: Doctrine\ORM\PersistentCollection {#8662 …}
      #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8564 …}
      #reviews: Doctrine\ORM\PersistentCollection {#8658 …}
      #averageRating: 0.0
      #images: Doctrine\ORM\PersistentCollection {#8660 …}
      #productType: null
    }
    "class" => "w-100 h-100 object-fit-cover"
  ]
}
sylius_shop:catalog_promotions
[Anonymous]
114.0 MiB 1.58 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30406
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30397 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30470 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30394 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#30342 …}
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#30350
    #collection: Doctrine\Common\Collections\ArrayCollection {#30359 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#30338 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38364 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38366 …}
  }
  "withDescription" => false
]
Attributes
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30406
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30397 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30470 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30394 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => "Ouvre Bouteille à Champagne Vacuvin"
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#30350
    #collection: Doctrine\Common\Collections\ArrayCollection {#30359 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#30338 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38364 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38366 …}
  }
  "withDescription" => false
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#30474
  -props: [
    "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30406
      +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30397 …}
      +context: Sylius\TwigHooks\Bag\DataBag {#30470 …}
      +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30394 …}
      +prefixes: [
        "sylius_shop.product.index.content.body.main.card.prices"
        "sylius_shop.shared.product.card.prices"
      ]
    }
    "variant" => App\Entity\Product\ProductVariant {#30342 …}
    "applied_promotions" => Doctrine\ORM\PersistentCollection {#30350
      #collection: Doctrine\Common\Collections\ArrayCollection {#30359 …}
      #initialized: true
      -snapshot: []
      -owner: App\Entity\Channel\ChannelPricing {#30338 …}
      -association: Symfony\Component\VarDumper\Caster\CutStub {#38364 …}
      -backRefFieldName: null
      -isDirty: false
      -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
      -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38366 …}
    }
    "withDescription" => false
  ]
}
sylius_shop:product:card:price Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent 114.0 MiB 0.16 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30524
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30515 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30522 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30523 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#30342 …}
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Attributes
[
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent {#30527
  +variant: App\Entity\Product\ProductVariant {#30342 …}
  +price: "16,00\u{A0}"
  +originalPrice: "16,00\u{A0}"
  +hasDiscount: false
  #productVariantPricesCalculator: Sylius\Component\Core\Calculator\ProductVariantPriceCalculator {#5465 …}
  #moneyFormatter: Sylius\Bundle\MoneyBundle\Formatter\MoneyFormatter {#9064 …}
  #channelContext: Sylius\Component\Channel\Context\CachedPerRequestChannelContext {#4203 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  #currencyContext: Sylius\Component\Core\Currency\Context\ChannelAwareCurrencyContext {#12494 …}
  #currencyConverter: Sylius\Component\Currency\Converter\CurrencyConverter {#9061 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30524
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30515 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30522 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30523 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
}
sylius_shop:product:card Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent 114.0 MiB 4.57 ms
Input props
[
  "product" => App\Entity\Product\Product {#8680
    #id: 2572
    #code: "tire-bouchon-electrique-rechargeable-elis-reverse-peugeot-7932"
    #attributes: Doctrine\ORM\PersistentCollection {#8687 …}
    #variants: Doctrine\ORM\PersistentCollection {#8689 …}
    #options: Doctrine\ORM\PersistentCollection {#8693 …}
    #associations: Doctrine\ORM\PersistentCollection {#8691 …}
    #createdAt: DateTime @1758632577 {#8678
      date: 2025-09-23 21:02:57.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632577 {#8679
      date: 2025-09-23 21:02:57.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8696 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8697
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8680}
        #id: 2572
        #name: "Tire-Bouchon Electrique Rechargeable Elis Reverse Peugeot"
        #slug: "tire-bouchon-electrique-rechargeable-elis-reverse-peugeot-7932"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Automatique.</li>\n
          <li>Rechargeable.</li>\n
          <li>Fabrication Fran&ccedil;aise.</li>\n
          </ul></div><h1>Descriptif Tire-Bouchon Electrique Rechargeable Elis Reverse Peugeot</h1><div class="col is-12">Le Tire-Bouchon Electrique Rechargeable Elis Reverse Peugeot conjugue &agrave; la perfection la chaleur du bois et l'innovation technologique. Il s'adapte &agrave; tous les goulots et &agrave; tous les bouchons qu'ils soient en li&egrave;ge ou en plastique. R&eacute;alis&eacute; en bois de H&ecirc;tre, son corps a &eacute;t&eacute; fa&ccedil;onn&eacute; avec le plus grand soin en France. Son fonctionnement est enti&egrave;rement automatique, une simple pression sur le goulot d&eacute;bouche la bouteille et une rotation de 90&deg; de l'ustensile &eacute;jecte le bouchon. Livr&eacute; avec un coupe-capsule et un chargeur, ses batteries Lithium-ion assurent en moyenne plus de 50 d&eacute;bouchages en une seule charge.</div><h1>Caractéristiques Tire-Bouchon Electrique Rechargeable Elis Reverse Peugeot</h1><div class="col is-12">- Automatique.<br />- Rechargeable.<br />- Bois de H&ecirc;tre.<br />- Taille : 21 cm.<br />- Livr&eacute; avec coupe-capsule et chargeur.<br />- Batteries Lithium ion.<br />- Fabriqu&eacute; en France.</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 {#8699 …}
    #channels: Doctrine\ORM\PersistentCollection {#8685 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8564 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8681 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8683 …}
    #productType: null
  }
  "template" => "@SyliusShop/product/common/card.html.twig"
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27705
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27738 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27744 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27731 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
]
Attributes
[
  "template" => "@SyliusShop/product/common/card.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent {#30404
  +product: App\Entity\Product\Product {#8680
    #id: 2572
    #code: "tire-bouchon-electrique-rechargeable-elis-reverse-peugeot-7932"
    #attributes: Doctrine\ORM\PersistentCollection {#8687 …}
    #variants: Doctrine\ORM\PersistentCollection {#8689 …}
    #options: Doctrine\ORM\PersistentCollection {#8693 …}
    #associations: Doctrine\ORM\PersistentCollection {#8691 …}
    #createdAt: DateTime @1758632577 {#8678
      date: 2025-09-23 21:02:57.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632577 {#8679
      date: 2025-09-23 21:02:57.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8696 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8697
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8680}
        #id: 2572
        #name: "Tire-Bouchon Electrique Rechargeable Elis Reverse Peugeot"
        #slug: "tire-bouchon-electrique-rechargeable-elis-reverse-peugeot-7932"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Automatique.</li>\n
          <li>Rechargeable.</li>\n
          <li>Fabrication Fran&ccedil;aise.</li>\n
          </ul></div><h1>Descriptif Tire-Bouchon Electrique Rechargeable Elis Reverse Peugeot</h1><div class="col is-12">Le Tire-Bouchon Electrique Rechargeable Elis Reverse Peugeot conjugue &agrave; la perfection la chaleur du bois et l'innovation technologique. Il s'adapte &agrave; tous les goulots et &agrave; tous les bouchons qu'ils soient en li&egrave;ge ou en plastique. R&eacute;alis&eacute; en bois de H&ecirc;tre, son corps a &eacute;t&eacute; fa&ccedil;onn&eacute; avec le plus grand soin en France. Son fonctionnement est enti&egrave;rement automatique, une simple pression sur le goulot d&eacute;bouche la bouteille et une rotation de 90&deg; de l'ustensile &eacute;jecte le bouchon. Livr&eacute; avec un coupe-capsule et un chargeur, ses batteries Lithium-ion assurent en moyenne plus de 50 d&eacute;bouchages en une seule charge.</div><h1>Caractéristiques Tire-Bouchon Electrique Rechargeable Elis Reverse Peugeot</h1><div class="col is-12">- Automatique.<br />- Rechargeable.<br />- Bois de H&ecirc;tre.<br />- Taille : 21 cm.<br />- Livr&eacute; avec coupe-capsule et chargeur.<br />- Batteries Lithium ion.<br />- Fabriqu&eacute; en France.</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 {#8699 …}
    #channels: Doctrine\ORM\PersistentCollection {#8685 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8564 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8681 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8683 …}
    #productType: null
  }
  +variant: App\Entity\Product\ProductVariant {#30590 …}
  +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 {#27705
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27738 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27744 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27731 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
}
sylius_shop:main_image
[Anonymous]
114.0 MiB 0.84 ms
Input props
[
  "product" => App\Entity\Product\Product {#8680
    #id: 2572
    #code: "tire-bouchon-electrique-rechargeable-elis-reverse-peugeot-7932"
    #attributes: Doctrine\ORM\PersistentCollection {#8687 …}
    #variants: Doctrine\ORM\PersistentCollection {#8689 …}
    #options: Doctrine\ORM\PersistentCollection {#8693 …}
    #associations: Doctrine\ORM\PersistentCollection {#8691 …}
    #createdAt: DateTime @1758632577 {#8678
      date: 2025-09-23 21:02:57.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632577 {#8679
      date: 2025-09-23 21:02:57.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8696 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8697
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8680}
        #id: 2572
        #name: "Tire-Bouchon Electrique Rechargeable Elis Reverse Peugeot"
        #slug: "tire-bouchon-electrique-rechargeable-elis-reverse-peugeot-7932"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Automatique.</li>\n
          <li>Rechargeable.</li>\n
          <li>Fabrication Fran&ccedil;aise.</li>\n
          </ul></div><h1>Descriptif Tire-Bouchon Electrique Rechargeable Elis Reverse Peugeot</h1><div class="col is-12">Le Tire-Bouchon Electrique Rechargeable Elis Reverse Peugeot conjugue &agrave; la perfection la chaleur du bois et l'innovation technologique. Il s'adapte &agrave; tous les goulots et &agrave; tous les bouchons qu'ils soient en li&egrave;ge ou en plastique. R&eacute;alis&eacute; en bois de H&ecirc;tre, son corps a &eacute;t&eacute; fa&ccedil;onn&eacute; avec le plus grand soin en France. Son fonctionnement est enti&egrave;rement automatique, une simple pression sur le goulot d&eacute;bouche la bouteille et une rotation de 90&deg; de l'ustensile &eacute;jecte le bouchon. Livr&eacute; avec un coupe-capsule et un chargeur, ses batteries Lithium-ion assurent en moyenne plus de 50 d&eacute;bouchages en une seule charge.</div><h1>Caractéristiques Tire-Bouchon Electrique Rechargeable Elis Reverse Peugeot</h1><div class="col is-12">- Automatique.<br />- Rechargeable.<br />- Bois de H&ecirc;tre.<br />- Taille : 21 cm.<br />- Livr&eacute; avec coupe-capsule et chargeur.<br />- Batteries Lithium ion.<br />- Fabriqu&eacute; en France.</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 {#8699 …}
    #channels: Doctrine\ORM\PersistentCollection {#8685 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8564 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8681 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8683 …}
    #productType: null
  }
  "class" => "w-100 h-100 object-fit-cover"
]
Attributes
[
  "product" => "Tire-Bouchon Electrique Rechargeable Elis Reverse Peugeot"
  "class" => "w-100 h-100 object-fit-cover"
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#30661
  -props: [
    "product" => App\Entity\Product\Product {#8680
      #id: 2572
      #code: "tire-bouchon-electrique-rechargeable-elis-reverse-peugeot-7932"
      #attributes: Doctrine\ORM\PersistentCollection {#8687 …}
      #variants: Doctrine\ORM\PersistentCollection {#8689 …}
      #options: Doctrine\ORM\PersistentCollection {#8693 …}
      #associations: Doctrine\ORM\PersistentCollection {#8691 …}
      #createdAt: DateTime @1758632577 {#8678
        date: 2025-09-23 21:02:57.0 PRC (+08:00)
      }
      #updatedAt: DateTime @1758632577 {#8679
        date: 2025-09-23 21:02:57.0 PRC (+08:00)
      }
      #enabled: true
      #translations: Doctrine\ORM\PersistentCollection {#8696 …}
      #translationsCache: [
        "fr_FR" => App\Entity\Product\ProductTranslation {#8697
          #locale: "fr_FR"
          #translatable: App\Entity\Product\Product {#8680}
          #id: 2572
          #name: "Tire-Bouchon Electrique Rechargeable Elis Reverse Peugeot"
          #slug: "tire-bouchon-electrique-rechargeable-elis-reverse-peugeot-7932"
          #description: """
            <div class="col is-12"><ul>\n
            <li>Automatique.</li>\n
            <li>Rechargeable.</li>\n
            <li>Fabrication Fran&ccedil;aise.</li>\n
            </ul></div><h1>Descriptif Tire-Bouchon Electrique Rechargeable Elis Reverse Peugeot</h1><div class="col is-12">Le Tire-Bouchon Electrique Rechargeable Elis Reverse Peugeot conjugue &agrave; la perfection la chaleur du bois et l'innovation technologique. Il s'adapte &agrave; tous les goulots et &agrave; tous les bouchons qu'ils soient en li&egrave;ge ou en plastique. R&eacute;alis&eacute; en bois de H&ecirc;tre, son corps a &eacute;t&eacute; fa&ccedil;onn&eacute; avec le plus grand soin en France. Son fonctionnement est enti&egrave;rement automatique, une simple pression sur le goulot d&eacute;bouche la bouteille et une rotation de 90&deg; de l'ustensile &eacute;jecte le bouchon. Livr&eacute; avec un coupe-capsule et un chargeur, ses batteries Lithium-ion assurent en moyenne plus de 50 d&eacute;bouchages en une seule charge.</div><h1>Caractéristiques Tire-Bouchon Electrique Rechargeable Elis Reverse Peugeot</h1><div class="col is-12">- Automatique.<br />- Rechargeable.<br />- Bois de H&ecirc;tre.<br />- Taille : 21 cm.<br />- Livr&eacute; avec coupe-capsule et chargeur.<br />- Batteries Lithium ion.<br />- Fabriqu&eacute; en France.</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 {#8699 …}
      #channels: Doctrine\ORM\PersistentCollection {#8685 …}
      #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8564 …}
      #reviews: Doctrine\ORM\PersistentCollection {#8681 …}
      #averageRating: 0.0
      #images: Doctrine\ORM\PersistentCollection {#8683 …}
      #productType: null
    }
    "class" => "w-100 h-100 object-fit-cover"
  ]
}
sylius_shop:catalog_promotions
[Anonymous]
114.0 MiB 0.61 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30654
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30645 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30721 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30642 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#30590 …}
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#30598
    #collection: Doctrine\Common\Collections\ArrayCollection {#30607 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#30586 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38378 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38380 …}
  }
  "withDescription" => false
]
Attributes
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30654
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30645 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30721 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30642 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => "Tire-Bouchon Electrique Rechargeable Elis Reverse Peugeot"
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#30598
    #collection: Doctrine\Common\Collections\ArrayCollection {#30607 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#30586 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38378 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38380 …}
  }
  "withDescription" => false
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#30725
  -props: [
    "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30654
      +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30645 …}
      +context: Sylius\TwigHooks\Bag\DataBag {#30721 …}
      +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30642 …}
      +prefixes: [
        "sylius_shop.product.index.content.body.main.card.prices"
        "sylius_shop.shared.product.card.prices"
      ]
    }
    "variant" => App\Entity\Product\ProductVariant {#30590 …}
    "applied_promotions" => Doctrine\ORM\PersistentCollection {#30598
      #collection: Doctrine\Common\Collections\ArrayCollection {#30607 …}
      #initialized: true
      -snapshot: []
      -owner: App\Entity\Channel\ChannelPricing {#30586 …}
      -association: Symfony\Component\VarDumper\Caster\CutStub {#38378 …}
      -backRefFieldName: null
      -isDirty: false
      -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
      -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38380 …}
    }
    "withDescription" => false
  ]
}
sylius_shop:product:card:price Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent 114.0 MiB 0.15 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30775
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30766 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30773 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30774 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#30590 …}
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Attributes
[
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent {#30778
  +variant: App\Entity\Product\ProductVariant {#30590 …}
  +price: "89,00\u{A0}"
  +originalPrice: "99,00\u{A0}"
  +hasDiscount: true
  #productVariantPricesCalculator: Sylius\Component\Core\Calculator\ProductVariantPriceCalculator {#5465 …}
  #moneyFormatter: Sylius\Bundle\MoneyBundle\Formatter\MoneyFormatter {#9064 …}
  #channelContext: Sylius\Component\Channel\Context\CachedPerRequestChannelContext {#4203 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  #currencyContext: Sylius\Component\Core\Currency\Context\ChannelAwareCurrencyContext {#12494 …}
  #currencyConverter: Sylius\Component\Currency\Converter\CurrencyConverter {#9061 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30775
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30766 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30773 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30774 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
}
sylius_shop:product:card Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent 114.0 MiB 4.53 ms
Input props
[
  "product" => App\Entity\Product\Product {#8703
    #id: 2575
    #code: "tire-bouchon-a-levier-arcos-753"
    #attributes: Doctrine\ORM\PersistentCollection {#8713 …}
    #variants: Doctrine\ORM\PersistentCollection {#8715 …}
    #options: Doctrine\ORM\PersistentCollection {#8719 …}
    #associations: Doctrine\ORM\PersistentCollection {#8717 …}
    #createdAt: DateTime @1758632578 {#8701
      date: 2025-09-23 21:02:58.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632578 {#8702
      date: 2025-09-23 21:02:58.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8722 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8723
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8703}
        #id: 2575
        #name: "Tire bouchon à levier Arcos"
        #slug: "tire-bouchon-a-levier-arcos-753"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Ejection automatique du bouchon</li>\n
          <li>S'adapte &agrave; toutes les bouteilles</li>\n
          <li>Garantie 2 ans</li>\n
          </ul></div><h1>Description Tire bouchon à levier Arcos</h1><div class="col is-12"><span style="text-align: justify; font-family: Verdana;">Ouvrez vos bouteilles sans aucun effort gr&acirc;ce au tire bouchon &agrave; levier Arcos. Il s</span><span style="text-align: justify; font-family: Verdana;">&rsquo;adapte &agrave; tous les types de bouteille. Ejection automatique du bouchon.&nbsp;</span></div><h1>Caractéristiques Tire bouchon à levier Arcos</h1><div class="col is-12"><span style="font-family: Verdana;">Corps et m&eacute;canisme inox et polypropyl&egrave;ne. M&egrave;che en acier tremp&eacute; t&eacute;flonn&eacute;. Livr&eacute; avec m&egrave;che de rechange, coupe capsule et pied.&nbsp;</span><span style="font-family: Verdana;">Garantie 2 ans.</span></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 {#8725 …}
    #channels: Doctrine\ORM\PersistentCollection {#8711 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8705 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8707 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8709 …}
    #productType: null
  }
  "template" => "@SyliusShop/product/common/card.html.twig"
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27705
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27738 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27744 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27731 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
]
Attributes
[
  "template" => "@SyliusShop/product/common/card.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent {#30652
  +product: App\Entity\Product\Product {#8703
    #id: 2575
    #code: "tire-bouchon-a-levier-arcos-753"
    #attributes: Doctrine\ORM\PersistentCollection {#8713 …}
    #variants: Doctrine\ORM\PersistentCollection {#8715 …}
    #options: Doctrine\ORM\PersistentCollection {#8719 …}
    #associations: Doctrine\ORM\PersistentCollection {#8717 …}
    #createdAt: DateTime @1758632578 {#8701
      date: 2025-09-23 21:02:58.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632578 {#8702
      date: 2025-09-23 21:02:58.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8722 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8723
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8703}
        #id: 2575
        #name: "Tire bouchon à levier Arcos"
        #slug: "tire-bouchon-a-levier-arcos-753"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Ejection automatique du bouchon</li>\n
          <li>S'adapte &agrave; toutes les bouteilles</li>\n
          <li>Garantie 2 ans</li>\n
          </ul></div><h1>Description Tire bouchon à levier Arcos</h1><div class="col is-12"><span style="text-align: justify; font-family: Verdana;">Ouvrez vos bouteilles sans aucun effort gr&acirc;ce au tire bouchon &agrave; levier Arcos. Il s</span><span style="text-align: justify; font-family: Verdana;">&rsquo;adapte &agrave; tous les types de bouteille. Ejection automatique du bouchon.&nbsp;</span></div><h1>Caractéristiques Tire bouchon à levier Arcos</h1><div class="col is-12"><span style="font-family: Verdana;">Corps et m&eacute;canisme inox et polypropyl&egrave;ne. M&egrave;che en acier tremp&eacute; t&eacute;flonn&eacute;. Livr&eacute; avec m&egrave;che de rechange, coupe capsule et pied.&nbsp;</span><span style="font-family: Verdana;">Garantie 2 ans.</span></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 {#8725 …}
    #channels: Doctrine\ORM\PersistentCollection {#8711 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8705 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8707 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8709 …}
    #productType: null
  }
  +variant: App\Entity\Product\ProductVariant {#30841 …}
  +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 {#27705
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27738 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27744 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27731 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
}
sylius_shop:main_image
[Anonymous]
114.0 MiB 0.73 ms
Input props
[
  "product" => App\Entity\Product\Product {#8703
    #id: 2575
    #code: "tire-bouchon-a-levier-arcos-753"
    #attributes: Doctrine\ORM\PersistentCollection {#8713 …}
    #variants: Doctrine\ORM\PersistentCollection {#8715 …}
    #options: Doctrine\ORM\PersistentCollection {#8719 …}
    #associations: Doctrine\ORM\PersistentCollection {#8717 …}
    #createdAt: DateTime @1758632578 {#8701
      date: 2025-09-23 21:02:58.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632578 {#8702
      date: 2025-09-23 21:02:58.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8722 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8723
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8703}
        #id: 2575
        #name: "Tire bouchon à levier Arcos"
        #slug: "tire-bouchon-a-levier-arcos-753"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Ejection automatique du bouchon</li>\n
          <li>S'adapte &agrave; toutes les bouteilles</li>\n
          <li>Garantie 2 ans</li>\n
          </ul></div><h1>Description Tire bouchon à levier Arcos</h1><div class="col is-12"><span style="text-align: justify; font-family: Verdana;">Ouvrez vos bouteilles sans aucun effort gr&acirc;ce au tire bouchon &agrave; levier Arcos. Il s</span><span style="text-align: justify; font-family: Verdana;">&rsquo;adapte &agrave; tous les types de bouteille. Ejection automatique du bouchon.&nbsp;</span></div><h1>Caractéristiques Tire bouchon à levier Arcos</h1><div class="col is-12"><span style="font-family: Verdana;">Corps et m&eacute;canisme inox et polypropyl&egrave;ne. M&egrave;che en acier tremp&eacute; t&eacute;flonn&eacute;. Livr&eacute; avec m&egrave;che de rechange, coupe capsule et pied.&nbsp;</span><span style="font-family: Verdana;">Garantie 2 ans.</span></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 {#8725 …}
    #channels: Doctrine\ORM\PersistentCollection {#8711 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8705 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8707 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8709 …}
    #productType: null
  }
  "class" => "w-100 h-100 object-fit-cover"
]
Attributes
[
  "product" => "Tire bouchon à levier Arcos"
  "class" => "w-100 h-100 object-fit-cover"
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#30912
  -props: [
    "product" => App\Entity\Product\Product {#8703
      #id: 2575
      #code: "tire-bouchon-a-levier-arcos-753"
      #attributes: Doctrine\ORM\PersistentCollection {#8713 …}
      #variants: Doctrine\ORM\PersistentCollection {#8715 …}
      #options: Doctrine\ORM\PersistentCollection {#8719 …}
      #associations: Doctrine\ORM\PersistentCollection {#8717 …}
      #createdAt: DateTime @1758632578 {#8701
        date: 2025-09-23 21:02:58.0 PRC (+08:00)
      }
      #updatedAt: DateTime @1758632578 {#8702
        date: 2025-09-23 21:02:58.0 PRC (+08:00)
      }
      #enabled: true
      #translations: Doctrine\ORM\PersistentCollection {#8722 …}
      #translationsCache: [
        "fr_FR" => App\Entity\Product\ProductTranslation {#8723
          #locale: "fr_FR"
          #translatable: App\Entity\Product\Product {#8703}
          #id: 2575
          #name: "Tire bouchon à levier Arcos"
          #slug: "tire-bouchon-a-levier-arcos-753"
          #description: """
            <div class="col is-12"><ul>\n
            <li>Ejection automatique du bouchon</li>\n
            <li>S'adapte &agrave; toutes les bouteilles</li>\n
            <li>Garantie 2 ans</li>\n
            </ul></div><h1>Description Tire bouchon à levier Arcos</h1><div class="col is-12"><span style="text-align: justify; font-family: Verdana;">Ouvrez vos bouteilles sans aucun effort gr&acirc;ce au tire bouchon &agrave; levier Arcos. Il s</span><span style="text-align: justify; font-family: Verdana;">&rsquo;adapte &agrave; tous les types de bouteille. Ejection automatique du bouchon.&nbsp;</span></div><h1>Caractéristiques Tire bouchon à levier Arcos</h1><div class="col is-12"><span style="font-family: Verdana;">Corps et m&eacute;canisme inox et polypropyl&egrave;ne. M&egrave;che en acier tremp&eacute; t&eacute;flonn&eacute;. Livr&eacute; avec m&egrave;che de rechange, coupe capsule et pied.&nbsp;</span><span style="font-family: Verdana;">Garantie 2 ans.</span></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 {#8725 …}
      #channels: Doctrine\ORM\PersistentCollection {#8711 …}
      #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8705 …}
      #reviews: Doctrine\ORM\PersistentCollection {#8707 …}
      #averageRating: 0.0
      #images: Doctrine\ORM\PersistentCollection {#8709 …}
      #productType: null
    }
    "class" => "w-100 h-100 object-fit-cover"
  ]
}
sylius_shop:catalog_promotions
[Anonymous]
114.0 MiB 0.64 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30905
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30896 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30966 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30893 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#30841 …}
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#30849
    #collection: Doctrine\Common\Collections\ArrayCollection {#30858 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#30837 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38392 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38394 …}
  }
  "withDescription" => false
]
Attributes
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30905
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30896 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30966 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30893 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => "Tire bouchon à levier Arcos"
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#30849
    #collection: Doctrine\Common\Collections\ArrayCollection {#30858 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#30837 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38392 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38394 …}
  }
  "withDescription" => false
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#30970
  -props: [
    "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30905
      +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30896 …}
      +context: Sylius\TwigHooks\Bag\DataBag {#30966 …}
      +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30893 …}
      +prefixes: [
        "sylius_shop.product.index.content.body.main.card.prices"
        "sylius_shop.shared.product.card.prices"
      ]
    }
    "variant" => App\Entity\Product\ProductVariant {#30841 …}
    "applied_promotions" => Doctrine\ORM\PersistentCollection {#30849
      #collection: Doctrine\Common\Collections\ArrayCollection {#30858 …}
      #initialized: true
      -snapshot: []
      -owner: App\Entity\Channel\ChannelPricing {#30837 …}
      -association: Symfony\Component\VarDumper\Caster\CutStub {#38392 …}
      -backRefFieldName: null
      -isDirty: false
      -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
      -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38394 …}
    }
    "withDescription" => false
  ]
}
sylius_shop:product:card:price Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent 114.0 MiB 0.14 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#31020
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#31011 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#31018 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#31019 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#30841 …}
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Attributes
[
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent {#31023
  +variant: App\Entity\Product\ProductVariant {#30841 …}
  +price: "59,00\u{A0}"
  +originalPrice: "59,00\u{A0}"
  +hasDiscount: false
  #productVariantPricesCalculator: Sylius\Component\Core\Calculator\ProductVariantPriceCalculator {#5465 …}
  #moneyFormatter: Sylius\Bundle\MoneyBundle\Formatter\MoneyFormatter {#9064 …}
  #channelContext: Sylius\Component\Channel\Context\CachedPerRequestChannelContext {#4203 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  #currencyContext: Sylius\Component\Core\Currency\Context\ChannelAwareCurrencyContext {#12494 …}
  #currencyConverter: Sylius\Component\Currency\Converter\CurrencyConverter {#9061 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#31020
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#31011 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#31018 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#31019 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
}
sylius_shop:cart:widget:offcanvas Sylius\Bundle\ShopBundle\Twig\Component\Cart\WidgetComponent 114.0 MiB 2.14 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27418
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#12559 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27440 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#12569 …}
    +prefixes: [
      "sylius_shop.base.offcanvas"
    ]
  }
  "template" => "@SyliusShop/shared/layout/base/offcanvas/cart.html.twig"
]
Attributes
[]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Cart\WidgetComponent {#31338
  +cart: App\Entity\Order\Order {#13473 …}
  #cartContext: Sylius\Component\Order\Context\CompositeCartContext {#1322 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27418
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#12559 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27440 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#12569 …}
    +prefixes: [
      "sylius_shop.base.offcanvas"
    ]
  }
  +template: "@SyliusShop/shared/layout/base/offcanvas/cart.html.twig"
  #repository: Sylius\Bundle\CoreBundle\Doctrine\ORM\OrderRepository {#4980 …}
}