waaz/sylius-hero-plugin

Hero plugin for Sylius - Manage hero sections with slides/blocks.

Installs: 4

Dependents: 0

Suggesters: 0

Security: 0

Stars: 0

Watchers: 0

Forks: 0

Open Issues: 0

Type:sylius-plugin

pkg:composer/waaz/sylius-hero-plugin


README

Plugin Sylius pour créer et gérer des sections Hero avec des slides/blocks.

Installation

composer require waaz/sylius-hero-plugin

Après l'installation, exécutez les migrations :

bin/console doctrine:migrations:migrate

Configuration des routes

Pour activer les routes du plugin, ajoutez-les dans votre fichier config/routes.yaml :

waaz_sylius_hero_shop:
    resource: "@WaazSyliusHeroPlugin/config/shop_routing.yml"
    prefix: /{_locale}
    requirements:
        _locale: ^[a-z]{2}(?:_[A-Z]{2})?$

waaz_sylius_hero_admin:
    resource: "@WaazSyliusHeroPlugin/config/admin_routing.yml"
    prefix: /admin

Utilisation

Administration

  1. Accédez à l'administration Sylius
  2. Dans le menu, vous trouverez "Héros"
  3. Créez un nouveau Hero avec un code unique (ex: homepage)
  4. Ajoutez des blocks (slides) à votre Hero :
    • Image (obligatoire)
    • Titre (optionnel)
    • Bouton avec texte et URL (optionnel)
    • Position pour l'ordre d'affichage
    • Canal (optionnel, pour filtrer par channel Sylius)
    • Activé/Désactivé

Frontend

Pour afficher un Hero dans un template Twig, utilisez le contrôleur :

{{ render(path('waaz_sylius_hero_shop_hero_index_by_code', {'code': 'homepage'})) }}

Pour utiliser un template personnalisé, passez le paramètre template :

{{ render(path('waaz_sylius_hero_shop_hero_index_by_code', {
    'code': 'homepage',
    'template': '@YourBundle/Shop/hero_custom.html.twig'
})) }}

Personnalisation des templates

Pour personnaliser l'affichage, surchargez le template dans votre application :

templates/bundles/WaazSyliusHeroPlugin/Shop/hero.html.twig

Le template reçoit la variable hero avec :

  • hero.code : Le code du Hero
  • hero.blocks : Collection des blocks (slides)
    • block.image.path : Chemin de l'image
    • block.title : Titre (optionnel)
    • block.buttonText : Texte du bouton (optionnel)
    • block.buttonUrl : URL du bouton (optionnel)
    • block.buttonTargetBlank : Ouvrir dans un nouvel onglet (optionnel)

Configuration

Le filtre d'image Imagine est configuré automatiquement :

  • Filtre : waaz_sylius_hero_shop_hero_image
  • Taille : 1920 × 793 px