monsieurbiz/sylius-settings-plugin

Add a settings panel to your Sylius.

Installs: 2 830

Dependents: 1

Suggesters: 0

Security: 0

Stars: 12

Watchers: 3

Forks: 4

Open Issues: 1

Type:sylius-plugin

v1.0.1 2021-06-18 12:37 UTC

This package is auto-updated.

Last update: 2021-06-18 12:39:05 UTC


README

Monsieur Biz logo      Sylius logo
Monsieur Biz is a Sylius Extension Artisan partner

Settings for Sylius

Settings Plugin license Tests Packagist Version (including pre-releases)

This plugin gives you the ability to have Plugins oriented settings in your favorite e-commerce platform, Sylius.

Screenshot of the admin panel in Settings section

Installation

A few steps to start:

  • Require the plugin via composer
    composer require monsieurbiz/sylius-settings-plugin="@rc" --no-scripts
  • Edit the config/bundles.php to add this line
    MonsieurBiz\SyliusSettingsPlugin\MonsieurBizSyliusSettingsPlugin::class => ['all' => true],
  • Copy the config
    cp -Rv vendor/monsieurbiz/sylius-settings-plugin/recipes/1.0-dev/config/ config
  • Run the diff in your migrations
    bin/console doctrine:migration:diff
  • Execute the migrations
    bin/console doctrine:migration:migrate
  • Continue to "How it works".

Note: you may encounter an error during the installation via composer if you let it run the scripts.
Copy the configuration files and rerun the composer require, it should work. This is due to the use of other plugins in the DI. The configuration is then required to run any console command.

How it works

As a good start you can have a look at:

Then you can get your settings using a twig function: setting().
Have a look at this example.

You can also use the DI to get your Settings, as example with the settings in the test Application app.default:

$ ./bin/console debug:container | grep app.settings.default
  MonsieurBiz\SyliusSettingsPlugin\Settings\Settings $defaultSettings                    alias for "app.settings.default"
  MonsieurBiz\SyliusSettingsPlugin\Settings\SettingsInterface $defaultSettings           alias for "app.settings.default"
  app.settings.default                                                                   MonsieurBiz\SyliusSettingsPlugin\Settings\Settings

Note: the "Settings" menu won't appear until you have at least one setting.

Contributing

You can find a way to run the plugin without effort in the file DEVELOPMENT.md.

Then you can open an issue or a Pull Request if you want! 😘
Thank you!

License

This plugin is completely free and released under the MIT License.