Components

12 Twig Components
28 Render Count
84 ms Render Time
112.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
5 49.31ms
sylius_shop:main_image
[Anonymous]
@SyliusShop/shared/components/main_image.html.twig
5 7.02ms
sylius_shop:catalog_promotions
[Anonymous]
@SyliusShop/shared/components/catalog_promotions.html.twig
5 5.95ms
sylius_shop:product:card:price
"Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent"
@SyliusUi/components/default.html.twig
5 1.48ms
sylius_shop:common:currency_switcher
"Sylius\Bundle\ShopBundle\Twig\Component\Common\CurrencySwitcherComponent"
@SyliusUi/components/default.html.twig
1 1.52ms
sylius_shop:common:locale_switcher
"Sylius\Bundle\ShopBundle\Twig\Component\Common\LocaleSwitcherComponent"
@SyliusUi/components/default.html.twig
1 1.00ms
sylius_shop:cart:widget
"Sylius\Bundle\ShopBundle\Twig\Component\Cart\WidgetComponent"
@SyliusUi/components/default.html.twig
1 6.08ms
sylius_shop:common:taxon_menu
"Sylius\Bundle\ShopBundle\Twig\Component\Common\TaxonMenuComponent"
@SyliusUi/components/default.html.twig
1 18.56ms
sylius_shop:product:show:breadcrumbs
"Sylius\Bundle\ShopBundle\Twig\Component\Product\BreadcrumbComponent"
@SyliusUi/components/default.html.twig
1 2.47ms
sylius_shop:product:show:taxonomy
"Sylius\Bundle\ShopBundle\Twig\Component\Product\BreadcrumbComponent"
@SyliusUi/components/default.html.twig
1 0.69ms
sylius_shop:product:show:header
"Sylius\Bundle\ShopBundle\Twig\Component\Product\BreadcrumbComponent"
@SyliusUi/components/default.html.twig
1 1.75ms
sylius_shop:cart:widget:offcanvas
"Sylius\Bundle\ShopBundle\Twig\Component\Cart\WidgetComponent"
@SyliusUi/components/default.html.twig
1 3.04ms

Render calls

sylius_shop:common:currency_switcher Sylius\Bundle\ShopBundle\Twig\Component\Common\CurrencySwitcherComponent 112.0 MiB 1.52 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#12498
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#12491 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#12497 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#12496 …}
    +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 {#13118
  #channelContext: Sylius\Component\Channel\Context\CachedPerRequestChannelContext {#4203 …}
  #currencyContext: Sylius\Component\Core\Currency\Context\ChannelAwareCurrencyContext {#12389 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#12498
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#12491 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#12497 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#12496 …}
    +prefixes: [
      "sylius_shop.base.header.top_bar"
    ]
  }
}
sylius_shop:common:locale_switcher Sylius\Bundle\ShopBundle\Twig\Component\Common\LocaleSwitcherComponent 112.0 MiB 1.00 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#13195
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#13191 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#13193 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#13194 …}
    +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 {#13204
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  #localeProvider: Sylius\Component\Core\Provider\ChannelBasedLocaleProvider {#4528 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#13195
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#13191 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#13193 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#13194 …}
    +prefixes: [
      "sylius_shop.base.header.top_bar"
    ]
  }
}
sylius_shop:cart:widget Sylius\Bundle\ShopBundle\Twig\Component\Cart\WidgetComponent 112.0 MiB 6.08 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#13286
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#13265 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#13285 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#13284 …}
    +prefixes: [
      "sylius_shop.base.header.content"
    ]
  }
  "template" => "@SyliusShop/shared/components/header/cart.html.twig"
]
Attributes
[]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Cart\WidgetComponent {#13301
  +cart: App\Entity\Order\Order {#13368 …}
  #cartContext: Sylius\Component\Order\Context\CompositeCartContext {#1322 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#13286
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#13265 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#13285 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#13284 …}
    +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 112.0 MiB 18.56 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#13554
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#13542 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#13548 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#13540 …}
    +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 {#13563
  #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 {#13554
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#13542 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#13548 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#13540 …}
    +prefixes: [
      "sylius_shop.base.header.navbar"
    ]
  }
}
sylius_shop:product:show:breadcrumbs Sylius\Bundle\ShopBundle\Twig\Component\Product\BreadcrumbComponent 112.0 MiB 2.47 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27355
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27351 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27352 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27354 …}
    +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 {#27364
  #requestStack: Symfony\Component\HttpFoundation\RequestStack {#243 …}
  #taxonRepository: App\Repository\TaxonRepository {#7413 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27355
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27351 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27352 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27354 …}
    +prefixes: [
      "sylius_shop.product.index.content"
    ]
  }
}
sylius_shop:product:show:taxonomy Sylius\Bundle\ShopBundle\Twig\Component\Product\BreadcrumbComponent 112.0 MiB 0.69 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27469
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27465 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27466 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27468 …}
    +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 {#27477
  #requestStack: Symfony\Component\HttpFoundation\RequestStack {#243 …}
  #taxonRepository: App\Repository\TaxonRepository {#7413 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27469
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27465 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27466 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27468 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.sidebar"
    ]
  }
}
sylius_shop:product:show:header Sylius\Bundle\ShopBundle\Twig\Component\Product\BreadcrumbComponent 112.0 MiB 1.75 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27539
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27535 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27536 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27538 …}
    +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 {#27547
  #requestStack: Symfony\Component\HttpFoundation\RequestStack {#243 …}
  #taxonRepository: App\Repository\TaxonRepository {#7413 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27539
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27535 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27536 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27538 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
}
sylius_shop:product:card Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent 112.0 MiB 15.41 ms
Input props
[
  "product" => App\Entity\Product\Product {#7964
    #id: 3041
    #code: "moulin-peugeot-paris-chocolat-u-select-331"
    #attributes: Doctrine\ORM\PersistentCollection {#8170 …}
    #variants: Doctrine\ORM\PersistentCollection {#8393 …}
    #options: Doctrine\ORM\PersistentCollection {#8521 …}
    #associations: Doctrine\ORM\PersistentCollection {#8461 …}
    #createdAt: DateTime @1758632747 {#7680
      date: 2025-09-23 21:05:47.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632747 {#7403
      date: 2025-09-23 21:05:47.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8520 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8523
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#7964}
        #id: 3041
        #name: "Moulin Peugeot PARIS chocolat U'Select"
        #slug: "moulin-peugeot-paris-chocolat-u-select-331"
        #description: """
          <div class="col is-12"><ul>\n
          <li>M&eacute;canisme garanti &agrave; vie.</li>\n
          <li>Syst&egrave;me&nbsp;USELECT</li>\n
          <li>Corps bois vernis</li>\n
          <li>Fabrication fran&ccedil;aise. Quingey (Doubs Franche-Comt&eacute;)</li>\n
          </ul></div><h1>Description Moulin Peugeot PARIS chocolat U'Select</h1><div class="col is-12"><p><span style="color: #313131; font-family: arial; font-size: 12px; line-height: 14px; background-color: #fafafa;">Le moulin Peugeot Paris sera &agrave; l'aise en cuisine gr&acirc;ce &agrave; son efficacit&eacute;. Il mettra &eacute;galement en valeur &nbsp;votre table gr&acirc;ce &agrave; sa finition particuli&egrave;rement soign&eacute;e. Il est &eacute;quip&eacute; d'un m&eacute;canisme de r&eacute;glage Uselect permettant de s&eacute;lectionner avec pr&eacute;cision la finesse de la mouture d&eacute;sir&eacute;e.</span><br />Corps bois vernis. Syst&egrave;me de fermeture par vis laiton grav&eacute;e poivre ou sel.</p></div><h1>Description mécanisme moulin PEUGEOT U'Select</h1><div class="col is-12"><p>Vous retrouvez dans les m&eacute;canismes moulin PEUGEOT tout le savoir faire technologique et industriel d&eacute;velopp&eacute; depuis plus de 160 ans. Inusable et d&rsquo;une efficacit&eacute; redoutable, le m&eacute;canisme moulin PEUGEOT est constitu&eacute; de double rang&eacute;e de dents capturant les grains en les entra&icirc;nant vers le bas pour les broyer parfaitement. Aux traditionnels m&eacute;canismes poivre et sel sont venus s&rsquo;ajouter des m&eacute;canismes exclusifs pour le sel de Gu&eacute;randes, les &eacute;pices, le piment et la muscade. Leur fiabilit&eacute; n&rsquo;est plus &agrave; prouver ce qui permet &agrave; PEUGEOT de pouvoir donner &agrave; ses m&eacute;canismes une garantie &agrave; vie. Les corps des moulins con&ccedil;us dans une grande vari&eacute;t&eacute; de mat&eacute;riaux (bois, inox, pvc..) sont tous con&ccedil;us avec soin pour une ergonomie optimale et pour s&rsquo;harmoniser avec tous les styles.</p></div>
          """
        #metaKeywords: null
        #metaDescription: null
        #shortDescription: null
        -fullTitle: null
        -metaTitle: null
      }
    ]
    #currentLocale: "fr_FR"
    #currentTranslation: null
    #fallbackLocale: "fr_FR"
    #variantSelectionMethod: "choice"
    #productTaxons: Doctrine\ORM\PersistentCollection {#8526 …}
    #channels: Doctrine\ORM\PersistentCollection {#8029 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#7525 …}
    #reviews: Doctrine\ORM\PersistentCollection {#7920 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8032 …}
    #productType: null
  }
  "template" => "@SyliusShop/product/common/card.html.twig"
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27604
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27637 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27643 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27630 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
]
Attributes
[
  "template" => "@SyliusShop/product/common/card.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent {#28073
  +product: App\Entity\Product\Product {#7964
    #id: 3041
    #code: "moulin-peugeot-paris-chocolat-u-select-331"
    #attributes: Doctrine\ORM\PersistentCollection {#8170 …}
    #variants: Doctrine\ORM\PersistentCollection {#8393 …}
    #options: Doctrine\ORM\PersistentCollection {#8521 …}
    #associations: Doctrine\ORM\PersistentCollection {#8461 …}
    #createdAt: DateTime @1758632747 {#7680
      date: 2025-09-23 21:05:47.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632747 {#7403
      date: 2025-09-23 21:05:47.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8520 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8523
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#7964}
        #id: 3041
        #name: "Moulin Peugeot PARIS chocolat U'Select"
        #slug: "moulin-peugeot-paris-chocolat-u-select-331"
        #description: """
          <div class="col is-12"><ul>\n
          <li>M&eacute;canisme garanti &agrave; vie.</li>\n
          <li>Syst&egrave;me&nbsp;USELECT</li>\n
          <li>Corps bois vernis</li>\n
          <li>Fabrication fran&ccedil;aise. Quingey (Doubs Franche-Comt&eacute;)</li>\n
          </ul></div><h1>Description Moulin Peugeot PARIS chocolat U'Select</h1><div class="col is-12"><p><span style="color: #313131; font-family: arial; font-size: 12px; line-height: 14px; background-color: #fafafa;">Le moulin Peugeot Paris sera &agrave; l'aise en cuisine gr&acirc;ce &agrave; son efficacit&eacute;. Il mettra &eacute;galement en valeur &nbsp;votre table gr&acirc;ce &agrave; sa finition particuli&egrave;rement soign&eacute;e. Il est &eacute;quip&eacute; d'un m&eacute;canisme de r&eacute;glage Uselect permettant de s&eacute;lectionner avec pr&eacute;cision la finesse de la mouture d&eacute;sir&eacute;e.</span><br />Corps bois vernis. Syst&egrave;me de fermeture par vis laiton grav&eacute;e poivre ou sel.</p></div><h1>Description mécanisme moulin PEUGEOT U'Select</h1><div class="col is-12"><p>Vous retrouvez dans les m&eacute;canismes moulin PEUGEOT tout le savoir faire technologique et industriel d&eacute;velopp&eacute; depuis plus de 160 ans. Inusable et d&rsquo;une efficacit&eacute; redoutable, le m&eacute;canisme moulin PEUGEOT est constitu&eacute; de double rang&eacute;e de dents capturant les grains en les entra&icirc;nant vers le bas pour les broyer parfaitement. Aux traditionnels m&eacute;canismes poivre et sel sont venus s&rsquo;ajouter des m&eacute;canismes exclusifs pour le sel de Gu&eacute;randes, les &eacute;pices, le piment et la muscade. Leur fiabilit&eacute; n&rsquo;est plus &agrave; prouver ce qui permet &agrave; PEUGEOT de pouvoir donner &agrave; ses m&eacute;canismes une garantie &agrave; vie. Les corps des moulins con&ccedil;us dans une grande vari&eacute;t&eacute; de mat&eacute;riaux (bois, inox, pvc..) sont tous con&ccedil;us avec soin pour une ergonomie optimale et pour s&rsquo;harmoniser avec tous les styles.</p></div>
          """
        #metaKeywords: null
        #metaDescription: null
        #shortDescription: null
        -fullTitle: null
        -metaTitle: null
      }
    ]
    #currentLocale: "fr_FR"
    #currentTranslation: null
    #fallbackLocale: "fr_FR"
    #variantSelectionMethod: "choice"
    #productTaxons: Doctrine\ORM\PersistentCollection {#8526 …}
    #channels: Doctrine\ORM\PersistentCollection {#8029 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#7525 …}
    #reviews: Doctrine\ORM\PersistentCollection {#7920 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8032 …}
    #productType: null
  }
  +variant: App\Entity\Product\ProductVariant {#28339 …}
  +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 {#27604
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27637 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27643 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27630 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
}
sylius_shop:main_image
[Anonymous]
112.0 MiB 2.34 ms
Input props
[
  "product" => App\Entity\Product\Product {#7964
    #id: 3041
    #code: "moulin-peugeot-paris-chocolat-u-select-331"
    #attributes: Doctrine\ORM\PersistentCollection {#8170 …}
    #variants: Doctrine\ORM\PersistentCollection {#8393 …}
    #options: Doctrine\ORM\PersistentCollection {#8521 …}
    #associations: Doctrine\ORM\PersistentCollection {#8461 …}
    #createdAt: DateTime @1758632747 {#7680
      date: 2025-09-23 21:05:47.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632747 {#7403
      date: 2025-09-23 21:05:47.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8520 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8523
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#7964}
        #id: 3041
        #name: "Moulin Peugeot PARIS chocolat U'Select"
        #slug: "moulin-peugeot-paris-chocolat-u-select-331"
        #description: """
          <div class="col is-12"><ul>\n
          <li>M&eacute;canisme garanti &agrave; vie.</li>\n
          <li>Syst&egrave;me&nbsp;USELECT</li>\n
          <li>Corps bois vernis</li>\n
          <li>Fabrication fran&ccedil;aise. Quingey (Doubs Franche-Comt&eacute;)</li>\n
          </ul></div><h1>Description Moulin Peugeot PARIS chocolat U'Select</h1><div class="col is-12"><p><span style="color: #313131; font-family: arial; font-size: 12px; line-height: 14px; background-color: #fafafa;">Le moulin Peugeot Paris sera &agrave; l'aise en cuisine gr&acirc;ce &agrave; son efficacit&eacute;. Il mettra &eacute;galement en valeur &nbsp;votre table gr&acirc;ce &agrave; sa finition particuli&egrave;rement soign&eacute;e. Il est &eacute;quip&eacute; d'un m&eacute;canisme de r&eacute;glage Uselect permettant de s&eacute;lectionner avec pr&eacute;cision la finesse de la mouture d&eacute;sir&eacute;e.</span><br />Corps bois vernis. Syst&egrave;me de fermeture par vis laiton grav&eacute;e poivre ou sel.</p></div><h1>Description mécanisme moulin PEUGEOT U'Select</h1><div class="col is-12"><p>Vous retrouvez dans les m&eacute;canismes moulin PEUGEOT tout le savoir faire technologique et industriel d&eacute;velopp&eacute; depuis plus de 160 ans. Inusable et d&rsquo;une efficacit&eacute; redoutable, le m&eacute;canisme moulin PEUGEOT est constitu&eacute; de double rang&eacute;e de dents capturant les grains en les entra&icirc;nant vers le bas pour les broyer parfaitement. Aux traditionnels m&eacute;canismes poivre et sel sont venus s&rsquo;ajouter des m&eacute;canismes exclusifs pour le sel de Gu&eacute;randes, les &eacute;pices, le piment et la muscade. Leur fiabilit&eacute; n&rsquo;est plus &agrave; prouver ce qui permet &agrave; PEUGEOT de pouvoir donner &agrave; ses m&eacute;canismes une garantie &agrave; vie. Les corps des moulins con&ccedil;us dans une grande vari&eacute;t&eacute; de mat&eacute;riaux (bois, inox, pvc..) sont tous con&ccedil;us avec soin pour une ergonomie optimale et pour s&rsquo;harmoniser avec tous les styles.</p></div>
          """
        #metaKeywords: null
        #metaDescription: null
        #shortDescription: null
        -fullTitle: null
        -metaTitle: null
      }
    ]
    #currentLocale: "fr_FR"
    #currentTranslation: null
    #fallbackLocale: "fr_FR"
    #variantSelectionMethod: "choice"
    #productTaxons: Doctrine\ORM\PersistentCollection {#8526 …}
    #channels: Doctrine\ORM\PersistentCollection {#8029 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#7525 …}
    #reviews: Doctrine\ORM\PersistentCollection {#7920 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8032 …}
    #productType: null
  }
  "class" => "w-100 h-100 object-fit-cover"
]
Attributes
[
  "product" => "Moulin Peugeot PARIS chocolat U'Select"
  "class" => "w-100 h-100 object-fit-cover"
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#28750
  -props: [
    "product" => App\Entity\Product\Product {#7964
      #id: 3041
      #code: "moulin-peugeot-paris-chocolat-u-select-331"
      #attributes: Doctrine\ORM\PersistentCollection {#8170 …}
      #variants: Doctrine\ORM\PersistentCollection {#8393 …}
      #options: Doctrine\ORM\PersistentCollection {#8521 …}
      #associations: Doctrine\ORM\PersistentCollection {#8461 …}
      #createdAt: DateTime @1758632747 {#7680
        date: 2025-09-23 21:05:47.0 PRC (+08:00)
      }
      #updatedAt: DateTime @1758632747 {#7403
        date: 2025-09-23 21:05:47.0 PRC (+08:00)
      }
      #enabled: true
      #translations: Doctrine\ORM\PersistentCollection {#8520 …}
      #translationsCache: [
        "fr_FR" => App\Entity\Product\ProductTranslation {#8523
          #locale: "fr_FR"
          #translatable: App\Entity\Product\Product {#7964}
          #id: 3041
          #name: "Moulin Peugeot PARIS chocolat U'Select"
          #slug: "moulin-peugeot-paris-chocolat-u-select-331"
          #description: """
            <div class="col is-12"><ul>\n
            <li>M&eacute;canisme garanti &agrave; vie.</li>\n
            <li>Syst&egrave;me&nbsp;USELECT</li>\n
            <li>Corps bois vernis</li>\n
            <li>Fabrication fran&ccedil;aise. Quingey (Doubs Franche-Comt&eacute;)</li>\n
            </ul></div><h1>Description Moulin Peugeot PARIS chocolat U'Select</h1><div class="col is-12"><p><span style="color: #313131; font-family: arial; font-size: 12px; line-height: 14px; background-color: #fafafa;">Le moulin Peugeot Paris sera &agrave; l'aise en cuisine gr&acirc;ce &agrave; son efficacit&eacute;. Il mettra &eacute;galement en valeur &nbsp;votre table gr&acirc;ce &agrave; sa finition particuli&egrave;rement soign&eacute;e. Il est &eacute;quip&eacute; d'un m&eacute;canisme de r&eacute;glage Uselect permettant de s&eacute;lectionner avec pr&eacute;cision la finesse de la mouture d&eacute;sir&eacute;e.</span><br />Corps bois vernis. Syst&egrave;me de fermeture par vis laiton grav&eacute;e poivre ou sel.</p></div><h1>Description mécanisme moulin PEUGEOT U'Select</h1><div class="col is-12"><p>Vous retrouvez dans les m&eacute;canismes moulin PEUGEOT tout le savoir faire technologique et industriel d&eacute;velopp&eacute; depuis plus de 160 ans. Inusable et d&rsquo;une efficacit&eacute; redoutable, le m&eacute;canisme moulin PEUGEOT est constitu&eacute; de double rang&eacute;e de dents capturant les grains en les entra&icirc;nant vers le bas pour les broyer parfaitement. Aux traditionnels m&eacute;canismes poivre et sel sont venus s&rsquo;ajouter des m&eacute;canismes exclusifs pour le sel de Gu&eacute;randes, les &eacute;pices, le piment et la muscade. Leur fiabilit&eacute; n&rsquo;est plus &agrave; prouver ce qui permet &agrave; PEUGEOT de pouvoir donner &agrave; ses m&eacute;canismes une garantie &agrave; vie. Les corps des moulins con&ccedil;us dans une grande vari&eacute;t&eacute; de mat&eacute;riaux (bois, inox, pvc..) sont tous con&ccedil;us avec soin pour une ergonomie optimale et pour s&rsquo;harmoniser avec tous les styles.</p></div>
            """
          #metaKeywords: null
          #metaDescription: null
          #shortDescription: null
          -fullTitle: null
          -metaTitle: null
        }
      ]
      #currentLocale: "fr_FR"
      #currentTranslation: null
      #fallbackLocale: "fr_FR"
      #variantSelectionMethod: "choice"
      #productTaxons: Doctrine\ORM\PersistentCollection {#8526 …}
      #channels: Doctrine\ORM\PersistentCollection {#8029 …}
      #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#7525 …}
      #reviews: Doctrine\ORM\PersistentCollection {#7920 …}
      #averageRating: 0.0
      #images: Doctrine\ORM\PersistentCollection {#8032 …}
      #productType: null
    }
    "class" => "w-100 h-100 object-fit-cover"
  ]
}
sylius_shop:catalog_promotions
[Anonymous]
112.0 MiB 1.84 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#28968
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#28829 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#28824 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#28967 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#28339 …}
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#28685
    #collection: Doctrine\Common\Collections\ArrayCollection {#28684 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#28522 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#32415 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#37199 …}
  }
  "withDescription" => false
]
Attributes
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#28968
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#28829 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#28824 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#28967 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => "Moulin Peugeot PARIS chocolat U'Select"
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#28685
    #collection: Doctrine\Common\Collections\ArrayCollection {#28684 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#28522 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#32415 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#37199 …}
  }
  "withDescription" => false
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#28972
  -props: [
    "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#28968
      +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#28829 …}
      +context: Sylius\TwigHooks\Bag\DataBag {#28824 …}
      +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#28967 …}
      +prefixes: [
        "sylius_shop.product.index.content.body.main.card.prices"
        "sylius_shop.shared.product.card.prices"
      ]
    }
    "variant" => App\Entity\Product\ProductVariant {#28339 …}
    "applied_promotions" => Doctrine\ORM\PersistentCollection {#28685
      #collection: Doctrine\Common\Collections\ArrayCollection {#28684 …}
      #initialized: true
      -snapshot: []
      -owner: App\Entity\Channel\ChannelPricing {#28522 …}
      -association: Symfony\Component\VarDumper\Caster\CutStub {#32415 …}
      -backRefFieldName: null
      -isDirty: false
      -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
      -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#37199 …}
    }
    "withDescription" => false
  ]
}
sylius_shop:product:card:price Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent 112.0 MiB 0.54 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29040
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29030 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29038 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29039 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#28339 …}
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Attributes
[
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent {#29049
  +variant: App\Entity\Product\ProductVariant {#28339 …}
  +price: "67,00\u{A0}"
  +originalPrice: "74,00\u{A0}"
  +hasDiscount: true
  #productVariantPricesCalculator: Sylius\Component\Core\Calculator\ProductVariantPriceCalculator {#5465 …}
  #moneyFormatter: Sylius\Bundle\MoneyBundle\Formatter\MoneyFormatter {#8959 …}
  #channelContext: Sylius\Component\Channel\Context\CachedPerRequestChannelContext {#4203 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  #currencyContext: Sylius\Component\Core\Currency\Context\ChannelAwareCurrencyContext {#12389 …}
  #currencyConverter: Sylius\Component\Currency\Converter\CurrencyConverter {#8956 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29040
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29030 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29038 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29039 …}
    +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 112.0 MiB 8.96 ms
Input props
[
  "product" => App\Entity\Product\Product {#8532
    #id: 3042
    #code: "moulin-peugeot-paris-naturel-u-select-508"
    #attributes: Doctrine\ORM\PersistentCollection {#8539 …}
    #variants: Doctrine\ORM\PersistentCollection {#8541 …}
    #options: Doctrine\ORM\PersistentCollection {#8545 …}
    #associations: Doctrine\ORM\PersistentCollection {#8543 …}
    #createdAt: DateTime @1758632747 {#8530
      date: 2025-09-23 21:05:47.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632747 {#8531
      date: 2025-09-23 21:05:47.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8548 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8549
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8532}
        #id: 3042
        #name: "Moulin Peugeot PARIS naturel U'Select"
        #slug: "moulin-peugeot-paris-naturel-u-select-508"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Forme iconique.</li>\n
          <li>Corps en bois labellis&eacute; PEFC</li>\n
          <li>Syst&egrave;me de pr&eacute;-r&eacute;glage Uselect.</li>\n
          <li>M&eacute;canisme poivre ou sel inox tr&egrave;s efficace garanti &agrave; vie.</li>\n
          <li><strong>Fabriqu&eacute; &agrave; Quingey (Doubs Franche-Comt&eacute;)</strong></li>\n
          </ul>\n
          <ul>\n
          </ul></div><h1>Moulin Paris Peugeot, une icône !</h1><div class="col is-12"><div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Il ne porte pas le nom d'une des plus belles villes du monde pour rien ! Le moulin Paris Peugeot est devenu une v&eacute;ritable ic&ocirc;ne du design depuis son apparition il y a plus de 30 ans. Dans sa finition bois clair, son profil tout en galbes permet de mettre en valeur le veinage des bois utilis&eacute;s. De cette mani&egrave;re, on peut dire que esth&eacute;tiquement chaque moulin est unique !</div>\n
          <div>Il ne porte pas le nom d'une des plus belles villes du monde pour rien ! Le moulin Paris Peugeot est devenu une v&eacute;ritable ic&ocirc;ne du design depuis son apparition il y a plus de 30 ans. Dans sa finition bois clair, son profil tout en galbes permet de mettre en valeur le veinage des bois utilis&eacute;s. De cette mani&egrave;re, on peut dire que esth&eacute;tiquement chaque moulin est unique !</div></div><h1>Parlons du bois !</h1><div class="col is-12"><div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Depuis quelques ann&eacute;es maintenant, Peugeot utilise exclusivement du bois issu de for&ecirc;ts uniquement europ&eacute;ennes et labellis&eacute;es PEFC garantissant la gestion durable du massif forestier. Les copeaux et la sciure provenant de la production sont r&eacute;cup&eacute;r&eacute;s et recycl&eacute;s.&nbsp;</div>\n
          <div>Depuis quelques ann&eacute;es maintenant, Peugeot utilise exclusivement du bois issu de for&ecirc;ts uniquement europ&eacute;ennes et labellis&eacute;es PEFC garantissant la gestion durable du massif forestier. Les copeaux et la sciure provenant de la production sont r&eacute;cup&eacute;r&eacute;s et recycl&eacute;s.&nbsp;</div></div><h1>Un mécanisme réputé, garanti à vie !</h1><div class="col is-12">Au del&agrave; du design, ce qui fait la renomm&eacute; du moulin Peugeot Paris, c'est ses m&eacute;canismes. Il en existe 2 : un pour le poivre, un pour le sel. Tout en acier, ils sont constitu&eacute;s d&rsquo;une double rang&eacute;e de dents h&eacute;lico&iuml;dales qui guide les grains de poivre ou de sel et les bloquent lors du broyage. Les m&eacute;canismes b&eacute;n&eacute;ficient d&rsquo;un traitement brevet&eacute; qui prot&egrave;ge l&rsquo;acier de la corrosion tout en gardant leur tranchant et leur r&eacute;sistance &agrave; l&rsquo;usure. Peugeot est tellement s&ucirc;r de leur fiabilit&eacute; qu'ils sont garantis &agrave; vie ! Et on les prend rarement en d&eacute;faut !</div><h1>Quel poivre ou sel pour mon moulin Paris Peugeot ?</h1><div class="col is-12"><div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Tout d'abord, veillez &agrave; ne pas inverser ! Ne mettez pas de poivre dans votre moulin &agrave; sel et inversement. Cependant si cela se produit, pas de panique, vous n'ab&icirc;merez pas votre moulin ! Il sera simplement inefficace ! Il suffit de d&eacute;monter le m&eacute;canisme et de le nettoyer soigneusement.&nbsp;</div>\n
          <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Le m&eacute;canisme poivre Peugeot avec tous les poivres d&rsquo;un diam&egrave;tre de grain inf&eacute;rieur ou &eacute;gal &agrave; 6 mm. Il est adapt&eacute; aux poivres noir, blanc, vert ainsi qu&rsquo;aux baies roses si elles sont m&eacute;lang&eacute;es &agrave; l&rsquo;un de ces 3 poivres &agrave; hauteur maxi de 15 %. A noter qu'il convient &eacute;galement aux graines de coriandre.</div>\n
          <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Le m&eacute;canisme &agrave; sel Peugeot fonctionne avec un sel d&rsquo;un diam&egrave;tre de grain inf&eacute;rieur ou &eacute;gal &agrave; 4 mm. Il faut que le sel soit imp&eacute;rativement sec. Pour le sel humide, un autre m&eacute;canisme est pr&eacute;conis&eacute;.</div>\n
          <div>Tout d'abord, veillez &agrave; ne pas inverser ! Ne mettez pas de poivre dans votre moulin &agrave; sel et inversement. Cependant si cela se produit, pas de panique, vous n'ab&icirc;merez pas votre moulin ! Il sera simplement inefficace ! Il suffit de d&eacute;monter le m&eacute;canisme et de le nettoyer soigneusement.&nbsp;<br /><br /></div>\n
          <div>Le m&eacute;canisme poivre Peugeot avec tous les poivres d&rsquo;un diam&egrave;tre de grain inf&eacute;rieur ou &eacute;gal &agrave; 6 mm. Il est adapt&eacute; aux poivres noir, blanc, vert ainsi qu&rsquo;aux baies roses si elles sont m&eacute;lang&eacute;es &agrave; l&rsquo;un de ces 3 poivres &agrave; hauteur maxi de 15 %. A noter qu'il convient &eacute;galement aux graines de coriandre.<br /><br /></div>\n
          <div>Le m&eacute;canisme &agrave; sel Peugeot fonctionne avec un sel d&rsquo;un diam&egrave;tre de grain inf&eacute;rieur ou &eacute;gal &agrave; 4 mm. Il faut que le sel soit imp&eacute;rativement sec. Pour le sel humide, un autre m&eacute;canisme est pr&eacute;conis&eacute;.</div></div><h1>Système u'Select, qu'est ce que c'est ?</h1><div class="col is-12"><div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Le syst&egrave;me U&rsquo;select est une innovation exclusive Peugeot&nbsp; permettant d'avoir un r&eacute;glage tr&egrave;s pr&eacute;cis de la finesse de mouture de sel ou de poivre. Il suffit de tourner la bague plac&eacute;e &agrave; la base du moulin et de s&eacute;lectionner l&rsquo;une des positions, chacune correspondant &agrave; une mouture pr&eacute;cise.&nbsp;</div>\n
          <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Plus vous tournez la bague, plus la mouture est fine. Gros grains de poivre ou de sel, concass&eacute;s ou bien encore d&rsquo;une finesse extr&ecirc;me...au final, le syst&egrave;me propose pas moins de 6 moutures pr&eacute;-r&eacute;gl&eacute;es pour le poivre, et 6 pour le sel sans compter la possibilit&eacute; de s&eacute;lectionner des moutures interm&eacute;diaires ! Presque du sur mesure !</div>\n
          <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Pour le poivre, en fonction de l'effet recherch&eacute;, chaque mouture mettra en valeur les valeurs les vertus de vos poivres pr&eacute;f&eacute;r&eacute;s:&nbsp;</div>\n
          <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">- Une mouture fine mettra en valeur la puissance du poivre.</div>\n
          <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">- Une grosse mouture r&eacute;v&eacute;lera tout son ar&ocirc;me.</div>\n
          <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">- Une mouture moyenne veillera &agrave; l'&eacute;quilibre.</div>\n
          <div>Le syst&egrave;me u'Select est une innovation exclusive Peugeot&nbsp; permettant d'avoir un r&eacute;glage tr&egrave;s pr&eacute;cis de la finesse de mouture de sel ou de poivre. Il suffit de tourner la bague plac&eacute;e &agrave; la base du moulin et de s&eacute;lectionner l&rsquo;une des positions, chacune correspondant &agrave; une mouture pr&eacute;cise.&nbsp;<br /><br /></div>\n
          <div>Plus vous tournez la bague, plus la mouture est fine. Gros grains de poivre ou de sel, concass&eacute;s ou bien encore d&rsquo;une finesse extr&ecirc;me...au final, le syst&egrave;me propose pas moins de 6 moutures pr&eacute;-r&eacute;gl&eacute;es pour le poivre, et 6 pour le sel sans compter la possibilit&eacute; de s&eacute;lectionner des moutures interm&eacute;diaires ! Presque du sur mesure !<br /><br /></div>\n
          <div>Pour le poivre, en fonction de l'effet recherch&eacute;, chaque mouture mettra en valeur les valeurs les vertus de vos poivres pr&eacute;f&eacute;r&eacute;s:&nbsp;</div>\n
          <div>- Une mouture fine mettra en valeur la puissance du poivre.</div>\n
          <div>- Une grosse mouture r&eacute;v&eacute;lera tout son ar&ocirc;me.</div>\n
          <div>- Une mouture moyenne veillera &agrave; l'&eacute;quilibre.</div></div><h1>Vous avez le choix !</h1><div class="col is-12"><div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Le moulin Peugeot Paris est disponible en de nombreuses tailles de 12 &agrave; 40 cm dans cette finition bois clair et syst&egrave;me Uselect. Mais le moulin Paris est aussi disponible dans d'autres coloris et mati&egrave;res.</div>\n
          <div>Le moulin Peugeot Paris est disponible en de nombreuses tailles de 12 &agrave; 40 cm dans cette finition bois clair et syst&egrave;me u'Select. Mais le moulin Paris est aussi disponible dans d'autres coloris et mati&egrave;res.</div>\n
          <div></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 {#8551 …}
    #channels: Doctrine\ORM\PersistentCollection {#8537 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#7525 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8533 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8535 …}
    #productType: null
  }
  "template" => "@SyliusShop/product/common/card.html.twig"
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27604
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27637 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27643 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27630 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
]
Attributes
[
  "template" => "@SyliusShop/product/common/card.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent {#28728
  +product: App\Entity\Product\Product {#8532
    #id: 3042
    #code: "moulin-peugeot-paris-naturel-u-select-508"
    #attributes: Doctrine\ORM\PersistentCollection {#8539 …}
    #variants: Doctrine\ORM\PersistentCollection {#8541 …}
    #options: Doctrine\ORM\PersistentCollection {#8545 …}
    #associations: Doctrine\ORM\PersistentCollection {#8543 …}
    #createdAt: DateTime @1758632747 {#8530
      date: 2025-09-23 21:05:47.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632747 {#8531
      date: 2025-09-23 21:05:47.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8548 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8549
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8532}
        #id: 3042
        #name: "Moulin Peugeot PARIS naturel U'Select"
        #slug: "moulin-peugeot-paris-naturel-u-select-508"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Forme iconique.</li>\n
          <li>Corps en bois labellis&eacute; PEFC</li>\n
          <li>Syst&egrave;me de pr&eacute;-r&eacute;glage Uselect.</li>\n
          <li>M&eacute;canisme poivre ou sel inox tr&egrave;s efficace garanti &agrave; vie.</li>\n
          <li><strong>Fabriqu&eacute; &agrave; Quingey (Doubs Franche-Comt&eacute;)</strong></li>\n
          </ul>\n
          <ul>\n
          </ul></div><h1>Moulin Paris Peugeot, une icône !</h1><div class="col is-12"><div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Il ne porte pas le nom d'une des plus belles villes du monde pour rien ! Le moulin Paris Peugeot est devenu une v&eacute;ritable ic&ocirc;ne du design depuis son apparition il y a plus de 30 ans. Dans sa finition bois clair, son profil tout en galbes permet de mettre en valeur le veinage des bois utilis&eacute;s. De cette mani&egrave;re, on peut dire que esth&eacute;tiquement chaque moulin est unique !</div>\n
          <div>Il ne porte pas le nom d'une des plus belles villes du monde pour rien ! Le moulin Paris Peugeot est devenu une v&eacute;ritable ic&ocirc;ne du design depuis son apparition il y a plus de 30 ans. Dans sa finition bois clair, son profil tout en galbes permet de mettre en valeur le veinage des bois utilis&eacute;s. De cette mani&egrave;re, on peut dire que esth&eacute;tiquement chaque moulin est unique !</div></div><h1>Parlons du bois !</h1><div class="col is-12"><div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Depuis quelques ann&eacute;es maintenant, Peugeot utilise exclusivement du bois issu de for&ecirc;ts uniquement europ&eacute;ennes et labellis&eacute;es PEFC garantissant la gestion durable du massif forestier. Les copeaux et la sciure provenant de la production sont r&eacute;cup&eacute;r&eacute;s et recycl&eacute;s.&nbsp;</div>\n
          <div>Depuis quelques ann&eacute;es maintenant, Peugeot utilise exclusivement du bois issu de for&ecirc;ts uniquement europ&eacute;ennes et labellis&eacute;es PEFC garantissant la gestion durable du massif forestier. Les copeaux et la sciure provenant de la production sont r&eacute;cup&eacute;r&eacute;s et recycl&eacute;s.&nbsp;</div></div><h1>Un mécanisme réputé, garanti à vie !</h1><div class="col is-12">Au del&agrave; du design, ce qui fait la renomm&eacute; du moulin Peugeot Paris, c'est ses m&eacute;canismes. Il en existe 2 : un pour le poivre, un pour le sel. Tout en acier, ils sont constitu&eacute;s d&rsquo;une double rang&eacute;e de dents h&eacute;lico&iuml;dales qui guide les grains de poivre ou de sel et les bloquent lors du broyage. Les m&eacute;canismes b&eacute;n&eacute;ficient d&rsquo;un traitement brevet&eacute; qui prot&egrave;ge l&rsquo;acier de la corrosion tout en gardant leur tranchant et leur r&eacute;sistance &agrave; l&rsquo;usure. Peugeot est tellement s&ucirc;r de leur fiabilit&eacute; qu'ils sont garantis &agrave; vie ! Et on les prend rarement en d&eacute;faut !</div><h1>Quel poivre ou sel pour mon moulin Paris Peugeot ?</h1><div class="col is-12"><div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Tout d'abord, veillez &agrave; ne pas inverser ! Ne mettez pas de poivre dans votre moulin &agrave; sel et inversement. Cependant si cela se produit, pas de panique, vous n'ab&icirc;merez pas votre moulin ! Il sera simplement inefficace ! Il suffit de d&eacute;monter le m&eacute;canisme et de le nettoyer soigneusement.&nbsp;</div>\n
          <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Le m&eacute;canisme poivre Peugeot avec tous les poivres d&rsquo;un diam&egrave;tre de grain inf&eacute;rieur ou &eacute;gal &agrave; 6 mm. Il est adapt&eacute; aux poivres noir, blanc, vert ainsi qu&rsquo;aux baies roses si elles sont m&eacute;lang&eacute;es &agrave; l&rsquo;un de ces 3 poivres &agrave; hauteur maxi de 15 %. A noter qu'il convient &eacute;galement aux graines de coriandre.</div>\n
          <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Le m&eacute;canisme &agrave; sel Peugeot fonctionne avec un sel d&rsquo;un diam&egrave;tre de grain inf&eacute;rieur ou &eacute;gal &agrave; 4 mm. Il faut que le sel soit imp&eacute;rativement sec. Pour le sel humide, un autre m&eacute;canisme est pr&eacute;conis&eacute;.</div>\n
          <div>Tout d'abord, veillez &agrave; ne pas inverser ! Ne mettez pas de poivre dans votre moulin &agrave; sel et inversement. Cependant si cela se produit, pas de panique, vous n'ab&icirc;merez pas votre moulin ! Il sera simplement inefficace ! Il suffit de d&eacute;monter le m&eacute;canisme et de le nettoyer soigneusement.&nbsp;<br /><br /></div>\n
          <div>Le m&eacute;canisme poivre Peugeot avec tous les poivres d&rsquo;un diam&egrave;tre de grain inf&eacute;rieur ou &eacute;gal &agrave; 6 mm. Il est adapt&eacute; aux poivres noir, blanc, vert ainsi qu&rsquo;aux baies roses si elles sont m&eacute;lang&eacute;es &agrave; l&rsquo;un de ces 3 poivres &agrave; hauteur maxi de 15 %. A noter qu'il convient &eacute;galement aux graines de coriandre.<br /><br /></div>\n
          <div>Le m&eacute;canisme &agrave; sel Peugeot fonctionne avec un sel d&rsquo;un diam&egrave;tre de grain inf&eacute;rieur ou &eacute;gal &agrave; 4 mm. Il faut que le sel soit imp&eacute;rativement sec. Pour le sel humide, un autre m&eacute;canisme est pr&eacute;conis&eacute;.</div></div><h1>Système u'Select, qu'est ce que c'est ?</h1><div class="col is-12"><div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Le syst&egrave;me U&rsquo;select est une innovation exclusive Peugeot&nbsp; permettant d'avoir un r&eacute;glage tr&egrave;s pr&eacute;cis de la finesse de mouture de sel ou de poivre. Il suffit de tourner la bague plac&eacute;e &agrave; la base du moulin et de s&eacute;lectionner l&rsquo;une des positions, chacune correspondant &agrave; une mouture pr&eacute;cise.&nbsp;</div>\n
          <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Plus vous tournez la bague, plus la mouture est fine. Gros grains de poivre ou de sel, concass&eacute;s ou bien encore d&rsquo;une finesse extr&ecirc;me...au final, le syst&egrave;me propose pas moins de 6 moutures pr&eacute;-r&eacute;gl&eacute;es pour le poivre, et 6 pour le sel sans compter la possibilit&eacute; de s&eacute;lectionner des moutures interm&eacute;diaires ! Presque du sur mesure !</div>\n
          <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Pour le poivre, en fonction de l'effet recherch&eacute;, chaque mouture mettra en valeur les valeurs les vertus de vos poivres pr&eacute;f&eacute;r&eacute;s:&nbsp;</div>\n
          <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">- Une mouture fine mettra en valeur la puissance du poivre.</div>\n
          <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">- Une grosse mouture r&eacute;v&eacute;lera tout son ar&ocirc;me.</div>\n
          <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">- Une mouture moyenne veillera &agrave; l'&eacute;quilibre.</div>\n
          <div>Le syst&egrave;me u'Select est une innovation exclusive Peugeot&nbsp; permettant d'avoir un r&eacute;glage tr&egrave;s pr&eacute;cis de la finesse de mouture de sel ou de poivre. Il suffit de tourner la bague plac&eacute;e &agrave; la base du moulin et de s&eacute;lectionner l&rsquo;une des positions, chacune correspondant &agrave; une mouture pr&eacute;cise.&nbsp;<br /><br /></div>\n
          <div>Plus vous tournez la bague, plus la mouture est fine. Gros grains de poivre ou de sel, concass&eacute;s ou bien encore d&rsquo;une finesse extr&ecirc;me...au final, le syst&egrave;me propose pas moins de 6 moutures pr&eacute;-r&eacute;gl&eacute;es pour le poivre, et 6 pour le sel sans compter la possibilit&eacute; de s&eacute;lectionner des moutures interm&eacute;diaires ! Presque du sur mesure !<br /><br /></div>\n
          <div>Pour le poivre, en fonction de l'effet recherch&eacute;, chaque mouture mettra en valeur les valeurs les vertus de vos poivres pr&eacute;f&eacute;r&eacute;s:&nbsp;</div>\n
          <div>- Une mouture fine mettra en valeur la puissance du poivre.</div>\n
          <div>- Une grosse mouture r&eacute;v&eacute;lera tout son ar&ocirc;me.</div>\n
          <div>- Une mouture moyenne veillera &agrave; l'&eacute;quilibre.</div></div><h1>Vous avez le choix !</h1><div class="col is-12"><div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Le moulin Peugeot Paris est disponible en de nombreuses tailles de 12 &agrave; 40 cm dans cette finition bois clair et syst&egrave;me Uselect. Mais le moulin Paris est aussi disponible dans d'autres coloris et mati&egrave;res.</div>\n
          <div>Le moulin Peugeot Paris est disponible en de nombreuses tailles de 12 &agrave; 40 cm dans cette finition bois clair et syst&egrave;me u'Select. Mais le moulin Paris est aussi disponible dans d'autres coloris et mati&egrave;res.</div>\n
          <div></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 {#8551 …}
    #channels: Doctrine\ORM\PersistentCollection {#8537 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#7525 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8533 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8535 …}
    #productType: null
  }
  +variant: App\Entity\Product\ProductVariant {#29122 …}
  +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 {#27604
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27637 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27643 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27630 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
}
sylius_shop:main_image
[Anonymous]
112.0 MiB 1.26 ms
Input props
[
  "product" => App\Entity\Product\Product {#8532
    #id: 3042
    #code: "moulin-peugeot-paris-naturel-u-select-508"
    #attributes: Doctrine\ORM\PersistentCollection {#8539 …}
    #variants: Doctrine\ORM\PersistentCollection {#8541 …}
    #options: Doctrine\ORM\PersistentCollection {#8545 …}
    #associations: Doctrine\ORM\PersistentCollection {#8543 …}
    #createdAt: DateTime @1758632747 {#8530
      date: 2025-09-23 21:05:47.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632747 {#8531
      date: 2025-09-23 21:05:47.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8548 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8549
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8532}
        #id: 3042
        #name: "Moulin Peugeot PARIS naturel U'Select"
        #slug: "moulin-peugeot-paris-naturel-u-select-508"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Forme iconique.</li>\n
          <li>Corps en bois labellis&eacute; PEFC</li>\n
          <li>Syst&egrave;me de pr&eacute;-r&eacute;glage Uselect.</li>\n
          <li>M&eacute;canisme poivre ou sel inox tr&egrave;s efficace garanti &agrave; vie.</li>\n
          <li><strong>Fabriqu&eacute; &agrave; Quingey (Doubs Franche-Comt&eacute;)</strong></li>\n
          </ul>\n
          <ul>\n
          </ul></div><h1>Moulin Paris Peugeot, une icône !</h1><div class="col is-12"><div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Il ne porte pas le nom d'une des plus belles villes du monde pour rien ! Le moulin Paris Peugeot est devenu une v&eacute;ritable ic&ocirc;ne du design depuis son apparition il y a plus de 30 ans. Dans sa finition bois clair, son profil tout en galbes permet de mettre en valeur le veinage des bois utilis&eacute;s. De cette mani&egrave;re, on peut dire que esth&eacute;tiquement chaque moulin est unique !</div>\n
          <div>Il ne porte pas le nom d'une des plus belles villes du monde pour rien ! Le moulin Paris Peugeot est devenu une v&eacute;ritable ic&ocirc;ne du design depuis son apparition il y a plus de 30 ans. Dans sa finition bois clair, son profil tout en galbes permet de mettre en valeur le veinage des bois utilis&eacute;s. De cette mani&egrave;re, on peut dire que esth&eacute;tiquement chaque moulin est unique !</div></div><h1>Parlons du bois !</h1><div class="col is-12"><div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Depuis quelques ann&eacute;es maintenant, Peugeot utilise exclusivement du bois issu de for&ecirc;ts uniquement europ&eacute;ennes et labellis&eacute;es PEFC garantissant la gestion durable du massif forestier. Les copeaux et la sciure provenant de la production sont r&eacute;cup&eacute;r&eacute;s et recycl&eacute;s.&nbsp;</div>\n
          <div>Depuis quelques ann&eacute;es maintenant, Peugeot utilise exclusivement du bois issu de for&ecirc;ts uniquement europ&eacute;ennes et labellis&eacute;es PEFC garantissant la gestion durable du massif forestier. Les copeaux et la sciure provenant de la production sont r&eacute;cup&eacute;r&eacute;s et recycl&eacute;s.&nbsp;</div></div><h1>Un mécanisme réputé, garanti à vie !</h1><div class="col is-12">Au del&agrave; du design, ce qui fait la renomm&eacute; du moulin Peugeot Paris, c'est ses m&eacute;canismes. Il en existe 2 : un pour le poivre, un pour le sel. Tout en acier, ils sont constitu&eacute;s d&rsquo;une double rang&eacute;e de dents h&eacute;lico&iuml;dales qui guide les grains de poivre ou de sel et les bloquent lors du broyage. Les m&eacute;canismes b&eacute;n&eacute;ficient d&rsquo;un traitement brevet&eacute; qui prot&egrave;ge l&rsquo;acier de la corrosion tout en gardant leur tranchant et leur r&eacute;sistance &agrave; l&rsquo;usure. Peugeot est tellement s&ucirc;r de leur fiabilit&eacute; qu'ils sont garantis &agrave; vie ! Et on les prend rarement en d&eacute;faut !</div><h1>Quel poivre ou sel pour mon moulin Paris Peugeot ?</h1><div class="col is-12"><div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Tout d'abord, veillez &agrave; ne pas inverser ! Ne mettez pas de poivre dans votre moulin &agrave; sel et inversement. Cependant si cela se produit, pas de panique, vous n'ab&icirc;merez pas votre moulin ! Il sera simplement inefficace ! Il suffit de d&eacute;monter le m&eacute;canisme et de le nettoyer soigneusement.&nbsp;</div>\n
          <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Le m&eacute;canisme poivre Peugeot avec tous les poivres d&rsquo;un diam&egrave;tre de grain inf&eacute;rieur ou &eacute;gal &agrave; 6 mm. Il est adapt&eacute; aux poivres noir, blanc, vert ainsi qu&rsquo;aux baies roses si elles sont m&eacute;lang&eacute;es &agrave; l&rsquo;un de ces 3 poivres &agrave; hauteur maxi de 15 %. A noter qu'il convient &eacute;galement aux graines de coriandre.</div>\n
          <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Le m&eacute;canisme &agrave; sel Peugeot fonctionne avec un sel d&rsquo;un diam&egrave;tre de grain inf&eacute;rieur ou &eacute;gal &agrave; 4 mm. Il faut que le sel soit imp&eacute;rativement sec. Pour le sel humide, un autre m&eacute;canisme est pr&eacute;conis&eacute;.</div>\n
          <div>Tout d'abord, veillez &agrave; ne pas inverser ! Ne mettez pas de poivre dans votre moulin &agrave; sel et inversement. Cependant si cela se produit, pas de panique, vous n'ab&icirc;merez pas votre moulin ! Il sera simplement inefficace ! Il suffit de d&eacute;monter le m&eacute;canisme et de le nettoyer soigneusement.&nbsp;<br /><br /></div>\n
          <div>Le m&eacute;canisme poivre Peugeot avec tous les poivres d&rsquo;un diam&egrave;tre de grain inf&eacute;rieur ou &eacute;gal &agrave; 6 mm. Il est adapt&eacute; aux poivres noir, blanc, vert ainsi qu&rsquo;aux baies roses si elles sont m&eacute;lang&eacute;es &agrave; l&rsquo;un de ces 3 poivres &agrave; hauteur maxi de 15 %. A noter qu'il convient &eacute;galement aux graines de coriandre.<br /><br /></div>\n
          <div>Le m&eacute;canisme &agrave; sel Peugeot fonctionne avec un sel d&rsquo;un diam&egrave;tre de grain inf&eacute;rieur ou &eacute;gal &agrave; 4 mm. Il faut que le sel soit imp&eacute;rativement sec. Pour le sel humide, un autre m&eacute;canisme est pr&eacute;conis&eacute;.</div></div><h1>Système u'Select, qu'est ce que c'est ?</h1><div class="col is-12"><div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Le syst&egrave;me U&rsquo;select est une innovation exclusive Peugeot&nbsp; permettant d'avoir un r&eacute;glage tr&egrave;s pr&eacute;cis de la finesse de mouture de sel ou de poivre. Il suffit de tourner la bague plac&eacute;e &agrave; la base du moulin et de s&eacute;lectionner l&rsquo;une des positions, chacune correspondant &agrave; une mouture pr&eacute;cise.&nbsp;</div>\n
          <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Plus vous tournez la bague, plus la mouture est fine. Gros grains de poivre ou de sel, concass&eacute;s ou bien encore d&rsquo;une finesse extr&ecirc;me...au final, le syst&egrave;me propose pas moins de 6 moutures pr&eacute;-r&eacute;gl&eacute;es pour le poivre, et 6 pour le sel sans compter la possibilit&eacute; de s&eacute;lectionner des moutures interm&eacute;diaires ! Presque du sur mesure !</div>\n
          <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Pour le poivre, en fonction de l'effet recherch&eacute;, chaque mouture mettra en valeur les valeurs les vertus de vos poivres pr&eacute;f&eacute;r&eacute;s:&nbsp;</div>\n
          <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">- Une mouture fine mettra en valeur la puissance du poivre.</div>\n
          <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">- Une grosse mouture r&eacute;v&eacute;lera tout son ar&ocirc;me.</div>\n
          <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">- Une mouture moyenne veillera &agrave; l'&eacute;quilibre.</div>\n
          <div>Le syst&egrave;me u'Select est une innovation exclusive Peugeot&nbsp; permettant d'avoir un r&eacute;glage tr&egrave;s pr&eacute;cis de la finesse de mouture de sel ou de poivre. Il suffit de tourner la bague plac&eacute;e &agrave; la base du moulin et de s&eacute;lectionner l&rsquo;une des positions, chacune correspondant &agrave; une mouture pr&eacute;cise.&nbsp;<br /><br /></div>\n
          <div>Plus vous tournez la bague, plus la mouture est fine. Gros grains de poivre ou de sel, concass&eacute;s ou bien encore d&rsquo;une finesse extr&ecirc;me...au final, le syst&egrave;me propose pas moins de 6 moutures pr&eacute;-r&eacute;gl&eacute;es pour le poivre, et 6 pour le sel sans compter la possibilit&eacute; de s&eacute;lectionner des moutures interm&eacute;diaires ! Presque du sur mesure !<br /><br /></div>\n
          <div>Pour le poivre, en fonction de l'effet recherch&eacute;, chaque mouture mettra en valeur les valeurs les vertus de vos poivres pr&eacute;f&eacute;r&eacute;s:&nbsp;</div>\n
          <div>- Une mouture fine mettra en valeur la puissance du poivre.</div>\n
          <div>- Une grosse mouture r&eacute;v&eacute;lera tout son ar&ocirc;me.</div>\n
          <div>- Une mouture moyenne veillera &agrave; l'&eacute;quilibre.</div></div><h1>Vous avez le choix !</h1><div class="col is-12"><div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Le moulin Peugeot Paris est disponible en de nombreuses tailles de 12 &agrave; 40 cm dans cette finition bois clair et syst&egrave;me Uselect. Mais le moulin Paris est aussi disponible dans d'autres coloris et mati&egrave;res.</div>\n
          <div>Le moulin Peugeot Paris est disponible en de nombreuses tailles de 12 &agrave; 40 cm dans cette finition bois clair et syst&egrave;me u'Select. Mais le moulin Paris est aussi disponible dans d'autres coloris et mati&egrave;res.</div>\n
          <div></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 {#8551 …}
    #channels: Doctrine\ORM\PersistentCollection {#8537 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#7525 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8533 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8535 …}
    #productType: null
  }
  "class" => "w-100 h-100 object-fit-cover"
]
Attributes
[
  "product" => "Moulin Peugeot PARIS naturel U'Select"
  "class" => "w-100 h-100 object-fit-cover"
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#29193
  -props: [
    "product" => App\Entity\Product\Product {#8532
      #id: 3042
      #code: "moulin-peugeot-paris-naturel-u-select-508"
      #attributes: Doctrine\ORM\PersistentCollection {#8539 …}
      #variants: Doctrine\ORM\PersistentCollection {#8541 …}
      #options: Doctrine\ORM\PersistentCollection {#8545 …}
      #associations: Doctrine\ORM\PersistentCollection {#8543 …}
      #createdAt: DateTime @1758632747 {#8530
        date: 2025-09-23 21:05:47.0 PRC (+08:00)
      }
      #updatedAt: DateTime @1758632747 {#8531
        date: 2025-09-23 21:05:47.0 PRC (+08:00)
      }
      #enabled: true
      #translations: Doctrine\ORM\PersistentCollection {#8548 …}
      #translationsCache: [
        "fr_FR" => App\Entity\Product\ProductTranslation {#8549
          #locale: "fr_FR"
          #translatable: App\Entity\Product\Product {#8532}
          #id: 3042
          #name: "Moulin Peugeot PARIS naturel U'Select"
          #slug: "moulin-peugeot-paris-naturel-u-select-508"
          #description: """
            <div class="col is-12"><ul>\n
            <li>Forme iconique.</li>\n
            <li>Corps en bois labellis&eacute; PEFC</li>\n
            <li>Syst&egrave;me de pr&eacute;-r&eacute;glage Uselect.</li>\n
            <li>M&eacute;canisme poivre ou sel inox tr&egrave;s efficace garanti &agrave; vie.</li>\n
            <li><strong>Fabriqu&eacute; &agrave; Quingey (Doubs Franche-Comt&eacute;)</strong></li>\n
            </ul>\n
            <ul>\n
            </ul></div><h1>Moulin Paris Peugeot, une icône !</h1><div class="col is-12"><div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Il ne porte pas le nom d'une des plus belles villes du monde pour rien ! Le moulin Paris Peugeot est devenu une v&eacute;ritable ic&ocirc;ne du design depuis son apparition il y a plus de 30 ans. Dans sa finition bois clair, son profil tout en galbes permet de mettre en valeur le veinage des bois utilis&eacute;s. De cette mani&egrave;re, on peut dire que esth&eacute;tiquement chaque moulin est unique !</div>\n
            <div>Il ne porte pas le nom d'une des plus belles villes du monde pour rien ! Le moulin Paris Peugeot est devenu une v&eacute;ritable ic&ocirc;ne du design depuis son apparition il y a plus de 30 ans. Dans sa finition bois clair, son profil tout en galbes permet de mettre en valeur le veinage des bois utilis&eacute;s. De cette mani&egrave;re, on peut dire que esth&eacute;tiquement chaque moulin est unique !</div></div><h1>Parlons du bois !</h1><div class="col is-12"><div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Depuis quelques ann&eacute;es maintenant, Peugeot utilise exclusivement du bois issu de for&ecirc;ts uniquement europ&eacute;ennes et labellis&eacute;es PEFC garantissant la gestion durable du massif forestier. Les copeaux et la sciure provenant de la production sont r&eacute;cup&eacute;r&eacute;s et recycl&eacute;s.&nbsp;</div>\n
            <div>Depuis quelques ann&eacute;es maintenant, Peugeot utilise exclusivement du bois issu de for&ecirc;ts uniquement europ&eacute;ennes et labellis&eacute;es PEFC garantissant la gestion durable du massif forestier. Les copeaux et la sciure provenant de la production sont r&eacute;cup&eacute;r&eacute;s et recycl&eacute;s.&nbsp;</div></div><h1>Un mécanisme réputé, garanti à vie !</h1><div class="col is-12">Au del&agrave; du design, ce qui fait la renomm&eacute; du moulin Peugeot Paris, c'est ses m&eacute;canismes. Il en existe 2 : un pour le poivre, un pour le sel. Tout en acier, ils sont constitu&eacute;s d&rsquo;une double rang&eacute;e de dents h&eacute;lico&iuml;dales qui guide les grains de poivre ou de sel et les bloquent lors du broyage. Les m&eacute;canismes b&eacute;n&eacute;ficient d&rsquo;un traitement brevet&eacute; qui prot&egrave;ge l&rsquo;acier de la corrosion tout en gardant leur tranchant et leur r&eacute;sistance &agrave; l&rsquo;usure. Peugeot est tellement s&ucirc;r de leur fiabilit&eacute; qu'ils sont garantis &agrave; vie ! Et on les prend rarement en d&eacute;faut !</div><h1>Quel poivre ou sel pour mon moulin Paris Peugeot ?</h1><div class="col is-12"><div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Tout d'abord, veillez &agrave; ne pas inverser ! Ne mettez pas de poivre dans votre moulin &agrave; sel et inversement. Cependant si cela se produit, pas de panique, vous n'ab&icirc;merez pas votre moulin ! Il sera simplement inefficace ! Il suffit de d&eacute;monter le m&eacute;canisme et de le nettoyer soigneusement.&nbsp;</div>\n
            <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Le m&eacute;canisme poivre Peugeot avec tous les poivres d&rsquo;un diam&egrave;tre de grain inf&eacute;rieur ou &eacute;gal &agrave; 6 mm. Il est adapt&eacute; aux poivres noir, blanc, vert ainsi qu&rsquo;aux baies roses si elles sont m&eacute;lang&eacute;es &agrave; l&rsquo;un de ces 3 poivres &agrave; hauteur maxi de 15 %. A noter qu'il convient &eacute;galement aux graines de coriandre.</div>\n
            <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Le m&eacute;canisme &agrave; sel Peugeot fonctionne avec un sel d&rsquo;un diam&egrave;tre de grain inf&eacute;rieur ou &eacute;gal &agrave; 4 mm. Il faut que le sel soit imp&eacute;rativement sec. Pour le sel humide, un autre m&eacute;canisme est pr&eacute;conis&eacute;.</div>\n
            <div>Tout d'abord, veillez &agrave; ne pas inverser ! Ne mettez pas de poivre dans votre moulin &agrave; sel et inversement. Cependant si cela se produit, pas de panique, vous n'ab&icirc;merez pas votre moulin ! Il sera simplement inefficace ! Il suffit de d&eacute;monter le m&eacute;canisme et de le nettoyer soigneusement.&nbsp;<br /><br /></div>\n
            <div>Le m&eacute;canisme poivre Peugeot avec tous les poivres d&rsquo;un diam&egrave;tre de grain inf&eacute;rieur ou &eacute;gal &agrave; 6 mm. Il est adapt&eacute; aux poivres noir, blanc, vert ainsi qu&rsquo;aux baies roses si elles sont m&eacute;lang&eacute;es &agrave; l&rsquo;un de ces 3 poivres &agrave; hauteur maxi de 15 %. A noter qu'il convient &eacute;galement aux graines de coriandre.<br /><br /></div>\n
            <div>Le m&eacute;canisme &agrave; sel Peugeot fonctionne avec un sel d&rsquo;un diam&egrave;tre de grain inf&eacute;rieur ou &eacute;gal &agrave; 4 mm. Il faut que le sel soit imp&eacute;rativement sec. Pour le sel humide, un autre m&eacute;canisme est pr&eacute;conis&eacute;.</div></div><h1>Système u'Select, qu'est ce que c'est ?</h1><div class="col is-12"><div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Le syst&egrave;me U&rsquo;select est une innovation exclusive Peugeot&nbsp; permettant d'avoir un r&eacute;glage tr&egrave;s pr&eacute;cis de la finesse de mouture de sel ou de poivre. Il suffit de tourner la bague plac&eacute;e &agrave; la base du moulin et de s&eacute;lectionner l&rsquo;une des positions, chacune correspondant &agrave; une mouture pr&eacute;cise.&nbsp;</div>\n
            <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Plus vous tournez la bague, plus la mouture est fine. Gros grains de poivre ou de sel, concass&eacute;s ou bien encore d&rsquo;une finesse extr&ecirc;me...au final, le syst&egrave;me propose pas moins de 6 moutures pr&eacute;-r&eacute;gl&eacute;es pour le poivre, et 6 pour le sel sans compter la possibilit&eacute; de s&eacute;lectionner des moutures interm&eacute;diaires ! Presque du sur mesure !</div>\n
            <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Pour le poivre, en fonction de l'effet recherch&eacute;, chaque mouture mettra en valeur les valeurs les vertus de vos poivres pr&eacute;f&eacute;r&eacute;s:&nbsp;</div>\n
            <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">- Une mouture fine mettra en valeur la puissance du poivre.</div>\n
            <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">- Une grosse mouture r&eacute;v&eacute;lera tout son ar&ocirc;me.</div>\n
            <div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">- Une mouture moyenne veillera &agrave; l'&eacute;quilibre.</div>\n
            <div>Le syst&egrave;me u'Select est une innovation exclusive Peugeot&nbsp; permettant d'avoir un r&eacute;glage tr&egrave;s pr&eacute;cis de la finesse de mouture de sel ou de poivre. Il suffit de tourner la bague plac&eacute;e &agrave; la base du moulin et de s&eacute;lectionner l&rsquo;une des positions, chacune correspondant &agrave; une mouture pr&eacute;cise.&nbsp;<br /><br /></div>\n
            <div>Plus vous tournez la bague, plus la mouture est fine. Gros grains de poivre ou de sel, concass&eacute;s ou bien encore d&rsquo;une finesse extr&ecirc;me...au final, le syst&egrave;me propose pas moins de 6 moutures pr&eacute;-r&eacute;gl&eacute;es pour le poivre, et 6 pour le sel sans compter la possibilit&eacute; de s&eacute;lectionner des moutures interm&eacute;diaires ! Presque du sur mesure !<br /><br /></div>\n
            <div>Pour le poivre, en fonction de l'effet recherch&eacute;, chaque mouture mettra en valeur les valeurs les vertus de vos poivres pr&eacute;f&eacute;r&eacute;s:&nbsp;</div>\n
            <div>- Une mouture fine mettra en valeur la puissance du poivre.</div>\n
            <div>- Une grosse mouture r&eacute;v&eacute;lera tout son ar&ocirc;me.</div>\n
            <div>- Une mouture moyenne veillera &agrave; l'&eacute;quilibre.</div></div><h1>Vous avez le choix !</h1><div class="col is-12"><div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Le moulin Peugeot Paris est disponible en de nombreuses tailles de 12 &agrave; 40 cm dans cette finition bois clair et syst&egrave;me Uselect. Mais le moulin Paris est aussi disponible dans d'autres coloris et mati&egrave;res.</div>\n
            <div>Le moulin Peugeot Paris est disponible en de nombreuses tailles de 12 &agrave; 40 cm dans cette finition bois clair et syst&egrave;me u'Select. Mais le moulin Paris est aussi disponible dans d'autres coloris et mati&egrave;res.</div>\n
            <div></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 {#8551 …}
      #channels: Doctrine\ORM\PersistentCollection {#8537 …}
      #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#7525 …}
      #reviews: Doctrine\ORM\PersistentCollection {#8533 …}
      #averageRating: 0.0
      #images: Doctrine\ORM\PersistentCollection {#8535 …}
      #productType: null
    }
    "class" => "w-100 h-100 object-fit-cover"
  ]
}
sylius_shop:catalog_promotions
[Anonymous]
112.0 MiB 0.87 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29366
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29177 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29253 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29174 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#29122 …}
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#29130
    #collection: Doctrine\Common\Collections\ArrayCollection {#29139 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#29118 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#37219 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#37221 …}
  }
  "withDescription" => false
]
Attributes
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29366
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29177 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29253 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29174 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => "Moulin Peugeot PARIS naturel U'Select"
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#29130
    #collection: Doctrine\Common\Collections\ArrayCollection {#29139 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#29118 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#37219 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#37221 …}
  }
  "withDescription" => false
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#29369
  -props: [
    "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29366
      +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29177 …}
      +context: Sylius\TwigHooks\Bag\DataBag {#29253 …}
      +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29174 …}
      +prefixes: [
        "sylius_shop.product.index.content.body.main.card.prices"
        "sylius_shop.shared.product.card.prices"
      ]
    }
    "variant" => App\Entity\Product\ProductVariant {#29122 …}
    "applied_promotions" => Doctrine\ORM\PersistentCollection {#29130
      #collection: Doctrine\Common\Collections\ArrayCollection {#29139 …}
      #initialized: true
      -snapshot: []
      -owner: App\Entity\Channel\ChannelPricing {#29118 …}
      -association: Symfony\Component\VarDumper\Caster\CutStub {#37219 …}
      -backRefFieldName: null
      -isDirty: false
      -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
      -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#37221 …}
    }
    "withDescription" => false
  ]
}
sylius_shop:product:card:price Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent 112.0 MiB 0.20 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29420
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29411 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29418 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29419 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#29122 …}
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Attributes
[
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent {#29423
  +variant: App\Entity\Product\ProductVariant {#29122 …}
  +price: "67,00\u{A0}"
  +originalPrice: "74,00\u{A0}"
  +hasDiscount: true
  #productVariantPricesCalculator: Sylius\Component\Core\Calculator\ProductVariantPriceCalculator {#5465 …}
  #moneyFormatter: Sylius\Bundle\MoneyBundle\Formatter\MoneyFormatter {#8959 …}
  #channelContext: Sylius\Component\Channel\Context\CachedPerRequestChannelContext {#4203 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  #currencyContext: Sylius\Component\Core\Currency\Context\ChannelAwareCurrencyContext {#12389 …}
  #currencyConverter: Sylius\Component\Currency\Converter\CurrencyConverter {#8956 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29420
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29411 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29418 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29419 …}
    +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 112.0 MiB 10.55 ms
Input props
[
  "product" => App\Entity\Product\Product {#8555
    #id: 3074
    #code: "moulin-peugeot-bali-3610"
    #attributes: Doctrine\ORM\PersistentCollection {#8562 …}
    #variants: Doctrine\ORM\PersistentCollection {#8564 …}
    #options: Doctrine\ORM\PersistentCollection {#8568 …}
    #associations: Doctrine\ORM\PersistentCollection {#8566 …}
    #createdAt: DateTime @1758632749 {#8553
      date: 2025-09-23 21:05:49.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632749 {#8554
      date: 2025-09-23 21:05:49.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8571 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8572
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8555}
        #id: 3074
        #name: "Moulin Peugeot Bali"
        #slug: "moulin-peugeot-bali-3610"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Design et couleurs soign&eacute;s.</li>\n
          <li>Bonne prise en main.</li>\n
          <li>M&eacute;canismes poivre ou sel garantis &agrave; vie&nbsp;</li>\n
          </ul></div><h1>Description moulin Peugeot Bali</h1><div class="col is-12">Le moulin Peugeot Bali est un moulin &agrave; poivre ou &agrave; sel au design &eacute;tudi&eacute;, id&eacute;al en cuisine comme pour pr&eacute;senter &agrave; table. Sa petite taille (8 cm) permet une excellente prise en main. Son m&eacute;canise poivre ou sel n' a plus rien &agrave; prouver en terme d'efficacit&eacute; comme de fiabilit&eacute;.</div><h1>Caractéristiques moulin Peugeot Bali</h1><div class="col is-12">Hauteur 8 cm. M&eacute;canismes poivre ou sel (sec uniquement) garantis &agrave; vie. R&eacute;glage de la mouture. Plusieurs couleurs au choix suivant m&eacute;canisme.</div>
          """
        #metaKeywords: null
        #metaDescription: null
        #shortDescription: null
        -fullTitle: null
        -metaTitle: null
      }
    ]
    #currentLocale: "fr_FR"
    #currentTranslation: null
    #fallbackLocale: "fr_FR"
    #variantSelectionMethod: "choice"
    #productTaxons: Doctrine\ORM\PersistentCollection {#8574 …}
    #channels: Doctrine\ORM\PersistentCollection {#8560 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#7525 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8556 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8558 …}
    #productType: null
  }
  "template" => "@SyliusShop/product/common/card.html.twig"
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27604
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27637 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27643 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27630 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
]
Attributes
[
  "template" => "@SyliusShop/product/common/card.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent {#29184
  +product: App\Entity\Product\Product {#8555
    #id: 3074
    #code: "moulin-peugeot-bali-3610"
    #attributes: Doctrine\ORM\PersistentCollection {#8562 …}
    #variants: Doctrine\ORM\PersistentCollection {#8564 …}
    #options: Doctrine\ORM\PersistentCollection {#8568 …}
    #associations: Doctrine\ORM\PersistentCollection {#8566 …}
    #createdAt: DateTime @1758632749 {#8553
      date: 2025-09-23 21:05:49.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632749 {#8554
      date: 2025-09-23 21:05:49.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8571 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8572
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8555}
        #id: 3074
        #name: "Moulin Peugeot Bali"
        #slug: "moulin-peugeot-bali-3610"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Design et couleurs soign&eacute;s.</li>\n
          <li>Bonne prise en main.</li>\n
          <li>M&eacute;canismes poivre ou sel garantis &agrave; vie&nbsp;</li>\n
          </ul></div><h1>Description moulin Peugeot Bali</h1><div class="col is-12">Le moulin Peugeot Bali est un moulin &agrave; poivre ou &agrave; sel au design &eacute;tudi&eacute;, id&eacute;al en cuisine comme pour pr&eacute;senter &agrave; table. Sa petite taille (8 cm) permet une excellente prise en main. Son m&eacute;canise poivre ou sel n' a plus rien &agrave; prouver en terme d'efficacit&eacute; comme de fiabilit&eacute;.</div><h1>Caractéristiques moulin Peugeot Bali</h1><div class="col is-12">Hauteur 8 cm. M&eacute;canismes poivre ou sel (sec uniquement) garantis &agrave; vie. R&eacute;glage de la mouture. Plusieurs couleurs au choix suivant m&eacute;canisme.</div>
          """
        #metaKeywords: null
        #metaDescription: null
        #shortDescription: null
        -fullTitle: null
        -metaTitle: null
      }
    ]
    #currentLocale: "fr_FR"
    #currentTranslation: null
    #fallbackLocale: "fr_FR"
    #variantSelectionMethod: "choice"
    #productTaxons: Doctrine\ORM\PersistentCollection {#8574 …}
    #channels: Doctrine\ORM\PersistentCollection {#8560 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#7525 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8556 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8558 …}
    #productType: null
  }
  +variant: App\Entity\Product\ProductVariant {#29486 …}
  +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 {#27604
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27637 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27643 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27630 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
}
sylius_shop:main_image
[Anonymous]
112.0 MiB 1.21 ms
Input props
[
  "product" => App\Entity\Product\Product {#8555
    #id: 3074
    #code: "moulin-peugeot-bali-3610"
    #attributes: Doctrine\ORM\PersistentCollection {#8562 …}
    #variants: Doctrine\ORM\PersistentCollection {#8564 …}
    #options: Doctrine\ORM\PersistentCollection {#8568 …}
    #associations: Doctrine\ORM\PersistentCollection {#8566 …}
    #createdAt: DateTime @1758632749 {#8553
      date: 2025-09-23 21:05:49.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632749 {#8554
      date: 2025-09-23 21:05:49.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8571 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8572
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8555}
        #id: 3074
        #name: "Moulin Peugeot Bali"
        #slug: "moulin-peugeot-bali-3610"
        #description: """
          <div class="col is-12"><ul>\n
          <li>Design et couleurs soign&eacute;s.</li>\n
          <li>Bonne prise en main.</li>\n
          <li>M&eacute;canismes poivre ou sel garantis &agrave; vie&nbsp;</li>\n
          </ul></div><h1>Description moulin Peugeot Bali</h1><div class="col is-12">Le moulin Peugeot Bali est un moulin &agrave; poivre ou &agrave; sel au design &eacute;tudi&eacute;, id&eacute;al en cuisine comme pour pr&eacute;senter &agrave; table. Sa petite taille (8 cm) permet une excellente prise en main. Son m&eacute;canise poivre ou sel n' a plus rien &agrave; prouver en terme d'efficacit&eacute; comme de fiabilit&eacute;.</div><h1>Caractéristiques moulin Peugeot Bali</h1><div class="col is-12">Hauteur 8 cm. M&eacute;canismes poivre ou sel (sec uniquement) garantis &agrave; vie. R&eacute;glage de la mouture. Plusieurs couleurs au choix suivant m&eacute;canisme.</div>
          """
        #metaKeywords: null
        #metaDescription: null
        #shortDescription: null
        -fullTitle: null
        -metaTitle: null
      }
    ]
    #currentLocale: "fr_FR"
    #currentTranslation: null
    #fallbackLocale: "fr_FR"
    #variantSelectionMethod: "choice"
    #productTaxons: Doctrine\ORM\PersistentCollection {#8574 …}
    #channels: Doctrine\ORM\PersistentCollection {#8560 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#7525 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8556 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8558 …}
    #productType: null
  }
  "class" => "w-100 h-100 object-fit-cover"
]
Attributes
[
  "product" => "Moulin Peugeot Bali"
  "class" => "w-100 h-100 object-fit-cover"
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#29557
  -props: [
    "product" => App\Entity\Product\Product {#8555
      #id: 3074
      #code: "moulin-peugeot-bali-3610"
      #attributes: Doctrine\ORM\PersistentCollection {#8562 …}
      #variants: Doctrine\ORM\PersistentCollection {#8564 …}
      #options: Doctrine\ORM\PersistentCollection {#8568 …}
      #associations: Doctrine\ORM\PersistentCollection {#8566 …}
      #createdAt: DateTime @1758632749 {#8553
        date: 2025-09-23 21:05:49.0 PRC (+08:00)
      }
      #updatedAt: DateTime @1758632749 {#8554
        date: 2025-09-23 21:05:49.0 PRC (+08:00)
      }
      #enabled: true
      #translations: Doctrine\ORM\PersistentCollection {#8571 …}
      #translationsCache: [
        "fr_FR" => App\Entity\Product\ProductTranslation {#8572
          #locale: "fr_FR"
          #translatable: App\Entity\Product\Product {#8555}
          #id: 3074
          #name: "Moulin Peugeot Bali"
          #slug: "moulin-peugeot-bali-3610"
          #description: """
            <div class="col is-12"><ul>\n
            <li>Design et couleurs soign&eacute;s.</li>\n
            <li>Bonne prise en main.</li>\n
            <li>M&eacute;canismes poivre ou sel garantis &agrave; vie&nbsp;</li>\n
            </ul></div><h1>Description moulin Peugeot Bali</h1><div class="col is-12">Le moulin Peugeot Bali est un moulin &agrave; poivre ou &agrave; sel au design &eacute;tudi&eacute;, id&eacute;al en cuisine comme pour pr&eacute;senter &agrave; table. Sa petite taille (8 cm) permet une excellente prise en main. Son m&eacute;canise poivre ou sel n' a plus rien &agrave; prouver en terme d'efficacit&eacute; comme de fiabilit&eacute;.</div><h1>Caractéristiques moulin Peugeot Bali</h1><div class="col is-12">Hauteur 8 cm. M&eacute;canismes poivre ou sel (sec uniquement) garantis &agrave; vie. R&eacute;glage de la mouture. Plusieurs couleurs au choix suivant m&eacute;canisme.</div>
            """
          #metaKeywords: null
          #metaDescription: null
          #shortDescription: null
          -fullTitle: null
          -metaTitle: null
        }
      ]
      #currentLocale: "fr_FR"
      #currentTranslation: null
      #fallbackLocale: "fr_FR"
      #variantSelectionMethod: "choice"
      #productTaxons: Doctrine\ORM\PersistentCollection {#8574 …}
      #channels: Doctrine\ORM\PersistentCollection {#8560 …}
      #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#7525 …}
      #reviews: Doctrine\ORM\PersistentCollection {#8556 …}
      #averageRating: 0.0
      #images: Doctrine\ORM\PersistentCollection {#8558 …}
      #productType: null
    }
    "class" => "w-100 h-100 object-fit-cover"
  ]
}
sylius_shop:catalog_promotions
[Anonymous]
112.0 MiB 1.38 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29678
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29541 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29623 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29538 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#29486 …}
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#29494
    #collection: Doctrine\Common\Collections\ArrayCollection {#29503 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#29482 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#37233 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#37235 …}
  }
  "withDescription" => false
]
Attributes
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29678
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29541 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29623 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29538 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => "Moulin Peugeot Bali"
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#29494
    #collection: Doctrine\Common\Collections\ArrayCollection {#29503 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#29482 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#37233 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#37235 …}
  }
  "withDescription" => false
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#29683
  -props: [
    "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29678
      +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29541 …}
      +context: Sylius\TwigHooks\Bag\DataBag {#29623 …}
      +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29538 …}
      +prefixes: [
        "sylius_shop.product.index.content.body.main.card.prices"
        "sylius_shop.shared.product.card.prices"
      ]
    }
    "variant" => App\Entity\Product\ProductVariant {#29486 …}
    "applied_promotions" => Doctrine\ORM\PersistentCollection {#29494
      #collection: Doctrine\Common\Collections\ArrayCollection {#29503 …}
      #initialized: true
      -snapshot: []
      -owner: App\Entity\Channel\ChannelPricing {#29482 …}
      -association: Symfony\Component\VarDumper\Caster\CutStub {#37233 …}
      -backRefFieldName: null
      -isDirty: false
      -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
      -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#37235 …}
    }
    "withDescription" => false
  ]
}
sylius_shop:product:card:price Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent 112.0 MiB 0.29 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29732
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29723 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29730 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29731 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#29486 …}
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Attributes
[
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent {#29735
  +variant: App\Entity\Product\ProductVariant {#29486 …}
  +price: "29,00\u{A0}"
  +originalPrice: "32,00\u{A0}"
  +hasDiscount: true
  #productVariantPricesCalculator: Sylius\Component\Core\Calculator\ProductVariantPriceCalculator {#5465 …}
  #moneyFormatter: Sylius\Bundle\MoneyBundle\Formatter\MoneyFormatter {#8959 …}
  #channelContext: Sylius\Component\Channel\Context\CachedPerRequestChannelContext {#4203 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  #currencyContext: Sylius\Component\Core\Currency\Context\ChannelAwareCurrencyContext {#12389 …}
  #currencyConverter: Sylius\Component\Currency\Converter\CurrencyConverter {#8956 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29732
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29723 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29730 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29731 …}
    +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 112.0 MiB 7.34 ms
Input props
[
  "product" => App\Entity\Product\Product {#8578
    #id: 3107
    #code: "moulin-peugeot-daman-2011"
    #attributes: Doctrine\ORM\PersistentCollection {#8585 …}
    #variants: Doctrine\ORM\PersistentCollection {#8587 …}
    #options: Doctrine\ORM\PersistentCollection {#8591 …}
    #associations: Doctrine\ORM\PersistentCollection {#8589 …}
    #createdAt: DateTime @1758632755 {#8576
      date: 2025-09-23 21:05:55.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632755 {#8577
      date: 2025-09-23 21:05:55.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8594 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8595
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8578}
        #id: 3107
        #name: "Moulin Peugeot Daman"
        #slug: "moulin-peugeot-daman-2011"
        #description: """
          <div class="col is-12"><ul>\n
          <li>M&eacute;canisme garanti &agrave; vie. </li>\n
          <li>Syst&egrave;me&nbsp;USELECT. </li>\n
          <li>Couvercle de remplissage aimant&eacute;, se referme tout seul !</li>\n
          </ul></div><h1>Description  Moulin Peugeot Daman</h1><div class="col is-12">Le moulin peugeot DAMAN b&eacute;n&eacute;ficie d'une esth&eacute;tique travaill&eacute;e et d'un m&eacute;canisme garanti &agrave; vie. &nbsp;Il&nbsp;poss&egrave;de un couvercle de remplissage aimant&eacute;, se referme tout seul !<a href="&lt;/body"></a></div><h1>Description  mécanisme Moulin Peugeot Daman</h1><div class="col is-12"><p>Vous retrouvez dans les m&eacute;canismes moulin PEUGEOT tout le savoir faire technologique et industriel d&eacute;velopp&eacute; depuis plus de 160 ans. Inusable et d&rsquo;une efficacit&eacute; redoutable, le m&eacute;canisme moulin PEUGEOT est constitu&eacute; de double rang&eacute;e de dents capturant les grains en les entra&icirc;nant vers le bas pour les broyer parfaitement. Aux traditionnels m&eacute;canismes poivre et sel sont venus s&rsquo;ajouter des m&eacute;canismes exclusifs pour le sel de Gu&eacute;randes, les &eacute;pices, le piment et la muscade. Leur fiabilit&eacute; n&rsquo;est plus &agrave; prouver ce qui permet &agrave; PEUGEOT de pouvoir donner &agrave; ses m&eacute;canismes une garantie &agrave; vie. Les corps des moulins con&ccedil;us dans une grande vari&eacute;t&eacute; de mat&eacute;riaux (bois, inox, pvc..) sont tous con&ccedil;us avec soin pour une ergonomie optimale et pour s&rsquo;harmoniser avec tous les styles<br /><a href="&lt;/body"></a></p></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 {#8597 …}
    #channels: Doctrine\ORM\PersistentCollection {#8583 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#7525 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8579 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8581 …}
    #productType: null
  }
  "template" => "@SyliusShop/product/common/card.html.twig"
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27604
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27637 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27643 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27630 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
]
Attributes
[
  "template" => "@SyliusShop/product/common/card.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent {#29548
  +product: App\Entity\Product\Product {#8578
    #id: 3107
    #code: "moulin-peugeot-daman-2011"
    #attributes: Doctrine\ORM\PersistentCollection {#8585 …}
    #variants: Doctrine\ORM\PersistentCollection {#8587 …}
    #options: Doctrine\ORM\PersistentCollection {#8591 …}
    #associations: Doctrine\ORM\PersistentCollection {#8589 …}
    #createdAt: DateTime @1758632755 {#8576
      date: 2025-09-23 21:05:55.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632755 {#8577
      date: 2025-09-23 21:05:55.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8594 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8595
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8578}
        #id: 3107
        #name: "Moulin Peugeot Daman"
        #slug: "moulin-peugeot-daman-2011"
        #description: """
          <div class="col is-12"><ul>\n
          <li>M&eacute;canisme garanti &agrave; vie. </li>\n
          <li>Syst&egrave;me&nbsp;USELECT. </li>\n
          <li>Couvercle de remplissage aimant&eacute;, se referme tout seul !</li>\n
          </ul></div><h1>Description  Moulin Peugeot Daman</h1><div class="col is-12">Le moulin peugeot DAMAN b&eacute;n&eacute;ficie d'une esth&eacute;tique travaill&eacute;e et d'un m&eacute;canisme garanti &agrave; vie. &nbsp;Il&nbsp;poss&egrave;de un couvercle de remplissage aimant&eacute;, se referme tout seul !<a href="&lt;/body"></a></div><h1>Description  mécanisme Moulin Peugeot Daman</h1><div class="col is-12"><p>Vous retrouvez dans les m&eacute;canismes moulin PEUGEOT tout le savoir faire technologique et industriel d&eacute;velopp&eacute; depuis plus de 160 ans. Inusable et d&rsquo;une efficacit&eacute; redoutable, le m&eacute;canisme moulin PEUGEOT est constitu&eacute; de double rang&eacute;e de dents capturant les grains en les entra&icirc;nant vers le bas pour les broyer parfaitement. Aux traditionnels m&eacute;canismes poivre et sel sont venus s&rsquo;ajouter des m&eacute;canismes exclusifs pour le sel de Gu&eacute;randes, les &eacute;pices, le piment et la muscade. Leur fiabilit&eacute; n&rsquo;est plus &agrave; prouver ce qui permet &agrave; PEUGEOT de pouvoir donner &agrave; ses m&eacute;canismes une garantie &agrave; vie. Les corps des moulins con&ccedil;us dans une grande vari&eacute;t&eacute; de mat&eacute;riaux (bois, inox, pvc..) sont tous con&ccedil;us avec soin pour une ergonomie optimale et pour s&rsquo;harmoniser avec tous les styles<br /><a href="&lt;/body"></a></p></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 {#8597 …}
    #channels: Doctrine\ORM\PersistentCollection {#8583 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#7525 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8579 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8581 …}
    #productType: null
  }
  +variant: App\Entity\Product\ProductVariant {#29798 …}
  +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 {#27604
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27637 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27643 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27630 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
}
sylius_shop:main_image
[Anonymous]
112.0 MiB 1.04 ms
Input props
[
  "product" => App\Entity\Product\Product {#8578
    #id: 3107
    #code: "moulin-peugeot-daman-2011"
    #attributes: Doctrine\ORM\PersistentCollection {#8585 …}
    #variants: Doctrine\ORM\PersistentCollection {#8587 …}
    #options: Doctrine\ORM\PersistentCollection {#8591 …}
    #associations: Doctrine\ORM\PersistentCollection {#8589 …}
    #createdAt: DateTime @1758632755 {#8576
      date: 2025-09-23 21:05:55.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632755 {#8577
      date: 2025-09-23 21:05:55.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8594 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8595
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8578}
        #id: 3107
        #name: "Moulin Peugeot Daman"
        #slug: "moulin-peugeot-daman-2011"
        #description: """
          <div class="col is-12"><ul>\n
          <li>M&eacute;canisme garanti &agrave; vie. </li>\n
          <li>Syst&egrave;me&nbsp;USELECT. </li>\n
          <li>Couvercle de remplissage aimant&eacute;, se referme tout seul !</li>\n
          </ul></div><h1>Description  Moulin Peugeot Daman</h1><div class="col is-12">Le moulin peugeot DAMAN b&eacute;n&eacute;ficie d'une esth&eacute;tique travaill&eacute;e et d'un m&eacute;canisme garanti &agrave; vie. &nbsp;Il&nbsp;poss&egrave;de un couvercle de remplissage aimant&eacute;, se referme tout seul !<a href="&lt;/body"></a></div><h1>Description  mécanisme Moulin Peugeot Daman</h1><div class="col is-12"><p>Vous retrouvez dans les m&eacute;canismes moulin PEUGEOT tout le savoir faire technologique et industriel d&eacute;velopp&eacute; depuis plus de 160 ans. Inusable et d&rsquo;une efficacit&eacute; redoutable, le m&eacute;canisme moulin PEUGEOT est constitu&eacute; de double rang&eacute;e de dents capturant les grains en les entra&icirc;nant vers le bas pour les broyer parfaitement. Aux traditionnels m&eacute;canismes poivre et sel sont venus s&rsquo;ajouter des m&eacute;canismes exclusifs pour le sel de Gu&eacute;randes, les &eacute;pices, le piment et la muscade. Leur fiabilit&eacute; n&rsquo;est plus &agrave; prouver ce qui permet &agrave; PEUGEOT de pouvoir donner &agrave; ses m&eacute;canismes une garantie &agrave; vie. Les corps des moulins con&ccedil;us dans une grande vari&eacute;t&eacute; de mat&eacute;riaux (bois, inox, pvc..) sont tous con&ccedil;us avec soin pour une ergonomie optimale et pour s&rsquo;harmoniser avec tous les styles<br /><a href="&lt;/body"></a></p></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 {#8597 …}
    #channels: Doctrine\ORM\PersistentCollection {#8583 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#7525 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8579 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8581 …}
    #productType: null
  }
  "class" => "w-100 h-100 object-fit-cover"
]
Attributes
[
  "product" => "Moulin Peugeot Daman"
  "class" => "w-100 h-100 object-fit-cover"
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#29869
  -props: [
    "product" => App\Entity\Product\Product {#8578
      #id: 3107
      #code: "moulin-peugeot-daman-2011"
      #attributes: Doctrine\ORM\PersistentCollection {#8585 …}
      #variants: Doctrine\ORM\PersistentCollection {#8587 …}
      #options: Doctrine\ORM\PersistentCollection {#8591 …}
      #associations: Doctrine\ORM\PersistentCollection {#8589 …}
      #createdAt: DateTime @1758632755 {#8576
        date: 2025-09-23 21:05:55.0 PRC (+08:00)
      }
      #updatedAt: DateTime @1758632755 {#8577
        date: 2025-09-23 21:05:55.0 PRC (+08:00)
      }
      #enabled: true
      #translations: Doctrine\ORM\PersistentCollection {#8594 …}
      #translationsCache: [
        "fr_FR" => App\Entity\Product\ProductTranslation {#8595
          #locale: "fr_FR"
          #translatable: App\Entity\Product\Product {#8578}
          #id: 3107
          #name: "Moulin Peugeot Daman"
          #slug: "moulin-peugeot-daman-2011"
          #description: """
            <div class="col is-12"><ul>\n
            <li>M&eacute;canisme garanti &agrave; vie. </li>\n
            <li>Syst&egrave;me&nbsp;USELECT. </li>\n
            <li>Couvercle de remplissage aimant&eacute;, se referme tout seul !</li>\n
            </ul></div><h1>Description  Moulin Peugeot Daman</h1><div class="col is-12">Le moulin peugeot DAMAN b&eacute;n&eacute;ficie d'une esth&eacute;tique travaill&eacute;e et d'un m&eacute;canisme garanti &agrave; vie. &nbsp;Il&nbsp;poss&egrave;de un couvercle de remplissage aimant&eacute;, se referme tout seul !<a href="&lt;/body"></a></div><h1>Description  mécanisme Moulin Peugeot Daman</h1><div class="col is-12"><p>Vous retrouvez dans les m&eacute;canismes moulin PEUGEOT tout le savoir faire technologique et industriel d&eacute;velopp&eacute; depuis plus de 160 ans. Inusable et d&rsquo;une efficacit&eacute; redoutable, le m&eacute;canisme moulin PEUGEOT est constitu&eacute; de double rang&eacute;e de dents capturant les grains en les entra&icirc;nant vers le bas pour les broyer parfaitement. Aux traditionnels m&eacute;canismes poivre et sel sont venus s&rsquo;ajouter des m&eacute;canismes exclusifs pour le sel de Gu&eacute;randes, les &eacute;pices, le piment et la muscade. Leur fiabilit&eacute; n&rsquo;est plus &agrave; prouver ce qui permet &agrave; PEUGEOT de pouvoir donner &agrave; ses m&eacute;canismes une garantie &agrave; vie. Les corps des moulins con&ccedil;us dans une grande vari&eacute;t&eacute; de mat&eacute;riaux (bois, inox, pvc..) sont tous con&ccedil;us avec soin pour une ergonomie optimale et pour s&rsquo;harmoniser avec tous les styles<br /><a href="&lt;/body"></a></p></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 {#8597 …}
      #channels: Doctrine\ORM\PersistentCollection {#8583 …}
      #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#7525 …}
      #reviews: Doctrine\ORM\PersistentCollection {#8579 …}
      #averageRating: 0.0
      #images: Doctrine\ORM\PersistentCollection {#8581 …}
      #productType: null
    }
    "class" => "w-100 h-100 object-fit-cover"
  ]
}
sylius_shop:catalog_promotions
[Anonymous]
112.0 MiB 0.77 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29984
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29853 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29929 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29850 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#29798 …}
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#29806
    #collection: Doctrine\Common\Collections\ArrayCollection {#29815 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#29794 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#37247 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#37249 …}
  }
  "withDescription" => false
]
Attributes
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29984
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29853 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#29929 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29850 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => "Moulin Peugeot Daman"
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#29806
    #collection: Doctrine\Common\Collections\ArrayCollection {#29815 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#29794 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#37247 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#37249 …}
  }
  "withDescription" => false
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#29989
  -props: [
    "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#29984
      +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#29853 …}
      +context: Sylius\TwigHooks\Bag\DataBag {#29929 …}
      +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#29850 …}
      +prefixes: [
        "sylius_shop.product.index.content.body.main.card.prices"
        "sylius_shop.shared.product.card.prices"
      ]
    }
    "variant" => App\Entity\Product\ProductVariant {#29798 …}
    "applied_promotions" => Doctrine\ORM\PersistentCollection {#29806
      #collection: Doctrine\Common\Collections\ArrayCollection {#29815 …}
      #initialized: true
      -snapshot: []
      -owner: App\Entity\Channel\ChannelPricing {#29794 …}
      -association: Symfony\Component\VarDumper\Caster\CutStub {#37247 …}
      -backRefFieldName: null
      -isDirty: false
      -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
      -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#37249 …}
    }
    "withDescription" => false
  ]
}
sylius_shop:product:card:price Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent 112.0 MiB 0.23 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30038
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30029 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30036 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30037 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#29798 …}
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Attributes
[
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent {#30041
  +variant: App\Entity\Product\ProductVariant {#29798 …}
  +price: "92,00\u{A0}"
  +originalPrice: "109,00\u{A0}"
  +hasDiscount: true
  #productVariantPricesCalculator: Sylius\Component\Core\Calculator\ProductVariantPriceCalculator {#5465 …}
  #moneyFormatter: Sylius\Bundle\MoneyBundle\Formatter\MoneyFormatter {#8959 …}
  #channelContext: Sylius\Component\Channel\Context\CachedPerRequestChannelContext {#4203 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  #currencyContext: Sylius\Component\Core\Currency\Context\ChannelAwareCurrencyContext {#12389 …}
  #currencyConverter: Sylius\Component\Currency\Converter\CurrencyConverter {#8956 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30038
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30029 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30036 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30037 …}
    +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 112.0 MiB 7.04 ms
Input props
[
  "product" => App\Entity\Product\Product {#8601
    #id: 3118
    #code: "moulins-duo-paris-poivre-sel-peugeot-7368"
    #attributes: Doctrine\ORM\PersistentCollection {#8608 …}
    #variants: Doctrine\ORM\PersistentCollection {#8610 …}
    #options: Doctrine\ORM\PersistentCollection {#8614 …}
    #associations: Doctrine\ORM\PersistentCollection {#8612 …}
    #createdAt: DateTime @1758632759 {#8599
      date: 2025-09-23 21:05:59.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632759 {#8600
      date: 2025-09-23 21:05:59.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8617 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8618
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8601}
        #id: 3118
        #name: "Moulins Duo Paris poivre & sel Peugeot"
        #slug: "moulins-duo-paris-poivre-sel-peugeot-7368"
        #description: """
          <div class="col is-12"><ul>\n
          <li>M&eacute;canismes Peugeot garantis &agrave; vie.</li>\n
          <li>Hauteur : 18 cm.</li>\n
          <li><strong>Fabriqu&eacute;s en France.</strong></li>\n
          </ul></div><h1>Descriptif Moulins Duo Paris poivre & sel Peugeot</h1><div class="col is-12">Lot compos&eacute; d'un moulin &agrave; poivre chocolat et d'un moulin &agrave; sel naturel de 18 cm de hauteur</div><h1>Caractéristiques Moulins Duo Paris poivre & sel Peugeot</h1><div class="col is-12">- 1 moulin &agrave; poivre chocolat de 18 cm de hauteur.<br />- 1 moulin &agrave; sel naturel de 18 cm de hauteur.<br />- Fabrication fran&ccedil;aise.</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 {#8620 …}
    #channels: Doctrine\ORM\PersistentCollection {#8606 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#7525 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8602 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8604 …}
    #productType: null
  }
  "template" => "@SyliusShop/product/common/card.html.twig"
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27604
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27637 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27643 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27630 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
]
Attributes
[
  "template" => "@SyliusShop/product/common/card.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\CardComponent {#29860
  +product: App\Entity\Product\Product {#8601
    #id: 3118
    #code: "moulins-duo-paris-poivre-sel-peugeot-7368"
    #attributes: Doctrine\ORM\PersistentCollection {#8608 …}
    #variants: Doctrine\ORM\PersistentCollection {#8610 …}
    #options: Doctrine\ORM\PersistentCollection {#8614 …}
    #associations: Doctrine\ORM\PersistentCollection {#8612 …}
    #createdAt: DateTime @1758632759 {#8599
      date: 2025-09-23 21:05:59.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632759 {#8600
      date: 2025-09-23 21:05:59.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8617 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8618
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8601}
        #id: 3118
        #name: "Moulins Duo Paris poivre & sel Peugeot"
        #slug: "moulins-duo-paris-poivre-sel-peugeot-7368"
        #description: """
          <div class="col is-12"><ul>\n
          <li>M&eacute;canismes Peugeot garantis &agrave; vie.</li>\n
          <li>Hauteur : 18 cm.</li>\n
          <li><strong>Fabriqu&eacute;s en France.</strong></li>\n
          </ul></div><h1>Descriptif Moulins Duo Paris poivre & sel Peugeot</h1><div class="col is-12">Lot compos&eacute; d'un moulin &agrave; poivre chocolat et d'un moulin &agrave; sel naturel de 18 cm de hauteur</div><h1>Caractéristiques Moulins Duo Paris poivre & sel Peugeot</h1><div class="col is-12">- 1 moulin &agrave; poivre chocolat de 18 cm de hauteur.<br />- 1 moulin &agrave; sel naturel de 18 cm de hauteur.<br />- Fabrication fran&ccedil;aise.</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 {#8620 …}
    #channels: Doctrine\ORM\PersistentCollection {#8606 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#7525 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8602 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8604 …}
    #productType: null
  }
  +variant: App\Entity\Product\ProductVariant {#30104 …}
  +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 {#27604
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#27637 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27643 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#27630 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main"
    ]
  }
}
sylius_shop:main_image
[Anonymous]
112.0 MiB 1.18 ms
Input props
[
  "product" => App\Entity\Product\Product {#8601
    #id: 3118
    #code: "moulins-duo-paris-poivre-sel-peugeot-7368"
    #attributes: Doctrine\ORM\PersistentCollection {#8608 …}
    #variants: Doctrine\ORM\PersistentCollection {#8610 …}
    #options: Doctrine\ORM\PersistentCollection {#8614 …}
    #associations: Doctrine\ORM\PersistentCollection {#8612 …}
    #createdAt: DateTime @1758632759 {#8599
      date: 2025-09-23 21:05:59.0 PRC (+08:00)
    }
    #updatedAt: DateTime @1758632759 {#8600
      date: 2025-09-23 21:05:59.0 PRC (+08:00)
    }
    #enabled: true
    #translations: Doctrine\ORM\PersistentCollection {#8617 …}
    #translationsCache: [
      "fr_FR" => App\Entity\Product\ProductTranslation {#8618
        #locale: "fr_FR"
        #translatable: App\Entity\Product\Product {#8601}
        #id: 3118
        #name: "Moulins Duo Paris poivre & sel Peugeot"
        #slug: "moulins-duo-paris-poivre-sel-peugeot-7368"
        #description: """
          <div class="col is-12"><ul>\n
          <li>M&eacute;canismes Peugeot garantis &agrave; vie.</li>\n
          <li>Hauteur : 18 cm.</li>\n
          <li><strong>Fabriqu&eacute;s en France.</strong></li>\n
          </ul></div><h1>Descriptif Moulins Duo Paris poivre & sel Peugeot</h1><div class="col is-12">Lot compos&eacute; d'un moulin &agrave; poivre chocolat et d'un moulin &agrave; sel naturel de 18 cm de hauteur</div><h1>Caractéristiques Moulins Duo Paris poivre & sel Peugeot</h1><div class="col is-12">- 1 moulin &agrave; poivre chocolat de 18 cm de hauteur.<br />- 1 moulin &agrave; sel naturel de 18 cm de hauteur.<br />- Fabrication fran&ccedil;aise.</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 {#8620 …}
    #channels: Doctrine\ORM\PersistentCollection {#8606 …}
    #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#7525 …}
    #reviews: Doctrine\ORM\PersistentCollection {#8602 …}
    #averageRating: 0.0
    #images: Doctrine\ORM\PersistentCollection {#8604 …}
    #productType: null
  }
  "class" => "w-100 h-100 object-fit-cover"
]
Attributes
[
  "product" => "Moulins Duo Paris poivre & sel Peugeot"
  "class" => "w-100 h-100 object-fit-cover"
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#30175
  -props: [
    "product" => App\Entity\Product\Product {#8601
      #id: 3118
      #code: "moulins-duo-paris-poivre-sel-peugeot-7368"
      #attributes: Doctrine\ORM\PersistentCollection {#8608 …}
      #variants: Doctrine\ORM\PersistentCollection {#8610 …}
      #options: Doctrine\ORM\PersistentCollection {#8614 …}
      #associations: Doctrine\ORM\PersistentCollection {#8612 …}
      #createdAt: DateTime @1758632759 {#8599
        date: 2025-09-23 21:05:59.0 PRC (+08:00)
      }
      #updatedAt: DateTime @1758632759 {#8600
        date: 2025-09-23 21:05:59.0 PRC (+08:00)
      }
      #enabled: true
      #translations: Doctrine\ORM\PersistentCollection {#8617 …}
      #translationsCache: [
        "fr_FR" => App\Entity\Product\ProductTranslation {#8618
          #locale: "fr_FR"
          #translatable: App\Entity\Product\Product {#8601}
          #id: 3118
          #name: "Moulins Duo Paris poivre & sel Peugeot"
          #slug: "moulins-duo-paris-poivre-sel-peugeot-7368"
          #description: """
            <div class="col is-12"><ul>\n
            <li>M&eacute;canismes Peugeot garantis &agrave; vie.</li>\n
            <li>Hauteur : 18 cm.</li>\n
            <li><strong>Fabriqu&eacute;s en France.</strong></li>\n
            </ul></div><h1>Descriptif Moulins Duo Paris poivre & sel Peugeot</h1><div class="col is-12">Lot compos&eacute; d'un moulin &agrave; poivre chocolat et d'un moulin &agrave; sel naturel de 18 cm de hauteur</div><h1>Caractéristiques Moulins Duo Paris poivre & sel Peugeot</h1><div class="col is-12">- 1 moulin &agrave; poivre chocolat de 18 cm de hauteur.<br />- 1 moulin &agrave; sel naturel de 18 cm de hauteur.<br />- Fabrication fran&ccedil;aise.</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 {#8620 …}
      #channels: Doctrine\ORM\PersistentCollection {#8606 …}
      #mainTaxon: Proxies\__CG__\App\Entity\Taxonomy\Taxon {#7525 …}
      #reviews: Doctrine\ORM\PersistentCollection {#8602 …}
      #averageRating: 0.0
      #images: Doctrine\ORM\PersistentCollection {#8604 …}
      #productType: null
    }
    "class" => "w-100 h-100 object-fit-cover"
  ]
}
sylius_shop:catalog_promotions
[Anonymous]
112.0 MiB 1.09 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30168
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30159 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30226 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30156 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#30104 …}
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#30112
    #collection: Doctrine\Common\Collections\ArrayCollection {#30121 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#30100 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#37261 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#37263 …}
  }
  "withDescription" => false
]
Attributes
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30168
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30159 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30226 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30156 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => "Moulins Duo Paris poivre & sel Peugeot"
  "applied_promotions" => Doctrine\ORM\PersistentCollection {#30112
    #collection: Doctrine\Common\Collections\ArrayCollection {#30121 …}
    #initialized: true
    -snapshot: []
    -owner: App\Entity\Channel\ChannelPricing {#30100 …}
    -association: Symfony\Component\VarDumper\Caster\CutStub {#37261 …}
    -backRefFieldName: null
    -isDirty: false
    -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
    -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#37263 …}
  }
  "withDescription" => false
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#30230
  -props: [
    "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30168
      +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30159 …}
      +context: Sylius\TwigHooks\Bag\DataBag {#30226 …}
      +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30156 …}
      +prefixes: [
        "sylius_shop.product.index.content.body.main.card.prices"
        "sylius_shop.shared.product.card.prices"
      ]
    }
    "variant" => App\Entity\Product\ProductVariant {#30104 …}
    "applied_promotions" => Doctrine\ORM\PersistentCollection {#30112
      #collection: Doctrine\Common\Collections\ArrayCollection {#30121 …}
      #initialized: true
      -snapshot: []
      -owner: App\Entity\Channel\ChannelPricing {#30100 …}
      -association: Symfony\Component\VarDumper\Caster\CutStub {#37261 …}
      -backRefFieldName: null
      -isDirty: false
      -em: ContainerX4JY5xp\EntityManagerGhost614a58f {#232 …}
      -typeClass: Symfony\Component\VarDumper\Caster\CutStub {#37263 …}
    }
    "withDescription" => false
  ]
}
sylius_shop:product:card:price Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent 112.0 MiB 0.22 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30280
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30271 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30278 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30279 …}
    +prefixes: [
      "sylius_shop.product.index.content.body.main.card.prices"
      "sylius_shop.shared.product.card.prices"
    ]
  }
  "variant" => App\Entity\Product\ProductVariant {#30104 …}
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Attributes
[
  "template" => "@SyliusShop/product/common/price.html.twig"
]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Product\PriceComponent {#30283
  +variant: App\Entity\Product\ProductVariant {#30104 …}
  +price: "64,00\u{A0}"
  +originalPrice: "64,00\u{A0}"
  +hasDiscount: false
  #productVariantPricesCalculator: Sylius\Component\Core\Calculator\ProductVariantPriceCalculator {#5465 …}
  #moneyFormatter: Sylius\Bundle\MoneyBundle\Formatter\MoneyFormatter {#8959 …}
  #channelContext: Sylius\Component\Channel\Context\CachedPerRequestChannelContext {#4203 …}
  #localeContext: Sylius\Component\Locale\Context\CompositeLocaleContext {#1298 …}
  #currencyContext: Sylius\Component\Core\Currency\Context\ChannelAwareCurrencyContext {#12389 …}
  #currencyConverter: Sylius\Component\Currency\Converter\CurrencyConverter {#8956 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#30280
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#30271 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#30278 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#30279 …}
    +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 112.0 MiB 3.04 ms
Input props
[
  "hookableMetadata" => Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27317
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#12454 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27339 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#12464 …}
    +prefixes: [
      "sylius_shop.base.offcanvas"
    ]
  }
  "template" => "@SyliusShop/shared/layout/base/offcanvas/cart.html.twig"
]
Attributes
[]
Component
Sylius\Bundle\ShopBundle\Twig\Component\Cart\WidgetComponent {#30560
  +cart: App\Entity\Order\Order {#13368 …}
  #cartContext: Sylius\Component\Order\Context\CompositeCartContext {#1322 …}
  +hookableMetadata: Sylius\TwigHooks\Hookable\Metadata\HookableMetadata {#27317
    +renderedBy: Sylius\TwigHooks\Hook\Metadata\HookMetadata {#12454 …}
    +context: Sylius\TwigHooks\Bag\DataBag {#27339 …}
    +configuration: Sylius\TwigHooks\Bag\ScalarDataBag {#12464 …}
    +prefixes: [
      "sylius_shop.base.offcanvas"
    ]
  }
  +template: "@SyliusShop/shared/layout/base/offcanvas/cart.html.twig"
  #repository: Sylius\Bundle\CoreBundle\Doctrine\ORM\OrderRepository {#4980 …}
}