1. We work on stable, supported and up-to-date versions of packages. We recommend you to do the same.
$ composer require bitbag/cms-plugin --no-scripts
return [
...
BitBag\SyliusCmsPlugin\BitBagSyliusCmsPlugin::class => ['all' => true],
];
The plugin supports two WYSIWYG editors: FOS CKEditor by default and Trix as an alternative.
You can choose which one you want to use by following one of the guides below:
# config/packages/_sylius.yaml
imports:
...
- { resource: "@BitBagSyliusCmsPlugin/Resources/config/config.yml" }
# config/routes.yaml
...
bitbag_sylius_cms_plugin:
resource: "@BitBagSyliusCmsPlugin/Resources/config/routing.yml"
If You have installed https://github.com/stefandoorn/sitemap-plugin according to its installation instructions import optional sitemap providers:
# config/services.yaml
...
imports:
...
- { resource: "@BitBagSyliusCmsPlugin/Resources/config/services/sitemap_provider.yml" }
and plugin dependency to your config/bundles.php
file:
return [
...
SitemapPlugin\SitemapPlugin::class => ['all' => true], // Sitemap support
];
you will probably need to change the extension of the imported file in
# config/packages/sitemap_plugin.yaml
imports:
- { resource: "@SitemapPlugin/Resources/config/config.yaml" }
$ bin/console cache:clear
# If you used migrations in your project...
$ bin/console doctrine:migrations:migrate
# ... or if you use doctrine schema tool.
$ bin/console doctrine:schema:update --dump-sql # and --force switch when you're ready :)
$ bin/console assets:install --symlink
$ bin/console sylius:theme:assets:install --symlink
Note. In some cases, the --symlink
option may throw some errors. If you consider running the commands without the --symlink
option, please keep in mind to run them on every potential plugin update.
We recommend you to use Webpack (Encore), for which we have prepared four different instructions on how to add this plugin's assets to your project:
- Import webpack config*
- Add entry to existing config)
- Import entries in your entry.js files)
- Your own custom config)
* Default option for plugin development
However, if you are not using Webpack, here are instructions on how to add optimized and compressed assets directly to your project templates:
In order to make plugin finally work you need to declare "route", in admin _scripts.html.twig you can pass:
<script>
const route = "{{ path('bitbag_sylius_cms_plugin_admin_ajax_media_by_name_phrase')|escape('js') }}";
</script>
Any other approach, that will allow cms pages to read this value in js, under "route" key, will work.
$ composer install
$ cd tests/Application
Copy file package.json.~1.XX.0.dist
to package.json
where ~1.XX.0
is the Sylius version you are using.
$ cp package.json.~1.12.0.dist package.json
$ yarn install
$ yarn encore dev
$ APP_ENV=test bin/console assets:install
$ APP_ENV=test bin/console doctrine:schema:create
$ APP_ENV=test symfony server:start --port=8080 -d
$ cd ../..
$ open http://localhost:8080
$ vendor/bin/behat
$ vendor/bin/phpspec run