After few months of hard work from the REISS team, especially Peter Ward and Argyrios Gounaris, we finally have a nice search functionality in Sylius!
The biggest new thing in this release is the Search system, which supports both Doctrine ORM driver and ElasticSearch!
We have also done several improvements and even more “foundation” work for the REST API, which coming very soon. I have already configured it for one project, now it is about moving it to the core. Sneak Peak!
Until now, all Sylius stores running in production relied on the awesome Symfony2 ElasticSearch bundle.
As always, Sylius wants to make your life easier. Why would you need to do a lot of coding or pay (sic!) for a premium version in order to have powerful search?
From now on Sylius ships with SyliusSearchBundle, which can run on Doctrine ORM and ElasticSearch. In theory, we can add more drivers in the future, if community is interested in using Solr for example.
Obviously, the MySQL based solution is suitable for smaller stores, demo or just trying out Sylius locally without installing Java/ES.
Ok, so what the search can actually do?
Some of screenshots are from the new theme, which is a work in progress.
You can configure filters by price, options and attributes:
Of course, you can also search in a specific category:
Documentation for this component is a work in progress, but configuration is really simple, because we actually use ElasticaBundle config schema.
Please keep in mind, that there will be a lot of improvements to both architecture and functionality of Sylius search, but it is already a good starter for your e-commerce apps. Enjoy!
In the development branch v0.13.x, I will merge a very important PR, which brings localization support.
This is a big change and contains multiple BC breaks. On the other hand, you get translatable products, options, attributes and even shipping methods… out of the box!
We provide a migration script, which is smart enough to update you to the new system and maintain the data. That being said, you use it at your own risk, please be careful.
More about this feature in the upcoming release blog post.
You can install and try the latest Sylius by running the following commands:
$ composer create-project -s dev sylius/sylius:v0.12.0
$ cd sylius
$ app/console sylius:install
To start a new project on top of Sylius, use Standard Edition:
$ composer create-project -s dev sylius/sylius-standard:v0.12.0 acme
$ cd acme
$ app/console sylius:install
As usually, huge thank you to all contributors and stay tuned for more!