Skip to content
Ryan Hewitt edited this page Aug 10, 2023 · 10 revisions

What is Community Store?

Community Store is a free and open-source online shop/cart add-on for the content management system Concrete CMS.

The add-on includes common online shop components such as a shopping cart, product lists, a checkout mechanism and ways to track orders. It is not a stand-alone system - it integrates tightly with Concrete CMS, with blocks and pages uses to present products.

There is a 'core' Community Store package, which can then be expanded with further add-ons. Therefore the concrete5-community-store organisation contains multiple projects - https://github.com/concretecms-community-store

What are its goals?

Community Store aims:

  • To be richly featured and able to be used to solve a variety of ecommerce related purposes, providing a high level of flexibility. The add-on could also be seen as ecommerce 'toolkit' for Concrete CMS.
  • To present sensible defaults but not insist on any particular shop configuration or layout
  • To have all interface components be compatible with Concrete CMS's default 'Elemental' theme
  • To be easy for developers to override/customise, for use with custom themes/projects
  • To able to be extended easily, through further add-ons or the store's event hooks
  • To cleanly written code, adhering to both PHP and Concrete CMS's best practices
  • To quickly address bugs when discovered and provide a clean upgrade process
  • To operate on PHP5.4 to PHP7
  • To be fully translatable
  • To be well documented, with real code examples where possible

Who is it for?

Primarily this add-on has been developed for use by website developers who are already familiar with concrete5 and ecommerce concepts.

This is not to say it can't be used by someone new to Concrete CMS, it is more a suggestion that is has been developed in response to the need for a fully featured and flexible ecommerce platform for concrete5.7, rather than as a starting point for newcomers.

If you have never used Concrete CMS before or have never set up an online shop before, you may simply find the process of setting up a shop solution more comfortable with a hosted service such as Shopify or eBay.

Please just be aware and consider the risks of using software that will continue to evolve over time, to address found bugs and add new features. If you aren't at least comfortable with doing manual add-on updates for Concrete CMS, or taking backups of your site than you probably should consider using a different solution, or at least engaging a Concrete CMS developer who can assist you.

Who is developing it?

Multiple members of the Concrete CMS community are continuing the development of this add-on, members that experienced with Concrete CMS development and best practices. These members are assisting on a voluntary basis.

Can it be used now, in 'production'?

In short, yes - the code base is now stable, with most features working well. It does offer a complete online shop experience, including the ability to process transactions via Stripe and Paypal.

It is always recommended however that you fully test all aspects of your shop configuration before going live. Any issues or bugs at this point are likely to be minor and quick to resolve.

Why isn't this on the marketplace?

As this is a community developed and managed project primarily intended for use by Concrete CMS developers, there is no intention or plan to provide this add-on directly via the Concrete CMS marketplace.

Is this affiliated with Concrete CMS?

This is a community developed project that is not directly affiliated with Concrete CMS/portlandlabs. The use of the word 'Concrete CMS' throughout the project's documentation is simply in reference to the project being a Concrete CMS add-on.

Is this supported?

Being a free add-on there is no official support as such. If you need support, it is recommended that you engage a Concrete CMS developer, to assist with any issues you encounter. However, being a community project you may be able to find answers an assistance from the community - forums, chat rooms, etc.

If you decide to raise an issue on github to seek assistance, please only do so if you:

  • Believe you have found a bug
  • Or, you have exhausted your investigation into your issue
  • Or, you believe instructions are unclear or incorrect and this is causing confusion
  • Or, you believe your discussion will help the broader community into the future

Please include detail as to what you are experiencing, including error messages and what you done to try to resolve the issue. Remember that the issues list on github is NOT a support forum - it is a way to track bugs, issues and feature development within the project.