CoreShop 2.0.0-beta.1 released


Morning guys,

We finally did it. CoreShop 2.0.0-beta.1 was released yesterday. After thousands of commits, it is finally done.

Thanks a lot to to all contributors. Specially @solverat :slight_smile:

Check it out on Github: (Feel free to leave a star :slight_smile:)

:beers: :tada:



Hello Dominik,

congratulations on this release from the Pimcore core team!

We’d like to take this opportunity to appreciate that you are so very active in the forum in a positive way. You contribute significantly to the ecosystem and your product works quite well. Thank you very much :slight_smile: for being such a great contributor.

With Pimcore 5 there is also an integrated eCommerce framework:

CoreShop might be a viable alternative for some use cases though!


Congratz! Our people love this!



I am happy to announce that we released CoreShop 2.0.0-beta.2. This release includes a lot of bug-fixes and technical dept fixes, as well as some new very cool and useful features like:

CoreShop Support for Link Generators and Routes in one Twig Helper

{{ coreshop_path(product) }}
{{ coreshop_path(product, 'coreshop_product_detail') }}
{{ coreshop_path('coreshop_index') }}

CoreShop parses the parameters and checks for a object and a valid Link Generator, otherwise it falls back to symfony router

Twig Helper for Pimcore Object Link Generator URLs
{{ object_link(product, {'param1': 'param'}) }}

CoreShop checks for a link-generator, if not found it throws an exception

Define MySQL Indices for Indexes and Filters in Backend
This allows you to have faster indexes than ever!

Pimcore Twig Helpers

{% if asset is asset_image %}
{% if asset is asset_archive %}
{% object is object_class('CoreShopProduct') %}
{% document is document_page %}

Symfony Expression Language for Pimcore Placeholders

%Expression(expression, {'expression' : 'parameter(\'kernel.environment\')'});
%Expression(expression, {'expression' : 'object(1).getProperty(\'test\')'});
%Expression(product, {'expression' : 'value.getProperty(\'test\')'});
%Expression(expression, {'expression' : 'service(\'coreshop.money_formatter\').format(100, \'EUR\', \'en\')'});

This can be used inside Mail Templates or in Plugins like Import-Definitions.

Embedded Object Classes

This allows for more complex class structures like: Tour -> TourDestination -> TourDestinationServiceProvider. It creates actually a tree like this:

  - tour
     - destination1
          - serviceProvider1
     - destination2
          - serviceProvider2
     - destination3
          - serviceProvider3
          - serviceProvider4

The api looks the same as if you would use a multihrefrelation:



Most of these features are useable without install the whole CoreShop Suite. Checkout (, for example.

If you have any further questions, don’t hesitate to ask or join our Gitter channel



I am happy to announce that we released CoreShop 2.0.0-beta.3. This release includes a lot of bug fixes and performance enhancements. This release mainly focused on stability and paves the way to a stable 2.0.0 release.

Enjoy and have fun.