jchr86/sylius-banner-plugin

Plugin allowing to create banners in Sylius.

Installs: 69

Dependents: 0

Suggesters: 0

Security: 0

Stars: 0

Watchers: 2

Forks: 0

Open Issues: 0

Type:sylius-plugin

This package is auto-updated.

Last update: 2024-04-08 15:45:52 UTC


README

Add banner functionality to your store.

Screenshots

Admin menu

Admin create

Shop

Installation

Download the plugin via composer

$ composer require jchr86/sylius-banner-plugin

Enable the plugin

Register the plugin by adding it to your config/bundles.php file

<?php

return [
    // ...
    Jchr86\SyliusBannerPlugin\Jchr86SyliusBannerPlugin::class => ['all' => true],
];

Configure the plugin

# config/packages/jchr86_sylius_banner.yaml

imports:
    - { resource: "@Jchr86SyliusBannerPlugin/Resources/config/config.yaml" }

Import admin routing

# config/routes/sylius_admin.yaml

# ...
jchr86_sylius_baner_admin:
    resource: "@Jchr86SyliusBannerPlugin/Resources/config/admin_routing.yaml"
    prefix: /admin

Import shop routing

# config/routes/sylius_shop.yaml

# ...
jchr86_sylius_banner_shop:
    resource: "@Jchr86SyliusBannerPlugin/Resources/config/shop_routing.yaml"

Update your database

$ bin/console doctrine:migrations:diff
$ bin/console doctrine:migrations:migrate

Install assets & clear cache

$ bin/console assets:install
$ bin/console cache:clear

Usage

1. Create a banner from the admin.
2. Create a template: templates/homepage/_my_banner.html.twig
  • code: Banner code
  • template: Template used for render.
{{ render(url('jchr86_sylius_banner_by_code', {'code': 'homepage', 'template': '@Jchr86SyliusBannerPlugin/banner/_carousel.html.twig'})) }}
3. Add the banner to the homepage.
# config/packages/_sylius.yaml

# ...
sylius_ui:
    events:
        sylius.shop.homepage:
            blocks:
                jchr86_banner:
                    template: "homepage/_my_banner.html.twig"
                    priority: 100

TODO

  • Tests.
  • Validation.