GET https://sylius-cuisinstore.preprod.eu/fr_FR/taxons/boisson-7?page=2&sorting%5Bname%5D=desc

Components

12 Twig Components
44 Render Count
71 ms Render Time
104.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 43.75ms
sylius_shop:main_image
[Anonymous]
@SyliusShop/shared/components/main_image.html.twig
9 7.64ms
sylius_shop:catalog_promotions
[Anonymous]
@SyliusShop/shared/components/catalog_promotions.html.twig
9 6.22ms
sylius_shop:product:card:price
"Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent"
@SyliusUi/components/default.html.twig
9 1.68ms
sylius_shop:common:currency_switcher
"Sylius\Bundle\ShopBundle\Twig\Component\Common\CurrencySwitcherComponent"
@SyliusUi/components/default.html.twig
1 1.11ms
sylius_shop:common:locale_switcher
"Sylius\Bundle\ShopBundle\Twig\Component\Common\LocaleSwitcherComponent"
@SyliusUi/components/default.html.twig
1 0.70ms
sylius_shop:cart:widget
"Sylius\Bundle\ShopBundle\Twig\Component\Cart\WidgetComponent"
@SyliusUi/components/default.html.twig
1 4.47ms
sylius_shop:common:taxon_menu
"Sylius\Bundle\ShopBundle\Twig\Component\Common\TaxonMenuComponent"
@SyliusUi/components/default.html.twig
1 14.32ms
sylius_shop:product:show:breadcrumbs
"Sylius\Bundle\ShopBundle\Twig\Component\Product\BreadcrumbComponent"
@SyliusUi/components/default.html.twig
1 0.88ms
sylius_shop:product:show:taxonomy
"Sylius\Bundle\ShopBundle\Twig\Component\Product\BreadcrumbComponent"
@SyliusUi/components/default.html.twig
1 1.36ms
sylius_shop:product:show:header
"Sylius\Bundle\ShopBundle\Twig\Component\Product\BreadcrumbComponent"
@SyliusUi/components/default.html.twig
1 1.94ms
sylius_shop:cart:widget:offcanvas
"Sylius\Bundle\ShopBundle\Twig\Component\Cart\WidgetComponent"
@SyliusUi/components/default.html.twig
1 2.01ms

Render calls

sylius_shop:common:currency_switcher Sylius\Bundle\ShopBundle\Twig\Component\Common\CurrencySwitcherComponent 94.0 MiB 1.11 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#12598
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#12591 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#12597 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#12596 …}
    +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 {#13218
  #channelContext: Sylius\Component\Channel\Context\CachedPerRequestChannelContext {#4203 …}
  #currencyContext: Sylius\Component\Core\Currency\Context\ChannelAwareCurrencyContext {#12489 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#12598
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#12591 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#12597 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#12596 …}
    +prefixes: [
      "sylius_shop.base.header.top_bar"
    ]
  }
}
sylius_shop:common:locale_switcher Sylius\Bundle\ShopBundle\Twig\Component\Common\LocaleSwitcherComponent 94.0 MiB 0.70 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#13295
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#13291 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#13293 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#13294 …}
    +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 {#13304
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  #localeProvider: Sylius\Component\Core\Provider\ChannelBasedLocaleProvider {#4528 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#13295
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#13291 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#13293 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#13294 …}
    +prefixes: [
      "sylius_shop.base.header.top_bar"
    ]
  }
}
sylius_shop:cart:widget Sylius\Bundle\ShopBundle\Twig\Component\Cart\WidgetComponent 94.0 MiB 4.47 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#13386
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#13365 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#13385 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#13384 …}
    +prefixes: [
      "sylius_shop.base.header.content"
    ]
  }
  "template" => "@SyliusShop/shared/components/header/cart.html.twig"
]
Attributes
[]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Cart\WidgetComponent {#13401
  +cart: App\Entity\Order\Order {#13468 …}
  #cartContext: Sylius\Component\Order\Context\CompositeCartContext {#1322 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#13386
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#13365 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#13385 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#13384 …}
    +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 96.0 MiB 14.32 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#13654
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#13642 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#13648 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#13640 …}
    +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 {#13663
  #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 {#13654
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#13642 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#13648 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#13640 …}
    +prefixes: [
      "sylius_shop.base.header.navbar"
    ]
  }
}
sylius_shop:product:show:breadcrumbs Sylius\Bundle\ShopBundle\Twig\Component\Product\BreadcrumbComponent 96.0 MiB 0.88 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27454
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27450 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27451 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27453 …}
    +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 {#27463
  #requestStack: Symfony\Component\HttpFoundation\RequestStack {#243 …}
  #taxonRepository: App\Repository\TaxonRepository {#7413 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27454
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27450 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27451 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27453 …}
    +prefixes: [
      "sylius_shop.product.index.content"
    ]
  }
}
sylius_shop:product:show:taxonomy Sylius\Bundle\ShopBundle\Twig\Component\Product\BreadcrumbComponent 96.0 MiB 1.36 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27562
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27558 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27559 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27561 …}
    +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 {#27570
  #requestStack: Symfony\Component\HttpFoundation\RequestStack {#243 …}
  #taxonRepository: App\Repository\TaxonRepository {#7413 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27562
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27558 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27559 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27561 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.sidebar"
    ]
  }
}
sylius_shop:product:show:header Sylius\Bundle\ShopBundle\Twig\Component\Product\BreadcrumbComponent 96.0 MiB 1.94 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27680
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27676 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27677 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27679 …}
    +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 {#27688
  #requestStack: Symfony\Component\HttpFoundation\RequestStack {#243 …}
  #taxonRepository: App\Repository\TaxonRepository {#7413 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27680
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27676 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27677 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27679 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
}
sylius_shop:product:card Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent 102.0 MiB 9.62 ms
Input props
[
  "product" => App\Entity\Product\Product {#7966
    #id: 2565
    #code: "tire-bouchon-souverain-peugeot-5973"
    #attributes: Doctrine\ORM\PersistentCollection {#8172 …}
    #variants: Doctrine\ORM\PersistentCollection {#8395 …}
    #options: Doctrine\ORM\PersistentCollection {#8523 …}
    #associations: Doctrine\ORM\PersistentCollection {#8463 …}
    #createdAt: DateTime @1758632577 {#7763
      date: 2025-09-23 21:02:57.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632577 {#7829
      date: 2025-09-23 21:02:57.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8522 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8525
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#7966}
        #id: 2565
        #name: "Tire-Bouchon Souverain Peugeot"
        #slug: "tire-bouchon-souverain-peugeot-5973"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Ouverture &agrave; double levier, sans effort.</li>\n
          <li>Syst&egrave;me brevet&eacute; pour une prise en main facilit&eacute;e.</li>\n
          <li>Extrait tous les types de bouchon.</li>\n
          </ul>\n
          <br /></div><h1>Descriptif Tire-Bouchon Souverain Peugeot</h1><div class="col is-12">Le Tire-Bouchon Souverain Peugeot est &eacute;quip&eacute; d'un syst&egrave;me brevet&eacute; permettant de visser la vrille dans le bouchon tout en maintenant les bras en place le long du corps. Ceci am&eacute;liore consid&eacute;rablement la prise en main et facilite l'ouverture de la bouteille. Le d&eacute;vissage est s&eacute;curis&eacute; par un syst&egrave;me permettant de bloquer le bouchon puis de le faire tomber sans avoir &agrave; le toucher.</div><h1>Caractéristiques Tire-Bouchon Souverain Peugeot</h1><div class="col is-12">Mati&egrave;re : Zamac et silicone. Vrille en acier tremp&eacute; avec rev&ecirc;tement sp&eacute;cifique. Hauteur 20 cm. Fonction d&eacute;capsuleur int&eacute;gr&eacute;. Livr&eacute; en coffret. Garantie 2 ans.&nbsp;</div>
          """
        #metaKeywords: null
        #metaDescription: null
        #shortDescription: null
        -fullTitle: null
        -metaTitle: null
      }
    ]
    #currentLocale: "fr_FR"
    #currentTranslation: null
    #fallbackLocale: "fr_FR"
    #variantSelectionMethod: "choice"
    #productTaxons: Doctrine\ORM\PersistentCollection {#8528 …}
    #channels: Doctrine\ORM\PersistentCollection {#8031 …}
    #mainTaxon: App\Entity\Taxonomy\Taxon {#7528 …}
    #reviews: Doctrine\ORM\PersistentCollection {#7916 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8034 …}
    #productType: null
  }
  "template" => "@SyliusShop/product/common/card.html.twig"
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27745
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27778 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27784 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27771 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
]
Attributes
[
  "template" => "@SyliusShop/product/common/card.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent {#28213
  +product: App\Entity\Product\Product {#7966
    #id: 2565
    #code: "tire-bouchon-souverain-peugeot-5973"
    #attributes: Doctrine\ORM\PersistentCollection {#8172 …}
    #variants: Doctrine\ORM\PersistentCollection {#8395 …}
    #options: Doctrine\ORM\PersistentCollection {#8523 …}
    #associations: Doctrine\ORM\PersistentCollection {#8463 …}
    #createdAt: DateTime @1758632577 {#7763
      date: 2025-09-23 21:02:57.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632577 {#7829
      date: 2025-09-23 21:02:57.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8522 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8525
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#7966}
        #id: 2565
        #name: "Tire-Bouchon Souverain Peugeot"
        #slug: "tire-bouchon-souverain-peugeot-5973"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Ouverture &agrave; double levier, sans effort.</li>\n
          <li>Syst&egrave;me brevet&eacute; pour une prise en main facilit&eacute;e.</li>\n
          <li>Extrait tous les types de bouchon.</li>\n
          </ul>\n
          <br /></div><h1>Descriptif Tire-Bouchon Souverain Peugeot</h1><div class="col is-12">Le Tire-Bouchon Souverain Peugeot est &eacute;quip&eacute; d'un syst&egrave;me brevet&eacute; permettant de visser la vrille dans le bouchon tout en maintenant les bras en place le long du corps. Ceci am&eacute;liore consid&eacute;rablement la prise en main et facilite l'ouverture de la bouteille. Le d&eacute;vissage est s&eacute;curis&eacute; par un syst&egrave;me permettant de bloquer le bouchon puis de le faire tomber sans avoir &agrave; le toucher.</div><h1>Caractéristiques Tire-Bouchon Souverain Peugeot</h1><div class="col is-12">Mati&egrave;re : Zamac et silicone. Vrille en acier tremp&eacute; avec rev&ecirc;tement sp&eacute;cifique. Hauteur 20 cm. Fonction d&eacute;capsuleur int&eacute;gr&eacute;. Livr&eacute; en coffret. Garantie 2 ans.&nbsp;</div>
          """
        #metaKeywords: null
        #metaDescription: null
        #shortDescription: null
        -fullTitle: null
        -metaTitle: null
      }
    ]
    #currentLocale: "fr_FR"
    #currentTranslation: null
    #fallbackLocale: "fr_FR"
    #variantSelectionMethod: "choice"
    #productTaxons: Doctrine\ORM\PersistentCollection {#8528 …}
    #channels: Doctrine\ORM\PersistentCollection {#8031 …}
    #mainTaxon: App\Entity\Taxonomy\Taxon {#7528 …}
    #reviews: Doctrine\ORM\PersistentCollection {#7916 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8034 …}
    #productType: null
  }
  +variant: App\Entity\Product\ProductVariant {#28475 …}
  +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 {#27745
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27778 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27784 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27771 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
}
sylius_shop:main_image
[Anonymous]
102.0 MiB 1.95 ms
Input props
[
  "product" => App\Entity\Product\Product {#7966
    #id: 2565
    #code: "tire-bouchon-souverain-peugeot-5973"
    #attributes: Doctrine\ORM\PersistentCollection {#8172 …}
    #variants: Doctrine\ORM\PersistentCollection {#8395 …}
    #options: Doctrine\ORM\PersistentCollection {#8523 …}
    #associations: Doctrine\ORM\PersistentCollection {#8463 …}
    #createdAt: DateTime @1758632577 {#7763
      date: 2025-09-23 21:02:57.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632577 {#7829
      date: 2025-09-23 21:02:57.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8522 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8525
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#7966}
        #id: 2565
        #name: "Tire-Bouchon Souverain Peugeot"
        #slug: "tire-bouchon-souverain-peugeot-5973"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Ouverture &agrave; double levier, sans effort.</li>\n
          <li>Syst&egrave;me brevet&eacute; pour une prise en main facilit&eacute;e.</li>\n
          <li>Extrait tous les types de bouchon.</li>\n
          </ul>\n
          <br /></div><h1>Descriptif Tire-Bouchon Souverain Peugeot</h1><div class="col is-12">Le Tire-Bouchon Souverain Peugeot est &eacute;quip&eacute; d'un syst&egrave;me brevet&eacute; permettant de visser la vrille dans le bouchon tout en maintenant les bras en place le long du corps. Ceci am&eacute;liore consid&eacute;rablement la prise en main et facilite l'ouverture de la bouteille. Le d&eacute;vissage est s&eacute;curis&eacute; par un syst&egrave;me permettant de bloquer le bouchon puis de le faire tomber sans avoir &agrave; le toucher.</div><h1>Caractéristiques Tire-Bouchon Souverain Peugeot</h1><div class="col is-12">Mati&egrave;re : Zamac et silicone. Vrille en acier tremp&eacute; avec rev&ecirc;tement sp&eacute;cifique. Hauteur 20 cm. Fonction d&eacute;capsuleur int&eacute;gr&eacute;. Livr&eacute; en coffret. Garantie 2 ans.&nbsp;</div>
          """
        #metaKeywords: null
        #metaDescription: null
        #shortDescription: null
        -fullTitle: null
        -metaTitle: null
      }
    ]
    #currentLocale: "fr_FR"
    #currentTranslation: null
    #fallbackLocale: "fr_FR"
    #variantSelectionMethod: "choice"
    #productTaxons: Doctrine\ORM\PersistentCollection {#8528 …}
    #channels: Doctrine\ORM\PersistentCollection {#8031 …}
    #mainTaxon: App\Entity\Taxonomy\Taxon {#7528 …}
    #reviews: Doctrine\ORM\PersistentCollection {#7916 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8034 …}
    #productType: null
  }
  "class" => "w-100 h-100 object-fit-cover"
]
Attributes
[
  "product" => "Tire-Bouchon Souverain Peugeot"
  "class" => "w-100 h-100 object-fit-cover"
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#28886
  -props: [
    "product" => App\Entity\Product\Product {#7966
      #id: 2565
      #code: "tire-bouchon-souverain-peugeot-5973"
      #attributes: Doctrine\ORM\PersistentCollection {#8172 …}
      #variants: Doctrine\ORM\PersistentCollection {#8395 …}
      #options: Doctrine\ORM\PersistentCollection {#8523 …}
      #associations: Doctrine\ORM\PersistentCollection {#8463 …}
      #createdAt: DateTime @1758632577 {#7763
        date: 2025-09-23 21:02:57.0 PRC (+08:00)
      }
      #updatedAt: DateTime @1758632577 {#7829
        date: 2025-09-23 21:02:57.0 PRC (+08:00)
      }
      #enabled: true
      #translations: Doctrine\ORM\PersistentCollection {#8522 …}
      #translationsCache: [
        "fr_FR" => App\Entity\Product\ProductTranslation {#8525
          #locale: "fr_FR"
          #translatable: App\Entity\Product\Product {#7966}
          #id: 2565
          #name: "Tire-Bouchon Souverain Peugeot"
          #slug: "tire-bouchon-souverain-peugeot-5973"
          #description: """
            <div class="col is-12"><ul>\n
            <li>Ouverture &agrave; double levier, sans effort.</li>\n
            <li>Syst&egrave;me brevet&eacute; pour une prise en main facilit&eacute;e.</li>\n
            <li>Extrait tous les types de bouchon.</li>\n
            </ul>\n
            <br /></div><h1>Descriptif Tire-Bouchon Souverain Peugeot</h1><div class="col is-12">Le Tire-Bouchon Souverain Peugeot est &eacute;quip&eacute; d'un syst&egrave;me brevet&eacute; permettant de visser la vrille dans le bouchon tout en maintenant les bras en place le long du corps. Ceci am&eacute;liore consid&eacute;rablement la prise en main et facilite l'ouverture de la bouteille. Le d&eacute;vissage est s&eacute;curis&eacute; par un syst&egrave;me permettant de bloquer le bouchon puis de le faire tomber sans avoir &agrave; le toucher.</div><h1>Caractéristiques Tire-Bouchon Souverain Peugeot</h1><div class="col is-12">Mati&egrave;re : Zamac et silicone. Vrille en acier tremp&eacute; avec rev&ecirc;tement sp&eacute;cifique. Hauteur 20 cm. Fonction d&eacute;capsuleur int&eacute;gr&eacute;. Livr&eacute; en coffret. Garantie 2 ans.&nbsp;</div>
            """
          #metaKeywords: null
          #metaDescription: null
          #shortDescription: null
          -fullTitle: null
          -metaTitle: null
        }
      ]
      #currentLocale: "fr_FR"
      #currentTranslation: null
      #fallbackLocale: "fr_FR"
      #variantSelectionMethod: "choice"
      #productTaxons: Doctrine\ORM\PersistentCollection {#8528 …}
      #channels: Doctrine\ORM\PersistentCollection {#8031 …}
      #mainTaxon: App\Entity\Taxonomy\Taxon {#7528 …}
      #reviews: Doctrine\ORM\PersistentCollection {#7916 …}
      #averageRating: 0.0
      #images: Doctrine\ORM\PersistentCollection {#8034 …}
      #productType: null
    }
    "class" => "w-100 h-100 object-fit-cover"
  ]
}
sylius_shop:catalog_promotions
[Anonymous]
102.0 MiB 1.38 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#28965
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#28968 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#28963 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#28962 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#28475 …}
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#28821
    #collection: Doctrine\Common\Collections\ArrayCollection {#28820 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#28658 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38226 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38278 …}
  }
  "withDescription" => false
]
Attributes
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#28965
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#28968 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#28963 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#28962 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => "Tire-Bouchon Souverain Peugeot"
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#28821
    #collection: Doctrine\Common\Collections\ArrayCollection {#28820 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#28658 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38226 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38278 …}
  }
  "withDescription" => false
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#28973
  -props: [
    "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#28965
      +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#28968 …}
      +context: Sylius\TwigHooks\Bag\DataBag {#28963 …}
      +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#28962 …}
      +prefixes: [
        "sylius_shop.product.index.content.body.main.card.prices"
        "sylius_shop.shared.product.card.prices"
      ]
    }
    "variant" => App\Entity\Product\ProductVariant {#28475 …}
    "applied_promotions" => Doctrine\ORM\PersistentCollection {#28821
      #collection: Doctrine\Common\Collections\ArrayCollection {#28820 …}
      #initialized: true
      -snapshot: []
      -owner: App\Entity\Channel\ChannelPricing {#28658 …}
      -association: Symfony\Component\VarDumper\Caster\CutStub {#38226 …}
      -backRefFieldName: null
      -isDirty: false
      -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
      -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38278 …}
    }
    "withDescription" => false
  ]
}
sylius_shop:product:card:price Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent 102.0 MiB 0.47 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29041
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29031 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29039 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29040 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#28475 …}
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Attributes
[
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent {#29050
  +variant: App\Entity\Product\ProductVariant {#28475 …}
  +price: "49,00\u{A0}"
  +originalPrice: "49,00\u{A0}"
  +hasDiscount: false
  #productVariantPricesCalculator: Sylius\Component\Core\Calculator\ProductVariantPriceCalculator {#5465 …}
  #moneyFormatter: Sylius\Bundle\MoneyBundle\Formatter\MoneyFormatter {#9059 …}
  #channelContext: Sylius\Component\Channel\Context\CachedPerRequestChannelContext {#4203 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  #currencyContext: Sylius\Component\Core\Currency\Context\ChannelAwareCurrencyContext {#12489 …}
  #currencyConverter: Sylius\Component\Currency\Converter\CurrencyConverter {#9056 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29041
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29031 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29039 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29040 …}
    +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 102.0 MiB 4.51 ms
Input props
[
  "product" => App\Entity\Product\Product {#8537
    #id: 2573
    #code: "tire-bouchon-sommelier-professionnel-hendi-8146"
    #attributes: Doctrine\ORM\PersistentCollection {#8544 …}
    #variants: Doctrine\ORM\PersistentCollection {#8546 …}
    #options: Doctrine\ORM\PersistentCollection {#8550 …}
    #associations: Doctrine\ORM\PersistentCollection {#8548 …}
    #createdAt: DateTime @1758632577 {#8535
      date: 2025-09-23 21:02:57.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632577 {#8536
      date: 2025-09-23 21:02:57.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8553 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8554
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8537}
        #id: 2573
        #name: "Tire-bouchon sommelier professionnel Hendi"
        #slug: "tire-bouchon-sommelier-professionnel-hendi-8146"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Inox &amp; ABS.</li>\n
          <li>Format compact.</li>\n
          <li>3 fonctions.</li>\n
          </ul>\n
          <ul style="margin: 0px 10px; padding: 10px; list-style-position: initial; list-style-image: initial;">\n
          </ul>\n
          <div id="gtx-trans" style="position: absolute; left: -8px; top: -10px;"></div></div><h1>Description Tire-bouchon sommelier professionnel Hendi</h1><div class="col is-12">Le Tire-Bouchon Sommelier professionnel Hendi est r&eacute;alis&eacute; en inox et ABS. Ses 3 fonctions (d&eacute;capsuleur, spirale bouchons longs et cutter) en font un accessoire indispensable pour les professionnels de la restauration et les amateurs de vin.</div><h1>Caractéristiques Tire-bouchon sommelier professionnel Hendi</h1><div class="col is-12">- Inox &amp; ABS.<br />- 3 fonctions : d&eacute;capsuleur, spirale bouchons long, coupe capsule.<br />- Dimensions : 37 x 130 x 14 mm.</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 {#8556 …}
    #channels: Doctrine\ORM\PersistentCollection {#8542 …}
    #mainTaxon: App\Entity\Taxonomy\Taxon {#7528 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8538 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8540 …}
    #productType: null
  }
  "template" => "@SyliusShop/product/common/card.html.twig"
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27745
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27778 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27784 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27771 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
]
Attributes
[
  "template" => "@SyliusShop/product/common/card.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent {#28864
  +product: App\Entity\Product\Product {#8537
    #id: 2573
    #code: "tire-bouchon-sommelier-professionnel-hendi-8146"
    #attributes: Doctrine\ORM\PersistentCollection {#8544 …}
    #variants: Doctrine\ORM\PersistentCollection {#8546 …}
    #options: Doctrine\ORM\PersistentCollection {#8550 …}
    #associations: Doctrine\ORM\PersistentCollection {#8548 …}
    #createdAt: DateTime @1758632577 {#8535
      date: 2025-09-23 21:02:57.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632577 {#8536
      date: 2025-09-23 21:02:57.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8553 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8554
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8537}
        #id: 2573
        #name: "Tire-bouchon sommelier professionnel Hendi"
        #slug: "tire-bouchon-sommelier-professionnel-hendi-8146"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Inox &amp; ABS.</li>\n
          <li>Format compact.</li>\n
          <li>3 fonctions.</li>\n
          </ul>\n
          <ul style="margin: 0px 10px; padding: 10px; list-style-position: initial; list-style-image: initial;">\n
          </ul>\n
          <div id="gtx-trans" style="position: absolute; left: -8px; top: -10px;"></div></div><h1>Description Tire-bouchon sommelier professionnel Hendi</h1><div class="col is-12">Le Tire-Bouchon Sommelier professionnel Hendi est r&eacute;alis&eacute; en inox et ABS. Ses 3 fonctions (d&eacute;capsuleur, spirale bouchons longs et cutter) en font un accessoire indispensable pour les professionnels de la restauration et les amateurs de vin.</div><h1>Caractéristiques Tire-bouchon sommelier professionnel Hendi</h1><div class="col is-12">- Inox &amp; ABS.<br />- 3 fonctions : d&eacute;capsuleur, spirale bouchons long, coupe capsule.<br />- Dimensions : 37 x 130 x 14 mm.</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 {#8556 …}
    #channels: Doctrine\ORM\PersistentCollection {#8542 …}
    #mainTaxon: App\Entity\Taxonomy\Taxon {#7528 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8538 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8540 …}
    #productType: null
  }
  +variant: App\Entity\Product\ProductVariant {#29123 …}
  +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 {#27745
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27778 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27784 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27771 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
}
sylius_shop:main_image
[Anonymous]
102.0 MiB 0.72 ms
Input props
[
  "product" => App\Entity\Product\Product {#8537
    #id: 2573
    #code: "tire-bouchon-sommelier-professionnel-hendi-8146"
    #attributes: Doctrine\ORM\PersistentCollection {#8544 …}
    #variants: Doctrine\ORM\PersistentCollection {#8546 …}
    #options: Doctrine\ORM\PersistentCollection {#8550 …}
    #associations: Doctrine\ORM\PersistentCollection {#8548 …}
    #createdAt: DateTime @1758632577 {#8535
      date: 2025-09-23 21:02:57.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632577 {#8536
      date: 2025-09-23 21:02:57.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8553 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8554
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8537}
        #id: 2573
        #name: "Tire-bouchon sommelier professionnel Hendi"
        #slug: "tire-bouchon-sommelier-professionnel-hendi-8146"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Inox &amp; ABS.</li>\n
          <li>Format compact.</li>\n
          <li>3 fonctions.</li>\n
          </ul>\n
          <ul style="margin: 0px 10px; padding: 10px; list-style-position: initial; list-style-image: initial;">\n
          </ul>\n
          <div id="gtx-trans" style="position: absolute; left: -8px; top: -10px;"></div></div><h1>Description Tire-bouchon sommelier professionnel Hendi</h1><div class="col is-12">Le Tire-Bouchon Sommelier professionnel Hendi est r&eacute;alis&eacute; en inox et ABS. Ses 3 fonctions (d&eacute;capsuleur, spirale bouchons longs et cutter) en font un accessoire indispensable pour les professionnels de la restauration et les amateurs de vin.</div><h1>Caractéristiques Tire-bouchon sommelier professionnel Hendi</h1><div class="col is-12">- Inox &amp; ABS.<br />- 3 fonctions : d&eacute;capsuleur, spirale bouchons long, coupe capsule.<br />- Dimensions : 37 x 130 x 14 mm.</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 {#8556 …}
    #channels: Doctrine\ORM\PersistentCollection {#8542 …}
    #mainTaxon: App\Entity\Taxonomy\Taxon {#7528 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8538 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8540 …}
    #productType: null
  }
  "class" => "w-100 h-100 object-fit-cover"
]
Attributes
[
  "product" => "Tire-bouchon sommelier professionnel Hendi"
  "class" => "w-100 h-100 object-fit-cover"
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#29197
  -props: [
    "product" => App\Entity\Product\Product {#8537
      #id: 2573
      #code: "tire-bouchon-sommelier-professionnel-hendi-8146"
      #attributes: Doctrine\ORM\PersistentCollection {#8544 …}
      #variants: Doctrine\ORM\PersistentCollection {#8546 …}
      #options: Doctrine\ORM\PersistentCollection {#8550 …}
      #associations: Doctrine\ORM\PersistentCollection {#8548 …}
      #createdAt: DateTime @1758632577 {#8535
        date: 2025-09-23 21:02:57.0 PRC (+08:00)
      }
      #updatedAt: DateTime @1758632577 {#8536
        date: 2025-09-23 21:02:57.0 PRC (+08:00)
      }
      #enabled: true
      #translations: Doctrine\ORM\PersistentCollection {#8553 …}
      #translationsCache: [
        "fr_FR" => App\Entity\Product\ProductTranslation {#8554
          #locale: "fr_FR"
          #translatable: App\Entity\Product\Product {#8537}
          #id: 2573
          #name: "Tire-bouchon sommelier professionnel Hendi"
          #slug: "tire-bouchon-sommelier-professionnel-hendi-8146"
          #description: """
            <div class="col is-12"><ul>\n
            <li>Inox &amp; ABS.</li>\n
            <li>Format compact.</li>\n
            <li>3 fonctions.</li>\n
            </ul>\n
            <ul style="margin: 0px 10px; padding: 10px; list-style-position: initial; list-style-image: initial;">\n
            </ul>\n
            <div id="gtx-trans" style="position: absolute; left: -8px; top: -10px;"></div></div><h1>Description Tire-bouchon sommelier professionnel Hendi</h1><div class="col is-12">Le Tire-Bouchon Sommelier professionnel Hendi est r&eacute;alis&eacute; en inox et ABS. Ses 3 fonctions (d&eacute;capsuleur, spirale bouchons longs et cutter) en font un accessoire indispensable pour les professionnels de la restauration et les amateurs de vin.</div><h1>Caractéristiques Tire-bouchon sommelier professionnel Hendi</h1><div class="col is-12">- Inox &amp; ABS.<br />- 3 fonctions : d&eacute;capsuleur, spirale bouchons long, coupe capsule.<br />- Dimensions : 37 x 130 x 14 mm.</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 {#8556 …}
      #channels: Doctrine\ORM\PersistentCollection {#8542 …}
      #mainTaxon: App\Entity\Taxonomy\Taxon {#7528 …}
      #reviews: Doctrine\ORM\PersistentCollection {#8538 …}
      #averageRating: 0.0
      #images: Doctrine\ORM\PersistentCollection {#8540 …}
      #productType: null
    }
    "class" => "w-100 h-100 object-fit-cover"
  ]
}
sylius_shop:catalog_promotions
[Anonymous]
102.0 MiB 0.64 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29190
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29181 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29248 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29178 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#29123 …}
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#29131
    #collection: Doctrine\Common\Collections\ArrayCollection {#29143 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#29119 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38298 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38300 …}
  }
  "withDescription" => false
]
Attributes
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29190
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29181 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29248 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29178 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => "Tire-bouchon sommelier professionnel Hendi"
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#29131
    #collection: Doctrine\Common\Collections\ArrayCollection {#29143 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#29119 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38298 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38300 …}
  }
  "withDescription" => false
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#29252
  -props: [
    "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29190
      +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29181 …}
      +context: Sylius\TwigHooks\Bag\DataBag {#29248 …}
      +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29178 …}
      +prefixes: [
        "sylius_shop.product.index.content.body.main.card.prices"
        "sylius_shop.shared.product.card.prices"
      ]
    }
    "variant" => App\Entity\Product\ProductVariant {#29123 …}
    "applied_promotions" => Doctrine\ORM\PersistentCollection {#29131
      #collection: Doctrine\Common\Collections\ArrayCollection {#29143 …}
      #initialized: true
      -snapshot: []
      -owner: App\Entity\Channel\ChannelPricing {#29119 …}
      -association: Symfony\Component\VarDumper\Caster\CutStub {#38298 …}
      -backRefFieldName: null
      -isDirty: false
      -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
      -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38300 …}
    }
    "withDescription" => false
  ]
}
sylius_shop:product:card:price Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent 102.0 MiB 0.15 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29302
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29293 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29300 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29301 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#29123 …}
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Attributes
[
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent {#29305
  +variant: App\Entity\Product\ProductVariant {#29123 …}
  +price: "11,00\u{A0}"
  +originalPrice: "11,00\u{A0}"
  +hasDiscount: false
  #productVariantPricesCalculator: Sylius\Component\Core\Calculator\ProductVariantPriceCalculator {#5465 …}
  #moneyFormatter: Sylius\Bundle\MoneyBundle\Formatter\MoneyFormatter {#9059 …}
  #channelContext: Sylius\Component\Channel\Context\CachedPerRequestChannelContext {#4203 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  #currencyContext: Sylius\Component\Core\Currency\Context\ChannelAwareCurrencyContext {#12489 …}
  #currencyConverter: Sylius\Component\Currency\Converter\CurrencyConverter {#9056 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29302
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29293 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29300 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29301 …}
    +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 102.0 MiB 4.22 ms
Input props
[
  "product" => App\Entity\Product\Product {#8560
    #id: 2569
    #code: "tire-bouchon-sommelier-clavelin-peugeot-7570"
    #attributes: Doctrine\ORM\PersistentCollection {#8567 …}
    #variants: Doctrine\ORM\PersistentCollection {#8569 …}
    #options: Doctrine\ORM\PersistentCollection {#8573 …}
    #associations: Doctrine\ORM\PersistentCollection {#8571 …}
    #createdAt: DateTime @1758632577 {#8558
      date: 2025-09-23 21:02:57.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632577 {#8559
      date: 2025-09-23 21:02:57.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8576 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8577
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8560}
        #id: 2569
        #name: "Tire-Bouchon Sommelier Clavelin Peugeot"
        #slug: "tire-bouchon-sommelier-clavelin-peugeot-7570"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Ouvre d'un seul mouvement.</li>\n
          <li>Coupe-capsule et d&eacute;capsuleur int&eacute;gr&eacute;.</li>\n
          <li>Pratique et performant.</li>\n
          </ul></div><h1>Descriptif Tire-Bouchon Sommelier Clavelin Peugeot</h1><div class="col is-12">Le tire-bouchon Sommelier Clavelin Peugeot a &eacute;t&eacute; con&ccedil;u pour apporter toujours plus de praticit&eacute; et de performance. Il permet d'ouvrir d'un mouvement continu tous les types de bouchon sans avoir &agrave; reprendre appui &agrave; mi-course. Son syst&egrave;me de poign&eacute;e est exclusif et brevet&eacute;. Il est muni d'un coupe-capsule, et d'un d&eacute;capsuleur int&eacute;gr&eacute;. Son design contemporain et futuriste le rend &agrave; la fois compact et pr&eacute;cieux.</div><h1>Caractéristiques Tire-Bouchon Sommelier Clavelin Peugeot</h1><div class="col is-12">- Acier inoxydable.<br />- Coupe-capsule et d&eacute;capsuleur int&eacute;gr&eacute;.<br />- Taille : 14 cm.</div>
          """
        #metaKeywords: null
        #metaDescription: null
        #shortDescription: null
        -fullTitle: null
        -metaTitle: null
      }
    ]
    #currentLocale: "fr_FR"
    #currentTranslation: null
    #fallbackLocale: "fr_FR"
    #variantSelectionMethod: "choice"
    #productTaxons: Doctrine\ORM\PersistentCollection {#8579 …}
    #channels: Doctrine\ORM\PersistentCollection {#8565 …}
    #mainTaxon: App\Entity\Taxonomy\Taxon {#7528 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8561 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8563 …}
    #productType: null
  }
  "template" => "@SyliusShop/product/common/card.html.twig"
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27745
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27778 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27784 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27771 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
]
Attributes
[
  "template" => "@SyliusShop/product/common/card.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent {#29188
  +product: App\Entity\Product\Product {#8560
    #id: 2569
    #code: "tire-bouchon-sommelier-clavelin-peugeot-7570"
    #attributes: Doctrine\ORM\PersistentCollection {#8567 …}
    #variants: Doctrine\ORM\PersistentCollection {#8569 …}
    #options: Doctrine\ORM\PersistentCollection {#8573 …}
    #associations: Doctrine\ORM\PersistentCollection {#8571 …}
    #createdAt: DateTime @1758632577 {#8558
      date: 2025-09-23 21:02:57.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632577 {#8559
      date: 2025-09-23 21:02:57.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8576 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8577
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8560}
        #id: 2569
        #name: "Tire-Bouchon Sommelier Clavelin Peugeot"
        #slug: "tire-bouchon-sommelier-clavelin-peugeot-7570"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Ouvre d'un seul mouvement.</li>\n
          <li>Coupe-capsule et d&eacute;capsuleur int&eacute;gr&eacute;.</li>\n
          <li>Pratique et performant.</li>\n
          </ul></div><h1>Descriptif Tire-Bouchon Sommelier Clavelin Peugeot</h1><div class="col is-12">Le tire-bouchon Sommelier Clavelin Peugeot a &eacute;t&eacute; con&ccedil;u pour apporter toujours plus de praticit&eacute; et de performance. Il permet d'ouvrir d'un mouvement continu tous les types de bouchon sans avoir &agrave; reprendre appui &agrave; mi-course. Son syst&egrave;me de poign&eacute;e est exclusif et brevet&eacute;. Il est muni d'un coupe-capsule, et d'un d&eacute;capsuleur int&eacute;gr&eacute;. Son design contemporain et futuriste le rend &agrave; la fois compact et pr&eacute;cieux.</div><h1>Caractéristiques Tire-Bouchon Sommelier Clavelin Peugeot</h1><div class="col is-12">- Acier inoxydable.<br />- Coupe-capsule et d&eacute;capsuleur int&eacute;gr&eacute;.<br />- Taille : 14 cm.</div>
          """
        #metaKeywords: null
        #metaDescription: null
        #shortDescription: null
        -fullTitle: null
        -metaTitle: null
      }
    ]
    #currentLocale: "fr_FR"
    #currentTranslation: null
    #fallbackLocale: "fr_FR"
    #variantSelectionMethod: "choice"
    #productTaxons: Doctrine\ORM\PersistentCollection {#8579 …}
    #channels: Doctrine\ORM\PersistentCollection {#8565 …}
    #mainTaxon: App\Entity\Taxonomy\Taxon {#7528 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8561 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8563 …}
    #productType: null
  }
  +variant: App\Entity\Product\ProductVariant {#29368 …}
  +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 {#27745
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27778 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27784 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27771 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
}
sylius_shop:main_image
[Anonymous]
102.0 MiB 0.71 ms
Input props
[
  "product" => App\Entity\Product\Product {#8560
    #id: 2569
    #code: "tire-bouchon-sommelier-clavelin-peugeot-7570"
    #attributes: Doctrine\ORM\PersistentCollection {#8567 …}
    #variants: Doctrine\ORM\PersistentCollection {#8569 …}
    #options: Doctrine\ORM\PersistentCollection {#8573 …}
    #associations: Doctrine\ORM\PersistentCollection {#8571 …}
    #createdAt: DateTime @1758632577 {#8558
      date: 2025-09-23 21:02:57.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632577 {#8559
      date: 2025-09-23 21:02:57.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8576 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8577
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8560}
        #id: 2569
        #name: "Tire-Bouchon Sommelier Clavelin Peugeot"
        #slug: "tire-bouchon-sommelier-clavelin-peugeot-7570"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Ouvre d'un seul mouvement.</li>\n
          <li>Coupe-capsule et d&eacute;capsuleur int&eacute;gr&eacute;.</li>\n
          <li>Pratique et performant.</li>\n
          </ul></div><h1>Descriptif Tire-Bouchon Sommelier Clavelin Peugeot</h1><div class="col is-12">Le tire-bouchon Sommelier Clavelin Peugeot a &eacute;t&eacute; con&ccedil;u pour apporter toujours plus de praticit&eacute; et de performance. Il permet d'ouvrir d'un mouvement continu tous les types de bouchon sans avoir &agrave; reprendre appui &agrave; mi-course. Son syst&egrave;me de poign&eacute;e est exclusif et brevet&eacute;. Il est muni d'un coupe-capsule, et d'un d&eacute;capsuleur int&eacute;gr&eacute;. Son design contemporain et futuriste le rend &agrave; la fois compact et pr&eacute;cieux.</div><h1>Caractéristiques Tire-Bouchon Sommelier Clavelin Peugeot</h1><div class="col is-12">- Acier inoxydable.<br />- Coupe-capsule et d&eacute;capsuleur int&eacute;gr&eacute;.<br />- Taille : 14 cm.</div>
          """
        #metaKeywords: null
        #metaDescription: null
        #shortDescription: null
        -fullTitle: null
        -metaTitle: null
      }
    ]
    #currentLocale: "fr_FR"
    #currentTranslation: null
    #fallbackLocale: "fr_FR"
    #variantSelectionMethod: "choice"
    #productTaxons: Doctrine\ORM\PersistentCollection {#8579 …}
    #channels: Doctrine\ORM\PersistentCollection {#8565 …}
    #mainTaxon: App\Entity\Taxonomy\Taxon {#7528 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8561 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8563 …}
    #productType: null
  }
  "class" => "w-100 h-100 object-fit-cover"
]
Attributes
[
  "product" => "Tire-Bouchon Sommelier Clavelin Peugeot"
  "class" => "w-100 h-100 object-fit-cover"
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#29439
  -props: [
    "product" => App\Entity\Product\Product {#8560
      #id: 2569
      #code: "tire-bouchon-sommelier-clavelin-peugeot-7570"
      #attributes: Doctrine\ORM\PersistentCollection {#8567 …}
      #variants: Doctrine\ORM\PersistentCollection {#8569 …}
      #options: Doctrine\ORM\PersistentCollection {#8573 …}
      #associations: Doctrine\ORM\PersistentCollection {#8571 …}
      #createdAt: DateTime @1758632577 {#8558
        date: 2025-09-23 21:02:57.0 PRC (+08:00)
      }
      #updatedAt: DateTime @1758632577 {#8559
        date: 2025-09-23 21:02:57.0 PRC (+08:00)
      }
      #enabled: true
      #translations: Doctrine\ORM\PersistentCollection {#8576 …}
      #translationsCache: [
        "fr_FR" => App\Entity\Product\ProductTranslation {#8577
          #locale: "fr_FR"
          #translatable: App\Entity\Product\Product {#8560}
          #id: 2569
          #name: "Tire-Bouchon Sommelier Clavelin Peugeot"
          #slug: "tire-bouchon-sommelier-clavelin-peugeot-7570"
          #description: """
            <div class="col is-12"><ul>\n
            <li>Ouvre d'un seul mouvement.</li>\n
            <li>Coupe-capsule et d&eacute;capsuleur int&eacute;gr&eacute;.</li>\n
            <li>Pratique et performant.</li>\n
            </ul></div><h1>Descriptif Tire-Bouchon Sommelier Clavelin Peugeot</h1><div class="col is-12">Le tire-bouchon Sommelier Clavelin Peugeot a &eacute;t&eacute; con&ccedil;u pour apporter toujours plus de praticit&eacute; et de performance. Il permet d'ouvrir d'un mouvement continu tous les types de bouchon sans avoir &agrave; reprendre appui &agrave; mi-course. Son syst&egrave;me de poign&eacute;e est exclusif et brevet&eacute;. Il est muni d'un coupe-capsule, et d'un d&eacute;capsuleur int&eacute;gr&eacute;. Son design contemporain et futuriste le rend &agrave; la fois compact et pr&eacute;cieux.</div><h1>Caractéristiques Tire-Bouchon Sommelier Clavelin Peugeot</h1><div class="col is-12">- Acier inoxydable.<br />- Coupe-capsule et d&eacute;capsuleur int&eacute;gr&eacute;.<br />- Taille : 14 cm.</div>
            """
          #metaKeywords: null
          #metaDescription: null
          #shortDescription: null
          -fullTitle: null
          -metaTitle: null
        }
      ]
      #currentLocale: "fr_FR"
      #currentTranslation: null
      #fallbackLocale: "fr_FR"
      #variantSelectionMethod: "choice"
      #productTaxons: Doctrine\ORM\PersistentCollection {#8579 …}
      #channels: Doctrine\ORM\PersistentCollection {#8565 …}
      #mainTaxon: App\Entity\Taxonomy\Taxon {#7528 …}
      #reviews: Doctrine\ORM\PersistentCollection {#8561 …}
      #averageRating: 0.0
      #images: Doctrine\ORM\PersistentCollection {#8563 …}
      #productType: null
    }
    "class" => "w-100 h-100 object-fit-cover"
  ]
}
sylius_shop:catalog_promotions
[Anonymous]
102.0 MiB 0.61 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29432
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29423 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29499 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29420 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#29368 …}
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#29376
    #collection: Doctrine\Common\Collections\ArrayCollection {#29385 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#29364 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38312 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38314 …}
  }
  "withDescription" => false
]
Attributes
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29432
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29423 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29499 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29420 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => "Tire-Bouchon Sommelier Clavelin Peugeot"
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#29376
    #collection: Doctrine\Common\Collections\ArrayCollection {#29385 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#29364 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38312 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38314 …}
  }
  "withDescription" => false
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#29503
  -props: [
    "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29432
      +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29423 …}
      +context: Sylius\TwigHooks\Bag\DataBag {#29499 …}
      +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29420 …}
      +prefixes: [
        "sylius_shop.product.index.content.body.main.card.prices"
        "sylius_shop.shared.product.card.prices"
      ]
    }
    "variant" => App\Entity\Product\ProductVariant {#29368 …}
    "applied_promotions" => Doctrine\ORM\PersistentCollection {#29376
      #collection: Doctrine\Common\Collections\ArrayCollection {#29385 …}
      #initialized: true
      -snapshot: []
      -owner: App\Entity\Channel\ChannelPricing {#29364 …}
      -association: Symfony\Component\VarDumper\Caster\CutStub {#38312 …}
      -backRefFieldName: null
      -isDirty: false
      -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
      -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38314 …}
    }
    "withDescription" => false
  ]
}
sylius_shop:product:card:price Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent 102.0 MiB 0.14 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29553
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29544 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29551 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29552 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#29368 …}
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Attributes
[
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent {#29556
  +variant: App\Entity\Product\ProductVariant {#29368 …}
  +price: "26,00\u{A0}"
  +originalPrice: "26,00\u{A0}"
  +hasDiscount: false
  #productVariantPricesCalculator: Sylius\Component\Core\Calculator\ProductVariantPriceCalculator {#5465 …}
  #moneyFormatter: Sylius\Bundle\MoneyBundle\Formatter\MoneyFormatter {#9059 …}
  #channelContext: Sylius\Component\Channel\Context\CachedPerRequestChannelContext {#4203 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  #currencyContext: Sylius\Component\Core\Currency\Context\ChannelAwareCurrencyContext {#12489 …}
  #currencyConverter: Sylius\Component\Currency\Converter\CurrencyConverter {#9056 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29553
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29544 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29551 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29552 …}
    +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 102.0 MiB 4.45 ms
Input props
[
  "product" => App\Entity\Product\Product {#8583
    #id: 2582
    #code: "tire-bouchon-peugeot-salma-3606"
    #attributes: Doctrine\ORM\PersistentCollection {#8590 …}
    #variants: Doctrine\ORM\PersistentCollection {#8592 …}
    #options: Doctrine\ORM\PersistentCollection {#8596 …}
    #associations: Doctrine\ORM\PersistentCollection {#8594 …}
    #createdAt: DateTime @1758632578 {#8581
      date: 2025-09-23 21:02:58.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632578 {#8582
      date: 2025-09-23 21:02:58.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8599 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8600
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8583}
        #id: 2582
        #name: "Tire-bouchon Peugeot Salma"
        #slug: "tire-bouchon-peugeot-salma-3606"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Coupe capsule int&eacute;gr&eacute; au socle.</li>\n
          <li>Vis sans fin, ouverture sans effort.</li>\n
          <li>Garantie 5 ans.&nbsp;</li>\n
          </ul></div><h1>Description tire-bouchon Peugeot Salma</h1><div class="col is-12">Le tire-bouchon Peugeot Salma permet d'ouvrir toutes vos bouteilles sans effort et d'un simple geste. Il suffit de tourner toujours dans le m&ecirc;me sens pour extraire le bouchon. Le tire-bouchon Peugeot Salma n'oublie d'&ecirc;tre &eacute;l&eacute;gant et peut &ecirc;tre pr&eacute;sent&eacute; &agrave; table.</div><h1>Caractéristiques tire-bouchon Peugeot Salma</h1><div class="col is-12">Hauteur : 19 cm. Vis sans fin t&eacute;flon&eacute;e. Support avec coupe capsule int&eacute;gr&eacute;. Garantie 5 ans.</div>
          """
        #metaKeywords: null
        #metaDescription: null
        #shortDescription: null
        -fullTitle: null
        -metaTitle: null
      }
    ]
    #currentLocale: "fr_FR"
    #currentTranslation: null
    #fallbackLocale: "fr_FR"
    #variantSelectionMethod: "choice"
    #productTaxons: Doctrine\ORM\PersistentCollection {#8602 …}
    #channels: Doctrine\ORM\PersistentCollection {#8588 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8533 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8584 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8586 …}
    #productType: null
  }
  "template" => "@SyliusShop/product/common/card.html.twig"
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27745
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27778 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27784 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27771 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
]
Attributes
[
  "template" => "@SyliusShop/product/common/card.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent {#29430
  +product: App\Entity\Product\Product {#8583
    #id: 2582
    #code: "tire-bouchon-peugeot-salma-3606"
    #attributes: Doctrine\ORM\PersistentCollection {#8590 …}
    #variants: Doctrine\ORM\PersistentCollection {#8592 …}
    #options: Doctrine\ORM\PersistentCollection {#8596 …}
    #associations: Doctrine\ORM\PersistentCollection {#8594 …}
    #createdAt: DateTime @1758632578 {#8581
      date: 2025-09-23 21:02:58.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632578 {#8582
      date: 2025-09-23 21:02:58.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8599 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8600
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8583}
        #id: 2582
        #name: "Tire-bouchon Peugeot Salma"
        #slug: "tire-bouchon-peugeot-salma-3606"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Coupe capsule int&eacute;gr&eacute; au socle.</li>\n
          <li>Vis sans fin, ouverture sans effort.</li>\n
          <li>Garantie 5 ans.&nbsp;</li>\n
          </ul></div><h1>Description tire-bouchon Peugeot Salma</h1><div class="col is-12">Le tire-bouchon Peugeot Salma permet d'ouvrir toutes vos bouteilles sans effort et d'un simple geste. Il suffit de tourner toujours dans le m&ecirc;me sens pour extraire le bouchon. Le tire-bouchon Peugeot Salma n'oublie d'&ecirc;tre &eacute;l&eacute;gant et peut &ecirc;tre pr&eacute;sent&eacute; &agrave; table.</div><h1>Caractéristiques tire-bouchon Peugeot Salma</h1><div class="col is-12">Hauteur : 19 cm. Vis sans fin t&eacute;flon&eacute;e. Support avec coupe capsule int&eacute;gr&eacute;. Garantie 5 ans.</div>
          """
        #metaKeywords: null
        #metaDescription: null
        #shortDescription: null
        -fullTitle: null
        -metaTitle: null
      }
    ]
    #currentLocale: "fr_FR"
    #currentTranslation: null
    #fallbackLocale: "fr_FR"
    #variantSelectionMethod: "choice"
    #productTaxons: Doctrine\ORM\PersistentCollection {#8602 …}
    #channels: Doctrine\ORM\PersistentCollection {#8588 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8533 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8584 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8586 …}
    #productType: null
  }
  +variant: App\Entity\Product\ProductVariant {#29619 …}
  +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 {#27745
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27778 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27784 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27771 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
}
sylius_shop:main_image
[Anonymous]
102.0 MiB 0.76 ms
Input props
[
  "product" => App\Entity\Product\Product {#8583
    #id: 2582
    #code: "tire-bouchon-peugeot-salma-3606"
    #attributes: Doctrine\ORM\PersistentCollection {#8590 …}
    #variants: Doctrine\ORM\PersistentCollection {#8592 …}
    #options: Doctrine\ORM\PersistentCollection {#8596 …}
    #associations: Doctrine\ORM\PersistentCollection {#8594 …}
    #createdAt: DateTime @1758632578 {#8581
      date: 2025-09-23 21:02:58.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632578 {#8582
      date: 2025-09-23 21:02:58.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8599 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8600
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8583}
        #id: 2582
        #name: "Tire-bouchon Peugeot Salma"
        #slug: "tire-bouchon-peugeot-salma-3606"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Coupe capsule int&eacute;gr&eacute; au socle.</li>\n
          <li>Vis sans fin, ouverture sans effort.</li>\n
          <li>Garantie 5 ans.&nbsp;</li>\n
          </ul></div><h1>Description tire-bouchon Peugeot Salma</h1><div class="col is-12">Le tire-bouchon Peugeot Salma permet d'ouvrir toutes vos bouteilles sans effort et d'un simple geste. Il suffit de tourner toujours dans le m&ecirc;me sens pour extraire le bouchon. Le tire-bouchon Peugeot Salma n'oublie d'&ecirc;tre &eacute;l&eacute;gant et peut &ecirc;tre pr&eacute;sent&eacute; &agrave; table.</div><h1>Caractéristiques tire-bouchon Peugeot Salma</h1><div class="col is-12">Hauteur : 19 cm. Vis sans fin t&eacute;flon&eacute;e. Support avec coupe capsule int&eacute;gr&eacute;. Garantie 5 ans.</div>
          """
        #metaKeywords: null
        #metaDescription: null
        #shortDescription: null
        -fullTitle: null
        -metaTitle: null
      }
    ]
    #currentLocale: "fr_FR"
    #currentTranslation: null
    #fallbackLocale: "fr_FR"
    #variantSelectionMethod: "choice"
    #productTaxons: Doctrine\ORM\PersistentCollection {#8602 …}
    #channels: Doctrine\ORM\PersistentCollection {#8588 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8533 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8584 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8586 …}
    #productType: null
  }
  "class" => "w-100 h-100 object-fit-cover"
]
Attributes
[
  "product" => "Tire-bouchon Peugeot Salma"
  "class" => "w-100 h-100 object-fit-cover"
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#29693
  -props: [
    "product" => App\Entity\Product\Product {#8583
      #id: 2582
      #code: "tire-bouchon-peugeot-salma-3606"
      #attributes: Doctrine\ORM\PersistentCollection {#8590 …}
      #variants: Doctrine\ORM\PersistentCollection {#8592 …}
      #options: Doctrine\ORM\PersistentCollection {#8596 …}
      #associations: Doctrine\ORM\PersistentCollection {#8594 …}
      #createdAt: DateTime @1758632578 {#8581
        date: 2025-09-23 21:02:58.0 PRC (+08:00)
      }
      #updatedAt: DateTime @1758632578 {#8582
        date: 2025-09-23 21:02:58.0 PRC (+08:00)
      }
      #enabled: true
      #translations: Doctrine\ORM\PersistentCollection {#8599 …}
      #translationsCache: [
        "fr_FR" => App\Entity\Product\ProductTranslation {#8600
          #locale: "fr_FR"
          #translatable: App\Entity\Product\Product {#8583}
          #id: 2582
          #name: "Tire-bouchon Peugeot Salma"
          #slug: "tire-bouchon-peugeot-salma-3606"
          #description: """
            <div class="col is-12"><ul>\n
            <li>Coupe capsule int&eacute;gr&eacute; au socle.</li>\n
            <li>Vis sans fin, ouverture sans effort.</li>\n
            <li>Garantie 5 ans.&nbsp;</li>\n
            </ul></div><h1>Description tire-bouchon Peugeot Salma</h1><div class="col is-12">Le tire-bouchon Peugeot Salma permet d'ouvrir toutes vos bouteilles sans effort et d'un simple geste. Il suffit de tourner toujours dans le m&ecirc;me sens pour extraire le bouchon. Le tire-bouchon Peugeot Salma n'oublie d'&ecirc;tre &eacute;l&eacute;gant et peut &ecirc;tre pr&eacute;sent&eacute; &agrave; table.</div><h1>Caractéristiques tire-bouchon Peugeot Salma</h1><div class="col is-12">Hauteur : 19 cm. Vis sans fin t&eacute;flon&eacute;e. Support avec coupe capsule int&eacute;gr&eacute;. Garantie 5 ans.</div>
            """
          #metaKeywords: null
          #metaDescription: null
          #shortDescription: null
          -fullTitle: null
          -metaTitle: null
        }
      ]
      #currentLocale: "fr_FR"
      #currentTranslation: null
      #fallbackLocale: "fr_FR"
      #variantSelectionMethod: "choice"
      #productTaxons: Doctrine\ORM\PersistentCollection {#8602 …}
      #channels: Doctrine\ORM\PersistentCollection {#8588 …}
      #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8533 …}
      #reviews: Doctrine\ORM\PersistentCollection {#8584 …}
      #averageRating: 0.0
      #images: Doctrine\ORM\PersistentCollection {#8586 …}
      #productType: null
    }
    "class" => "w-100 h-100 object-fit-cover"
  ]
}
sylius_shop:catalog_promotions
[Anonymous]
102.0 MiB 0.58 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29767
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29677 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29756 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29674 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#29619 …}
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#29627
    #collection: Doctrine\Common\Collections\ArrayCollection {#29639 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#29615 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38326 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38328 …}
  }
  "withDescription" => false
]
Attributes
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29767
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29677 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29756 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29674 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => "Tire-bouchon Peugeot Salma"
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#29627
    #collection: Doctrine\Common\Collections\ArrayCollection {#29639 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#29615 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38326 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38328 …}
  }
  "withDescription" => false
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#29772
  -props: [
    "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29767
      +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29677 …}
      +context: Sylius\TwigHooks\Bag\DataBag {#29756 …}
      +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29674 …}
      +prefixes: [
        "sylius_shop.product.index.content.body.main.card.prices"
        "sylius_shop.shared.product.card.prices"
      ]
    }
    "variant" => App\Entity\Product\ProductVariant {#29619 …}
    "applied_promotions" => Doctrine\ORM\PersistentCollection {#29627
      #collection: Doctrine\Common\Collections\ArrayCollection {#29639 …}
      #initialized: true
      -snapshot: []
      -owner: App\Entity\Channel\ChannelPricing {#29615 …}
      -association: Symfony\Component\VarDumper\Caster\CutStub {#38326 …}
      -backRefFieldName: null
      -isDirty: false
      -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
      -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38328 …}
    }
    "withDescription" => false
  ]
}
sylius_shop:product:card:price Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent 102.0 MiB 0.14 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29821
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29812 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29819 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29820 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#29619 …}
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Attributes
[
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent {#29824
  +variant: App\Entity\Product\ProductVariant {#29619 …}
  +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 {#9059 …}
  #channelContext: Sylius\Component\Channel\Context\CachedPerRequestChannelContext {#4203 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  #currencyContext: Sylius\Component\Core\Currency\Context\ChannelAwareCurrencyContext {#12489 …}
  #currencyConverter: Sylius\Component\Currency\Converter\CurrencyConverter {#9056 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29821
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29812 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29819 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29820 …}
    +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 102.0 MiB 4.35 ms
Input props
[
  "product" => App\Entity\Product\Product {#8609
    #id: 2583
    #code: "tire-bouchon-melchior-peugeot-4456"
    #attributes: Doctrine\ORM\PersistentCollection {#8616 …}
    #variants: Doctrine\ORM\PersistentCollection {#8618 …}
    #options: Doctrine\ORM\PersistentCollection {#8622 …}
    #associations: Doctrine\ORM\PersistentCollection {#8620 …}
    #createdAt: DateTime @1758632578 {#8607
      date: 2025-09-23 21:02:58.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632578 {#8608
      date: 2025-09-23 21:02:58.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8625 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8626
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8609}
        #id: 2583
        #name: "Tire-bouchon Melchior Peugeot"
        #slug: "tire-bouchon-melchior-peugeot-4456"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Ouverture facile en 2 mouvements.</li>\n
          <li>Coupe capsuleur et d&eacute;capsuleur int&eacute;gr&eacute;s.</li>\n
          <li>Tr&egrave;s belle finition avec une tr&egrave;s bonne prise en main.&nbsp;</li>\n
          </ul></div><h1>Description Tire-bouchon Melchior Peugeot</h1><div class="col is-12">Inspir&eacute; du tire-bouchon sommelier traditionnel, le tire-bouchon Melchior Peugeot ouvre toutes vos bouteilles avec bouchon en li&egrave;ge avec une grande facilit&eacute;. L'ouverture se fait en 2 mouvements avec un minimum d'effort. Ce tire-bouchon est en outre &eacute;quip&eacute; d'un coupe capsule et d'un d&eacute;capsuleur int&eacute;gr&eacute;.</div><h1>Caractéristiques Tire-bouchon Melchior Peugeot</h1><div class="col is-12">Corps aluminium. M&egrave;che t&eacute;flonn&eacute;e. Coupe capsule et d&eacute;capsuleur int&eacute;gr&eacute;s. Longueur 13,2.</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 {#8628 …}
    #channels: Doctrine\ORM\PersistentCollection {#8614 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8533 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8610 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8612 …}
    #productType: null
  }
  "template" => "@SyliusShop/product/common/card.html.twig"
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27745
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27778 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27784 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27771 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
]
Attributes
[
  "template" => "@SyliusShop/product/common/card.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent {#29684
  +product: App\Entity\Product\Product {#8609
    #id: 2583
    #code: "tire-bouchon-melchior-peugeot-4456"
    #attributes: Doctrine\ORM\PersistentCollection {#8616 …}
    #variants: Doctrine\ORM\PersistentCollection {#8618 …}
    #options: Doctrine\ORM\PersistentCollection {#8622 …}
    #associations: Doctrine\ORM\PersistentCollection {#8620 …}
    #createdAt: DateTime @1758632578 {#8607
      date: 2025-09-23 21:02:58.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632578 {#8608
      date: 2025-09-23 21:02:58.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8625 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8626
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8609}
        #id: 2583
        #name: "Tire-bouchon Melchior Peugeot"
        #slug: "tire-bouchon-melchior-peugeot-4456"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Ouverture facile en 2 mouvements.</li>\n
          <li>Coupe capsuleur et d&eacute;capsuleur int&eacute;gr&eacute;s.</li>\n
          <li>Tr&egrave;s belle finition avec une tr&egrave;s bonne prise en main.&nbsp;</li>\n
          </ul></div><h1>Description Tire-bouchon Melchior Peugeot</h1><div class="col is-12">Inspir&eacute; du tire-bouchon sommelier traditionnel, le tire-bouchon Melchior Peugeot ouvre toutes vos bouteilles avec bouchon en li&egrave;ge avec une grande facilit&eacute;. L'ouverture se fait en 2 mouvements avec un minimum d'effort. Ce tire-bouchon est en outre &eacute;quip&eacute; d'un coupe capsule et d'un d&eacute;capsuleur int&eacute;gr&eacute;.</div><h1>Caractéristiques Tire-bouchon Melchior Peugeot</h1><div class="col is-12">Corps aluminium. M&egrave;che t&eacute;flonn&eacute;e. Coupe capsule et d&eacute;capsuleur int&eacute;gr&eacute;s. Longueur 13,2.</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 {#8628 …}
    #channels: Doctrine\ORM\PersistentCollection {#8614 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8533 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8610 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8612 …}
    #productType: null
  }
  +variant: App\Entity\Product\ProductVariant {#29887 …}
  +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 {#27745
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27778 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27784 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27771 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
}
sylius_shop:main_image
[Anonymous]
102.0 MiB 0.71 ms
Input props
[
  "product" => App\Entity\Product\Product {#8609
    #id: 2583
    #code: "tire-bouchon-melchior-peugeot-4456"
    #attributes: Doctrine\ORM\PersistentCollection {#8616 …}
    #variants: Doctrine\ORM\PersistentCollection {#8618 …}
    #options: Doctrine\ORM\PersistentCollection {#8622 …}
    #associations: Doctrine\ORM\PersistentCollection {#8620 …}
    #createdAt: DateTime @1758632578 {#8607
      date: 2025-09-23 21:02:58.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632578 {#8608
      date: 2025-09-23 21:02:58.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8625 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8626
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8609}
        #id: 2583
        #name: "Tire-bouchon Melchior Peugeot"
        #slug: "tire-bouchon-melchior-peugeot-4456"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Ouverture facile en 2 mouvements.</li>\n
          <li>Coupe capsuleur et d&eacute;capsuleur int&eacute;gr&eacute;s.</li>\n
          <li>Tr&egrave;s belle finition avec une tr&egrave;s bonne prise en main.&nbsp;</li>\n
          </ul></div><h1>Description Tire-bouchon Melchior Peugeot</h1><div class="col is-12">Inspir&eacute; du tire-bouchon sommelier traditionnel, le tire-bouchon Melchior Peugeot ouvre toutes vos bouteilles avec bouchon en li&egrave;ge avec une grande facilit&eacute;. L'ouverture se fait en 2 mouvements avec un minimum d'effort. Ce tire-bouchon est en outre &eacute;quip&eacute; d'un coupe capsule et d'un d&eacute;capsuleur int&eacute;gr&eacute;.</div><h1>Caractéristiques Tire-bouchon Melchior Peugeot</h1><div class="col is-12">Corps aluminium. M&egrave;che t&eacute;flonn&eacute;e. Coupe capsule et d&eacute;capsuleur int&eacute;gr&eacute;s. Longueur 13,2.</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 {#8628 …}
    #channels: Doctrine\ORM\PersistentCollection {#8614 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8533 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8610 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8612 …}
    #productType: null
  }
  "class" => "w-100 h-100 object-fit-cover"
]
Attributes
[
  "product" => "Tire-bouchon Melchior Peugeot"
  "class" => "w-100 h-100 object-fit-cover"
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#29958
  -props: [
    "product" => App\Entity\Product\Product {#8609
      #id: 2583
      #code: "tire-bouchon-melchior-peugeot-4456"
      #attributes: Doctrine\ORM\PersistentCollection {#8616 …}
      #variants: Doctrine\ORM\PersistentCollection {#8618 …}
      #options: Doctrine\ORM\PersistentCollection {#8622 …}
      #associations: Doctrine\ORM\PersistentCollection {#8620 …}
      #createdAt: DateTime @1758632578 {#8607
        date: 2025-09-23 21:02:58.0 PRC (+08:00)
      }
      #updatedAt: DateTime @1758632578 {#8608
        date: 2025-09-23 21:02:58.0 PRC (+08:00)
      }
      #enabled: true
      #translations: Doctrine\ORM\PersistentCollection {#8625 …}
      #translationsCache: [
        "fr_FR" => App\Entity\Product\ProductTranslation {#8626
          #locale: "fr_FR"
          #translatable: App\Entity\Product\Product {#8609}
          #id: 2583
          #name: "Tire-bouchon Melchior Peugeot"
          #slug: "tire-bouchon-melchior-peugeot-4456"
          #description: """
            <div class="col is-12"><ul>\n
            <li>Ouverture facile en 2 mouvements.</li>\n
            <li>Coupe capsuleur et d&eacute;capsuleur int&eacute;gr&eacute;s.</li>\n
            <li>Tr&egrave;s belle finition avec une tr&egrave;s bonne prise en main.&nbsp;</li>\n
            </ul></div><h1>Description Tire-bouchon Melchior Peugeot</h1><div class="col is-12">Inspir&eacute; du tire-bouchon sommelier traditionnel, le tire-bouchon Melchior Peugeot ouvre toutes vos bouteilles avec bouchon en li&egrave;ge avec une grande facilit&eacute;. L'ouverture se fait en 2 mouvements avec un minimum d'effort. Ce tire-bouchon est en outre &eacute;quip&eacute; d'un coupe capsule et d'un d&eacute;capsuleur int&eacute;gr&eacute;.</div><h1>Caractéristiques Tire-bouchon Melchior Peugeot</h1><div class="col is-12">Corps aluminium. M&egrave;che t&eacute;flonn&eacute;e. Coupe capsule et d&eacute;capsuleur int&eacute;gr&eacute;s. Longueur 13,2.</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 {#8628 …}
      #channels: Doctrine\ORM\PersistentCollection {#8614 …}
      #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#8533 …}
      #reviews: Doctrine\ORM\PersistentCollection {#8610 …}
      #averageRating: 0.0
      #images: Doctrine\ORM\PersistentCollection {#8612 …}
      #productType: null
    }
    "class" => "w-100 h-100 object-fit-cover"
  ]
}
sylius_shop:catalog_promotions
[Anonymous]
102.0 MiB 0.57 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30023
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29942 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30012 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29939 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#29887 …}
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#29895
    #collection: Doctrine\Common\Collections\ArrayCollection {#29904 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#29883 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38340 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38342 …}
  }
  "withDescription" => false
]
Attributes
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30023
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29942 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30012 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29939 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => "Tire-bouchon Melchior Peugeot"
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#29895
    #collection: Doctrine\Common\Collections\ArrayCollection {#29904 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#29883 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38340 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38342 …}
  }
  "withDescription" => false
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#30028
  -props: [
    "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30023
      +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29942 …}
      +context: Sylius\TwigHooks\Bag\DataBag {#30012 …}
      +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29939 …}
      +prefixes: [
        "sylius_shop.product.index.content.body.main.card.prices"
        "sylius_shop.shared.product.card.prices"
      ]
    }
    "variant" => App\Entity\Product\ProductVariant {#29887 …}
    "applied_promotions" => Doctrine\ORM\PersistentCollection {#29895
      #collection: Doctrine\Common\Collections\ArrayCollection {#29904 …}
      #initialized: true
      -snapshot: []
      -owner: App\Entity\Channel\ChannelPricing {#29883 …}
      -association: Symfony\Component\VarDumper\Caster\CutStub {#38340 …}
      -backRefFieldName: null
      -isDirty: false
      -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
      -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38342 …}
    }
    "withDescription" => false
  ]
}
sylius_shop:product:card:price Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent 102.0 MiB 0.15 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30077
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30068 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30075 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30076 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#29887 …}
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Attributes
[
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent {#30080
  +variant: App\Entity\Product\ProductVariant {#29887 …}
  +price: "31,00\u{A0}"
  +originalPrice: "31,00\u{A0}"
  +hasDiscount: false
  #productVariantPricesCalculator: Sylius\Component\Core\Calculator\ProductVariantPriceCalculator {#5465 …}
  #moneyFormatter: Sylius\Bundle\MoneyBundle\Formatter\MoneyFormatter {#9059 …}
  #channelContext: Sylius\Component\Channel\Context\CachedPerRequestChannelContext {#4203 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  #currencyContext: Sylius\Component\Core\Currency\Context\ChannelAwareCurrencyContext {#12489 …}
  #currencyConverter: Sylius\Component\Currency\Converter\CurrencyConverter {#9056 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30077
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30068 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30075 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30076 …}
    +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 102.0 MiB 4.20 ms
Input props
[
  "product" => App\Entity\Product\Product {#8632
    #id: 2572
    #code: "tire-bouchon-electrique-rechargeable-elis-reverse-peugeot-7932"
    #attributes: Doctrine\ORM\PersistentCollection {#8639 …}
    #variants: Doctrine\ORM\PersistentCollection {#8641 …}
    #options: Doctrine\ORM\PersistentCollection {#8645 …}
    #associations: Doctrine\ORM\PersistentCollection {#8643 …}
    #createdAt: DateTime @1758632577 {#8630
      date: 2025-09-23 21:02:57.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632577 {#8631
      date: 2025-09-23 21:02:57.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8648 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8649
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8632}
        #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 {#8651 …}
    #channels: Doctrine\ORM\PersistentCollection {#8637 …}
    #mainTaxon: App\Entity\Taxonomy\Taxon {#7528 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8633 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8635 …}
    #productType: null
  }
  "template" => "@SyliusShop/product/common/card.html.twig"
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27745
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27778 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27784 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27771 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
]
Attributes
[
  "template" => "@SyliusShop/product/common/card.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent {#29949
  +product: App\Entity\Product\Product {#8632
    #id: 2572
    #code: "tire-bouchon-electrique-rechargeable-elis-reverse-peugeot-7932"
    #attributes: Doctrine\ORM\PersistentCollection {#8639 …}
    #variants: Doctrine\ORM\PersistentCollection {#8641 …}
    #options: Doctrine\ORM\PersistentCollection {#8645 …}
    #associations: Doctrine\ORM\PersistentCollection {#8643 …}
    #createdAt: DateTime @1758632577 {#8630
      date: 2025-09-23 21:02:57.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632577 {#8631
      date: 2025-09-23 21:02:57.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8648 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8649
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8632}
        #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 {#8651 …}
    #channels: Doctrine\ORM\PersistentCollection {#8637 …}
    #mainTaxon: App\Entity\Taxonomy\Taxon {#7528 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8633 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8635 …}
    #productType: null
  }
  +variant: App\Entity\Product\ProductVariant {#30143 …}
  +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 {#27745
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27778 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27784 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27771 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
}
sylius_shop:main_image
[Anonymous]
102.0 MiB 0.73 ms
Input props
[
  "product" => App\Entity\Product\Product {#8632
    #id: 2572
    #code: "tire-bouchon-electrique-rechargeable-elis-reverse-peugeot-7932"
    #attributes: Doctrine\ORM\PersistentCollection {#8639 …}
    #variants: Doctrine\ORM\PersistentCollection {#8641 …}
    #options: Doctrine\ORM\PersistentCollection {#8645 …}
    #associations: Doctrine\ORM\PersistentCollection {#8643 …}
    #createdAt: DateTime @1758632577 {#8630
      date: 2025-09-23 21:02:57.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632577 {#8631
      date: 2025-09-23 21:02:57.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8648 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8649
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8632}
        #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 {#8651 …}
    #channels: Doctrine\ORM\PersistentCollection {#8637 …}
    #mainTaxon: App\Entity\Taxonomy\Taxon {#7528 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8633 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8635 …}
    #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 {#30214
  -props: [
    "product" => App\Entity\Product\Product {#8632
      #id: 2572
      #code: "tire-bouchon-electrique-rechargeable-elis-reverse-peugeot-7932"
      #attributes: Doctrine\ORM\PersistentCollection {#8639 …}
      #variants: Doctrine\ORM\PersistentCollection {#8641 …}
      #options: Doctrine\ORM\PersistentCollection {#8645 …}
      #associations: Doctrine\ORM\PersistentCollection {#8643 …}
      #createdAt: DateTime @1758632577 {#8630
        date: 2025-09-23 21:02:57.0 PRC (+08:00)
      }
      #updatedAt: DateTime @1758632577 {#8631
        date: 2025-09-23 21:02:57.0 PRC (+08:00)
      }
      #enabled: true
      #translations: Doctrine\ORM\PersistentCollection {#8648 …}
      #translationsCache: [
        "fr_FR" => App\Entity\Product\ProductTranslation {#8649
          #locale: "fr_FR"
          #translatable: App\Entity\Product\Product {#8632}
          #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 {#8651 …}
      #channels: Doctrine\ORM\PersistentCollection {#8637 …}
      #mainTaxon: App\Entity\Taxonomy\Taxon {#7528 …}
      #reviews: Doctrine\ORM\PersistentCollection {#8633 …}
      #averageRating: 0.0
      #images: Doctrine\ORM\PersistentCollection {#8635 …}
      #productType: null
    }
    "class" => "w-100 h-100 object-fit-cover"
  ]
}
sylius_shop:catalog_promotions
[Anonymous]
102.0 MiB 0.62 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30207
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30198 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30274 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30195 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#30143 …}
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#30151
    #collection: Doctrine\Common\Collections\ArrayCollection {#30160 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#30139 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38354 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38356 …}
  }
  "withDescription" => false
]
Attributes
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30207
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30198 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30274 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30195 …}
    +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 {#30151
    #collection: Doctrine\Common\Collections\ArrayCollection {#30160 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#30139 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38354 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38356 …}
  }
  "withDescription" => false
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#30278
  -props: [
    "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30207
      +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30198 …}
      +context: Sylius\TwigHooks\Bag\DataBag {#30274 …}
      +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30195 …}
      +prefixes: [
        "sylius_shop.product.index.content.body.main.card.prices"
        "sylius_shop.shared.product.card.prices"
      ]
    }
    "variant" => App\Entity\Product\ProductVariant {#30143 …}
    "applied_promotions" => Doctrine\ORM\PersistentCollection {#30151
      #collection: Doctrine\Common\Collections\ArrayCollection {#30160 …}
      #initialized: true
      -snapshot: []
      -owner: App\Entity\Channel\ChannelPricing {#30139 …}
      -association: Symfony\Component\VarDumper\Caster\CutStub {#38354 …}
      -backRefFieldName: null
      -isDirty: false
      -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
      -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38356 …}
    }
    "withDescription" => false
  ]
}
sylius_shop:product:card:price Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent 102.0 MiB 0.15 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30328
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30319 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30326 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30327 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#30143 …}
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Attributes
[
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent {#30331
  +variant: App\Entity\Product\ProductVariant {#30143 …}
  +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 {#9059 …}
  #channelContext: Sylius\Component\Channel\Context\CachedPerRequestChannelContext {#4203 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  #currencyContext: Sylius\Component\Core\Currency\Context\ChannelAwareCurrencyContext {#12489 …}
  #currencyConverter: Sylius\Component\Currency\Converter\CurrencyConverter {#9056 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30328
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30319 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30326 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30327 …}
    +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 102.0 MiB 4.09 ms
Input props
[
  "product" => App\Entity\Product\Product {#8655
    #id: 2571
    #code: "tire-bouchon-de-bar-fixation-murale-tellier-7735"
    #attributes: Doctrine\ORM\PersistentCollection {#8662 …}
    #variants: Doctrine\ORM\PersistentCollection {#8664 …}
    #options: Doctrine\ORM\PersistentCollection {#8668 …}
    #associations: Doctrine\ORM\PersistentCollection {#8666 …}
    #createdAt: DateTime @1758632577 {#8653
      date: 2025-09-23 21:02:57.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632577 {#8654
      date: 2025-09-23 21:02:57.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8671 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8672
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8655}
        #id: 2571
        #name: "Tire-Bouchon de Bar Fixation Murale Tellier"
        #slug: "tire-bouchon-de-bar-fixation-murale-tellier-7735"
        #description: """
          <div class="col is-12"><ul>\n
          <li>M&egrave;che interchangeable.</li>\n
          <li>Fixation murale.</li>\n
          <li>Qualit&eacute; professionnelle.</li>\n
          </ul></div><h1>Descriptif Tire-Bouchon de Bar Fixation Murale Tellier</h1><div class="col is-12">Le Tire-Bouchon de Bar Fixation Murale Tellier est con&ccedil;u pour &ecirc;tre utilis&eacute; de fa&ccedil;on intensive par les professionnels et les amateurs avertis. Utilisation tr&egrave;s simple, il suffit d'un aller-retour du levier pour d&eacute;boucher les bouteilles et &eacute;jecter le bouchon.</div><h1>Caractéristiques Tire-Bouchon de Bar Fixation Murale Tellier</h1><div class="col is-12">- Acier chrom&eacute;.<br />- Fixation murale.<br />- Dimensions : 57 x 12 x 6,5 cm.<br />- Poids : 1,92 kg.</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 {#8674 …}
    #channels: Doctrine\ORM\PersistentCollection {#8660 …}
    #mainTaxon: App\Entity\Taxonomy\Taxon {#7528 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8656 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8658 …}
    #productType: null
  }
  "template" => "@SyliusShop/product/common/card.html.twig"
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27745
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27778 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27784 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27771 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
]
Attributes
[
  "template" => "@SyliusShop/product/common/card.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent {#30205
  +product: App\Entity\Product\Product {#8655
    #id: 2571
    #code: "tire-bouchon-de-bar-fixation-murale-tellier-7735"
    #attributes: Doctrine\ORM\PersistentCollection {#8662 …}
    #variants: Doctrine\ORM\PersistentCollection {#8664 …}
    #options: Doctrine\ORM\PersistentCollection {#8668 …}
    #associations: Doctrine\ORM\PersistentCollection {#8666 …}
    #createdAt: DateTime @1758632577 {#8653
      date: 2025-09-23 21:02:57.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632577 {#8654
      date: 2025-09-23 21:02:57.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8671 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8672
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8655}
        #id: 2571
        #name: "Tire-Bouchon de Bar Fixation Murale Tellier"
        #slug: "tire-bouchon-de-bar-fixation-murale-tellier-7735"
        #description: """
          <div class="col is-12"><ul>\n
          <li>M&egrave;che interchangeable.</li>\n
          <li>Fixation murale.</li>\n
          <li>Qualit&eacute; professionnelle.</li>\n
          </ul></div><h1>Descriptif Tire-Bouchon de Bar Fixation Murale Tellier</h1><div class="col is-12">Le Tire-Bouchon de Bar Fixation Murale Tellier est con&ccedil;u pour &ecirc;tre utilis&eacute; de fa&ccedil;on intensive par les professionnels et les amateurs avertis. Utilisation tr&egrave;s simple, il suffit d'un aller-retour du levier pour d&eacute;boucher les bouteilles et &eacute;jecter le bouchon.</div><h1>Caractéristiques Tire-Bouchon de Bar Fixation Murale Tellier</h1><div class="col is-12">- Acier chrom&eacute;.<br />- Fixation murale.<br />- Dimensions : 57 x 12 x 6,5 cm.<br />- Poids : 1,92 kg.</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 {#8674 …}
    #channels: Doctrine\ORM\PersistentCollection {#8660 …}
    #mainTaxon: App\Entity\Taxonomy\Taxon {#7528 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8656 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8658 …}
    #productType: null
  }
  +variant: App\Entity\Product\ProductVariant {#30394 …}
  +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 {#27745
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27778 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27784 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27771 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
}
sylius_shop:main_image
[Anonymous]
102.0 MiB 0.66 ms
Input props
[
  "product" => App\Entity\Product\Product {#8655
    #id: 2571
    #code: "tire-bouchon-de-bar-fixation-murale-tellier-7735"
    #attributes: Doctrine\ORM\PersistentCollection {#8662 …}
    #variants: Doctrine\ORM\PersistentCollection {#8664 …}
    #options: Doctrine\ORM\PersistentCollection {#8668 …}
    #associations: Doctrine\ORM\PersistentCollection {#8666 …}
    #createdAt: DateTime @1758632577 {#8653
      date: 2025-09-23 21:02:57.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632577 {#8654
      date: 2025-09-23 21:02:57.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8671 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8672
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8655}
        #id: 2571
        #name: "Tire-Bouchon de Bar Fixation Murale Tellier"
        #slug: "tire-bouchon-de-bar-fixation-murale-tellier-7735"
        #description: """
          <div class="col is-12"><ul>\n
          <li>M&egrave;che interchangeable.</li>\n
          <li>Fixation murale.</li>\n
          <li>Qualit&eacute; professionnelle.</li>\n
          </ul></div><h1>Descriptif Tire-Bouchon de Bar Fixation Murale Tellier</h1><div class="col is-12">Le Tire-Bouchon de Bar Fixation Murale Tellier est con&ccedil;u pour &ecirc;tre utilis&eacute; de fa&ccedil;on intensive par les professionnels et les amateurs avertis. Utilisation tr&egrave;s simple, il suffit d'un aller-retour du levier pour d&eacute;boucher les bouteilles et &eacute;jecter le bouchon.</div><h1>Caractéristiques Tire-Bouchon de Bar Fixation Murale Tellier</h1><div class="col is-12">- Acier chrom&eacute;.<br />- Fixation murale.<br />- Dimensions : 57 x 12 x 6,5 cm.<br />- Poids : 1,92 kg.</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 {#8674 …}
    #channels: Doctrine\ORM\PersistentCollection {#8660 …}
    #mainTaxon: App\Entity\Taxonomy\Taxon {#7528 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8656 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8658 …}
    #productType: null
  }
  "class" => "w-100 h-100 object-fit-cover"
]
Attributes
[
  "product" => "Tire-Bouchon de Bar Fixation Murale Tellier"
  "class" => "w-100 h-100 object-fit-cover"
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#30468
  -props: [
    "product" => App\Entity\Product\Product {#8655
      #id: 2571
      #code: "tire-bouchon-de-bar-fixation-murale-tellier-7735"
      #attributes: Doctrine\ORM\PersistentCollection {#8662 …}
      #variants: Doctrine\ORM\PersistentCollection {#8664 …}
      #options: Doctrine\ORM\PersistentCollection {#8668 …}
      #associations: Doctrine\ORM\PersistentCollection {#8666 …}
      #createdAt: DateTime @1758632577 {#8653
        date: 2025-09-23 21:02:57.0 PRC (+08:00)
      }
      #updatedAt: DateTime @1758632577 {#8654
        date: 2025-09-23 21:02:57.0 PRC (+08:00)
      }
      #enabled: true
      #translations: Doctrine\ORM\PersistentCollection {#8671 …}
      #translationsCache: [
        "fr_FR" => App\Entity\Product\ProductTranslation {#8672
          #locale: "fr_FR"
          #translatable: App\Entity\Product\Product {#8655}
          #id: 2571
          #name: "Tire-Bouchon de Bar Fixation Murale Tellier"
          #slug: "tire-bouchon-de-bar-fixation-murale-tellier-7735"
          #description: """
            <div class="col is-12"><ul>\n
            <li>M&egrave;che interchangeable.</li>\n
            <li>Fixation murale.</li>\n
            <li>Qualit&eacute; professionnelle.</li>\n
            </ul></div><h1>Descriptif Tire-Bouchon de Bar Fixation Murale Tellier</h1><div class="col is-12">Le Tire-Bouchon de Bar Fixation Murale Tellier est con&ccedil;u pour &ecirc;tre utilis&eacute; de fa&ccedil;on intensive par les professionnels et les amateurs avertis. Utilisation tr&egrave;s simple, il suffit d'un aller-retour du levier pour d&eacute;boucher les bouteilles et &eacute;jecter le bouchon.</div><h1>Caractéristiques Tire-Bouchon de Bar Fixation Murale Tellier</h1><div class="col is-12">- Acier chrom&eacute;.<br />- Fixation murale.<br />- Dimensions : 57 x 12 x 6,5 cm.<br />- Poids : 1,92 kg.</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 {#8674 …}
      #channels: Doctrine\ORM\PersistentCollection {#8660 …}
      #mainTaxon: App\Entity\Taxonomy\Taxon {#7528 …}
      #reviews: Doctrine\ORM\PersistentCollection {#8656 …}
      #averageRating: 0.0
      #images: Doctrine\ORM\PersistentCollection {#8658 …}
      #productType: null
    }
    "class" => "w-100 h-100 object-fit-cover"
  ]
}
sylius_shop:catalog_promotions
[Anonymous]
102.0 MiB 0.61 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30461
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30452 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30519 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30449 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#30394 …}
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#30402
    #collection: Doctrine\Common\Collections\ArrayCollection {#30414 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#30390 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38368 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38370 …}
  }
  "withDescription" => false
]
Attributes
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30461
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30452 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30519 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30449 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => "Tire-Bouchon de Bar Fixation Murale Tellier"
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#30402
    #collection: Doctrine\Common\Collections\ArrayCollection {#30414 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#30390 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38368 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38370 …}
  }
  "withDescription" => false
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#30523
  -props: [
    "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30461
      +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30452 …}
      +context: Sylius\TwigHooks\Bag\DataBag {#30519 …}
      +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30449 …}
      +prefixes: [
        "sylius_shop.product.index.content.body.main.card.prices"
        "sylius_shop.shared.product.card.prices"
      ]
    }
    "variant" => App\Entity\Product\ProductVariant {#30394 …}
    "applied_promotions" => Doctrine\ORM\PersistentCollection {#30402
      #collection: Doctrine\Common\Collections\ArrayCollection {#30414 …}
      #initialized: true
      -snapshot: []
      -owner: App\Entity\Channel\ChannelPricing {#30390 …}
      -association: Symfony\Component\VarDumper\Caster\CutStub {#38368 …}
      -backRefFieldName: null
      -isDirty: false
      -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
      -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38370 …}
    }
    "withDescription" => false
  ]
}
sylius_shop:product:card:price Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent 102.0 MiB 0.15 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30573
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30564 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30571 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30572 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#30394 …}
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Attributes
[
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent {#30576
  +variant: App\Entity\Product\ProductVariant {#30394 …}
  +price: "99,00\u{A0}"
  +originalPrice: "99,00\u{A0}"
  +hasDiscount: false
  #productVariantPricesCalculator: Sylius\Component\Core\Calculator\ProductVariantPriceCalculator {#5465 …}
  #moneyFormatter: Sylius\Bundle\MoneyBundle\Formatter\MoneyFormatter {#9059 …}
  #channelContext: Sylius\Component\Channel\Context\CachedPerRequestChannelContext {#4203 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  #currencyContext: Sylius\Component\Core\Currency\Context\ChannelAwareCurrencyContext {#12489 …}
  #currencyConverter: Sylius\Component\Currency\Converter\CurrencyConverter {#9056 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30573
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30564 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30571 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30572 …}
    +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 102.0 MiB 4.11 ms
Input props
[
  "product" => App\Entity\Product\Product {#8678
    #id: 2564
    #code: "tire-bouchon-barrel-peugeot-5972"
    #attributes: Doctrine\ORM\PersistentCollection {#8685 …}
    #variants: Doctrine\ORM\PersistentCollection {#8687 …}
    #options: Doctrine\ORM\PersistentCollection {#8691 …}
    #associations: Doctrine\ORM\PersistentCollection {#8689 …}
    #createdAt: DateTime @1758632577 {#8676
      date: 2025-09-23 21:02:57.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632577 {#8677
      date: 2025-09-23 21:02:57.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8694 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8695
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8678}
        #id: 2564
        #name: "Tire-Bouchon Barrel Peugeot"
        #slug: "tire-bouchon-barrel-peugeot-5972"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Syst&egrave;me d'ouverture vis sans fin, sans effort.</li>\n
          <li>Bois de noyer PEFC.</li>\n
          <li>Fabriqu&eacute; en France.</li>\n
          </ul></div><h1>Descriptif Tire-Bouchon Barrel Peugeot</h1><div class="col is-12">Le Tire-Bouchon Barrel Peugeot est &eacute;quip&eacute; d'un syst&egrave;me d'ouverture &agrave; vis sans fin permettant un d&eacute;bouchage de vos meilleures bouteilles sans effort. Son design reprenant les codes de la tonnellerie traditionnelle, il interpellera vos convives par son originalit&eacute; !</div><h1>Caractéristiques Tire-Bouchon Barrel Peugeot</h1><div class="col is-12">Bois de noyer PEFC. Partie interne en abs. Poign&eacute;e en zamac. Vrille en acier tremp&eacute; pour un glissement ais&eacute;e et une r&eacute;sistance accrue. Hauteur 18 cm. Livr&eacute; en coffret. Garantie 2 ans. 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 {#8697 …}
    #channels: Doctrine\ORM\PersistentCollection {#8683 …}
    #mainTaxon: App\Entity\Taxonomy\Taxon {#7528 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8679 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8681 …}
    #productType: null
  }
  "template" => "@SyliusShop/product/common/card.html.twig"
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27745
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27778 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27784 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27771 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
]
Attributes
[
  "template" => "@SyliusShop/product/common/card.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent {#30459
  +product: App\Entity\Product\Product {#8678
    #id: 2564
    #code: "tire-bouchon-barrel-peugeot-5972"
    #attributes: Doctrine\ORM\PersistentCollection {#8685 …}
    #variants: Doctrine\ORM\PersistentCollection {#8687 …}
    #options: Doctrine\ORM\PersistentCollection {#8691 …}
    #associations: Doctrine\ORM\PersistentCollection {#8689 …}
    #createdAt: DateTime @1758632577 {#8676
      date: 2025-09-23 21:02:57.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632577 {#8677
      date: 2025-09-23 21:02:57.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8694 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8695
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8678}
        #id: 2564
        #name: "Tire-Bouchon Barrel Peugeot"
        #slug: "tire-bouchon-barrel-peugeot-5972"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Syst&egrave;me d'ouverture vis sans fin, sans effort.</li>\n
          <li>Bois de noyer PEFC.</li>\n
          <li>Fabriqu&eacute; en France.</li>\n
          </ul></div><h1>Descriptif Tire-Bouchon Barrel Peugeot</h1><div class="col is-12">Le Tire-Bouchon Barrel Peugeot est &eacute;quip&eacute; d'un syst&egrave;me d'ouverture &agrave; vis sans fin permettant un d&eacute;bouchage de vos meilleures bouteilles sans effort. Son design reprenant les codes de la tonnellerie traditionnelle, il interpellera vos convives par son originalit&eacute; !</div><h1>Caractéristiques Tire-Bouchon Barrel Peugeot</h1><div class="col is-12">Bois de noyer PEFC. Partie interne en abs. Poign&eacute;e en zamac. Vrille en acier tremp&eacute; pour un glissement ais&eacute;e et une r&eacute;sistance accrue. Hauteur 18 cm. Livr&eacute; en coffret. Garantie 2 ans. 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 {#8697 …}
    #channels: Doctrine\ORM\PersistentCollection {#8683 …}
    #mainTaxon: App\Entity\Taxonomy\Taxon {#7528 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8679 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8681 …}
    #productType: null
  }
  +variant: App\Entity\Product\ProductVariant {#30639 …}
  +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 {#27745
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27778 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27784 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27771 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
}
sylius_shop:main_image
[Anonymous]
102.0 MiB 0.67 ms
Input props
[
  "product" => App\Entity\Product\Product {#8678
    #id: 2564
    #code: "tire-bouchon-barrel-peugeot-5972"
    #attributes: Doctrine\ORM\PersistentCollection {#8685 …}
    #variants: Doctrine\ORM\PersistentCollection {#8687 …}
    #options: Doctrine\ORM\PersistentCollection {#8691 …}
    #associations: Doctrine\ORM\PersistentCollection {#8689 …}
    #createdAt: DateTime @1758632577 {#8676
      date: 2025-09-23 21:02:57.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632577 {#8677
      date: 2025-09-23 21:02:57.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8694 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8695
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8678}
        #id: 2564
        #name: "Tire-Bouchon Barrel Peugeot"
        #slug: "tire-bouchon-barrel-peugeot-5972"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Syst&egrave;me d'ouverture vis sans fin, sans effort.</li>\n
          <li>Bois de noyer PEFC.</li>\n
          <li>Fabriqu&eacute; en France.</li>\n
          </ul></div><h1>Descriptif Tire-Bouchon Barrel Peugeot</h1><div class="col is-12">Le Tire-Bouchon Barrel Peugeot est &eacute;quip&eacute; d'un syst&egrave;me d'ouverture &agrave; vis sans fin permettant un d&eacute;bouchage de vos meilleures bouteilles sans effort. Son design reprenant les codes de la tonnellerie traditionnelle, il interpellera vos convives par son originalit&eacute; !</div><h1>Caractéristiques Tire-Bouchon Barrel Peugeot</h1><div class="col is-12">Bois de noyer PEFC. Partie interne en abs. Poign&eacute;e en zamac. Vrille en acier tremp&eacute; pour un glissement ais&eacute;e et une r&eacute;sistance accrue. Hauteur 18 cm. Livr&eacute; en coffret. Garantie 2 ans. 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 {#8697 …}
    #channels: Doctrine\ORM\PersistentCollection {#8683 …}
    #mainTaxon: App\Entity\Taxonomy\Taxon {#7528 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8679 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8681 …}
    #productType: null
  }
  "class" => "w-100 h-100 object-fit-cover"
]
Attributes
[
  "product" => "Tire-Bouchon Barrel Peugeot"
  "class" => "w-100 h-100 object-fit-cover"
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#30710
  -props: [
    "product" => App\Entity\Product\Product {#8678
      #id: 2564
      #code: "tire-bouchon-barrel-peugeot-5972"
      #attributes: Doctrine\ORM\PersistentCollection {#8685 …}
      #variants: Doctrine\ORM\PersistentCollection {#8687 …}
      #options: Doctrine\ORM\PersistentCollection {#8691 …}
      #associations: Doctrine\ORM\PersistentCollection {#8689 …}
      #createdAt: DateTime @1758632577 {#8676
        date: 2025-09-23 21:02:57.0 PRC (+08:00)
      }
      #updatedAt: DateTime @1758632577 {#8677
        date: 2025-09-23 21:02:57.0 PRC (+08:00)
      }
      #enabled: true
      #translations: Doctrine\ORM\PersistentCollection {#8694 …}
      #translationsCache: [
        "fr_FR" => App\Entity\Product\ProductTranslation {#8695
          #locale: "fr_FR"
          #translatable: App\Entity\Product\Product {#8678}
          #id: 2564
          #name: "Tire-Bouchon Barrel Peugeot"
          #slug: "tire-bouchon-barrel-peugeot-5972"
          #description: """
            <div class="col is-12"><ul>\n
            <li>Syst&egrave;me d'ouverture vis sans fin, sans effort.</li>\n
            <li>Bois de noyer PEFC.</li>\n
            <li>Fabriqu&eacute; en France.</li>\n
            </ul></div><h1>Descriptif Tire-Bouchon Barrel Peugeot</h1><div class="col is-12">Le Tire-Bouchon Barrel Peugeot est &eacute;quip&eacute; d'un syst&egrave;me d'ouverture &agrave; vis sans fin permettant un d&eacute;bouchage de vos meilleures bouteilles sans effort. Son design reprenant les codes de la tonnellerie traditionnelle, il interpellera vos convives par son originalit&eacute; !</div><h1>Caractéristiques Tire-Bouchon Barrel Peugeot</h1><div class="col is-12">Bois de noyer PEFC. Partie interne en abs. Poign&eacute;e en zamac. Vrille en acier tremp&eacute; pour un glissement ais&eacute;e et une r&eacute;sistance accrue. Hauteur 18 cm. Livr&eacute; en coffret. Garantie 2 ans. 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 {#8697 …}
      #channels: Doctrine\ORM\PersistentCollection {#8683 …}
      #mainTaxon: App\Entity\Taxonomy\Taxon {#7528 …}
      #reviews: Doctrine\ORM\PersistentCollection {#8679 …}
      #averageRating: 0.0
      #images: Doctrine\ORM\PersistentCollection {#8681 …}
      #productType: null
    }
    "class" => "w-100 h-100 object-fit-cover"
  ]
}
sylius_shop:catalog_promotions
[Anonymous]
102.0 MiB 0.59 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30703
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30694 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30764 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30691 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#30639 …}
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#30647
    #collection: Doctrine\Common\Collections\ArrayCollection {#30656 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#30635 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38382 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38384 …}
  }
  "withDescription" => false
]
Attributes
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30703
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30694 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30764 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30691 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => "Tire-Bouchon Barrel Peugeot"
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#30647
    #collection: Doctrine\Common\Collections\ArrayCollection {#30656 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#30635 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38382 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38384 …}
  }
  "withDescription" => false
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#30768
  -props: [
    "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30703
      +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30694 …}
      +context: Sylius\TwigHooks\Bag\DataBag {#30764 …}
      +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30691 …}
      +prefixes: [
        "sylius_shop.product.index.content.body.main.card.prices"
        "sylius_shop.shared.product.card.prices"
      ]
    }
    "variant" => App\Entity\Product\ProductVariant {#30639 …}
    "applied_promotions" => Doctrine\ORM\PersistentCollection {#30647
      #collection: Doctrine\Common\Collections\ArrayCollection {#30656 …}
      #initialized: true
      -snapshot: []
      -owner: App\Entity\Channel\ChannelPricing {#30635 …}
      -association: Symfony\Component\VarDumper\Caster\CutStub {#38382 …}
      -backRefFieldName: null
      -isDirty: false
      -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
      -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38384 …}
    }
    "withDescription" => false
  ]
}
sylius_shop:product:card:price Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent 102.0 MiB 0.17 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30818
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30809 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30816 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30817 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#30639 …}
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Attributes
[
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent {#30821
  +variant: App\Entity\Product\ProductVariant {#30639 …}
  +price: "49,00\u{A0}"
  +originalPrice: "49,00\u{A0}"
  +hasDiscount: false
  #productVariantPricesCalculator: Sylius\Component\Core\Calculator\ProductVariantPriceCalculator {#5465 …}
  #moneyFormatter: Sylius\Bundle\MoneyBundle\Formatter\MoneyFormatter {#9059 …}
  #channelContext: Sylius\Component\Channel\Context\CachedPerRequestChannelContext {#4203 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  #currencyContext: Sylius\Component\Core\Currency\Context\ChannelAwareCurrencyContext {#12489 …}
  #currencyConverter: Sylius\Component\Currency\Converter\CurrencyConverter {#9056 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30818
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30809 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30816 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30817 …}
    +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 102.0 MiB 4.19 ms
Input props
[
  "product" => App\Entity\Product\Product {#8701
    #id: 2568
    #code: "tire-bouchon-andree-jardin-7086"
    #attributes: Doctrine\ORM\PersistentCollection {#8708 …}
    #variants: Doctrine\ORM\PersistentCollection {#8710 …}
    #options: Doctrine\ORM\PersistentCollection {#8714 …}
    #associations: Doctrine\ORM\PersistentCollection {#8712 …}
    #createdAt: DateTime @1758632577 {#8699
      date: 2025-09-23 21:02:57.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632577 {#8700
      date: 2025-09-23 21:02:57.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8717 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8718
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8701}
        #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 {#8720 …}
    #channels: Doctrine\ORM\PersistentCollection {#8706 …}
    #mainTaxon: App\Entity\Taxonomy\Taxon {#7528 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8702 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8704 …}
    #productType: null
  }
  "template" => "@SyliusShop/product/common/card.html.twig"
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27745
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27778 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27784 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27771 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
]
Attributes
[
  "template" => "@SyliusShop/product/common/card.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent {#30701
  +product: App\Entity\Product\Product {#8701
    #id: 2568
    #code: "tire-bouchon-andree-jardin-7086"
    #attributes: Doctrine\ORM\PersistentCollection {#8708 …}
    #variants: Doctrine\ORM\PersistentCollection {#8710 …}
    #options: Doctrine\ORM\PersistentCollection {#8714 …}
    #associations: Doctrine\ORM\PersistentCollection {#8712 …}
    #createdAt: DateTime @1758632577 {#8699
      date: 2025-09-23 21:02:57.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632577 {#8700
      date: 2025-09-23 21:02:57.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8717 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8718
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8701}
        #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 {#8720 …}
    #channels: Doctrine\ORM\PersistentCollection {#8706 …}
    #mainTaxon: App\Entity\Taxonomy\Taxon {#7528 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8702 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8704 …}
    #productType: null
  }
  +variant: App\Entity\Product\ProductVariant {#30884 …}
  +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 {#27745
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27778 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27784 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27771 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
}
sylius_shop:main_image
[Anonymous]
102.0 MiB 0.72 ms
Input props
[
  "product" => App\Entity\Product\Product {#8701
    #id: 2568
    #code: "tire-bouchon-andree-jardin-7086"
    #attributes: Doctrine\ORM\PersistentCollection {#8708 …}
    #variants: Doctrine\ORM\PersistentCollection {#8710 …}
    #options: Doctrine\ORM\PersistentCollection {#8714 …}
    #associations: Doctrine\ORM\PersistentCollection {#8712 …}
    #createdAt: DateTime @1758632577 {#8699
      date: 2025-09-23 21:02:57.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632577 {#8700
      date: 2025-09-23 21:02:57.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8717 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8718
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8701}
        #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 {#8720 …}
    #channels: Doctrine\ORM\PersistentCollection {#8706 …}
    #mainTaxon: App\Entity\Taxonomy\Taxon {#7528 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8702 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8704 …}
    #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 {#30955
  -props: [
    "product" => App\Entity\Product\Product {#8701
      #id: 2568
      #code: "tire-bouchon-andree-jardin-7086"
      #attributes: Doctrine\ORM\PersistentCollection {#8708 …}
      #variants: Doctrine\ORM\PersistentCollection {#8710 …}
      #options: Doctrine\ORM\PersistentCollection {#8714 …}
      #associations: Doctrine\ORM\PersistentCollection {#8712 …}
      #createdAt: DateTime @1758632577 {#8699
        date: 2025-09-23 21:02:57.0 PRC (+08:00)
      }
      #updatedAt: DateTime @1758632577 {#8700
        date: 2025-09-23 21:02:57.0 PRC (+08:00)
      }
      #enabled: true
      #translations: Doctrine\ORM\PersistentCollection {#8717 …}
      #translationsCache: [
        "fr_FR" => App\Entity\Product\ProductTranslation {#8718
          #locale: "fr_FR"
          #translatable: App\Entity\Product\Product {#8701}
          #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 {#8720 …}
      #channels: Doctrine\ORM\PersistentCollection {#8706 …}
      #mainTaxon: App\Entity\Taxonomy\Taxon {#7528 …}
      #reviews: Doctrine\ORM\PersistentCollection {#8702 …}
      #averageRating: 0.0
      #images: Doctrine\ORM\PersistentCollection {#8704 …}
      #productType: null
    }
    "class" => "w-100 h-100 object-fit-cover"
  ]
}
sylius_shop:catalog_promotions
[Anonymous]
102.0 MiB 0.62 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30948
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30939 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#31015 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30936 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#30884 …}
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#30892
    #collection: Doctrine\Common\Collections\ArrayCollection {#30901 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#30880 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38396 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38398 …}
  }
  "withDescription" => false
]
Attributes
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30948
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30939 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#31015 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30936 …}
    +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 {#30892
    #collection: Doctrine\Common\Collections\ArrayCollection {#30901 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#30880 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#38396 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38398 …}
  }
  "withDescription" => false
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#31019
  -props: [
    "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30948
      +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30939 …}
      +context: Sylius\TwigHooks\Bag\DataBag {#31015 …}
      +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30936 …}
      +prefixes: [
        "sylius_shop.product.index.content.body.main.card.prices"
        "sylius_shop.shared.product.card.prices"
      ]
    }
    "variant" => App\Entity\Product\ProductVariant {#30884 …}
    "applied_promotions" => Doctrine\ORM\PersistentCollection {#30892
      #collection: Doctrine\Common\Collections\ArrayCollection {#30901 …}
      #initialized: true
      -snapshot: []
      -owner: App\Entity\Channel\ChannelPricing {#30880 …}
      -association: Symfony\Component\VarDumper\Caster\CutStub {#38396 …}
      -backRefFieldName: null
      -isDirty: false
      -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
      -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#38398 …}
    }
    "withDescription" => false
  ]
}
sylius_shop:product:card:price Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent 102.0 MiB 0.15 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#31069
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#31060 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#31067 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#31068 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#30884 …}
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Attributes
[
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent {#31072
  +variant: App\Entity\Product\ProductVariant {#30884 …}
  +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 {#9059 …}
  #channelContext: Sylius\Component\Channel\Context\CachedPerRequestChannelContext {#4203 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  #currencyContext: Sylius\Component\Core\Currency\Context\ChannelAwareCurrencyContext {#12489 …}
  #currencyConverter: Sylius\Component\Currency\Converter\CurrencyConverter {#9056 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#31069
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#31060 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#31067 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#31068 …}
    +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 104.0 MiB 2.01 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27416
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#12554 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27438 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#12564 …}
    +prefixes: [
      "sylius_shop.base.offcanvas"
    ]
  }
  "template" => "@SyliusShop/shared/layout/base/offcanvas/cart.html.twig"
]
Attributes
[]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Cart\WidgetComponent {#31389
  +cart: App\Entity\Order\Order {#13468 …}
  #cartContext: Sylius\Component\Order\Context\CompositeCartContext {#1322 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27416
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#12554 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27438 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#12564 …}
    +prefixes: [
      "sylius_shop.base.offcanvas"
    ]
  }
  +template: "@SyliusShop/shared/layout/base/offcanvas/cart.html.twig"
  #repository: Sylius\Bundle\CoreBundle\Doctrine\ORM\OrderRepository {#4980 …}
}