Blog Sections Open

Managing a Large Shopkeeper Catalog Without Losing Editor Control

A practical look at keeping a Shopkeeper catalog usable when the product count is already in the thousands.

Once a Shopkeeper catalog grows beyond a few hundred products, the problem usually stops being "can the store work" and becomes "can editors still manage it without breaking everything." The original note behind this post was short, but the pain point is familiar: a project running on Evolution CMS 1.0.10 and Shopkeeper 1.3.4 had already crossed roughly 3,000 products, and routine catalog work had become hard to keep under control.

What starts to break first

In this kind of store the first bottleneck is rarely the template itself. It is usually one of these:

  • prices and stock values have to be updated too often by hand
  • catalog navigation becomes hard to reason about for editors
  • TV-heavy product templates become fragile and inconsistent
  • the storefront keeps working, but catalog maintenance slows down every other task

A more stable way to think about the catalog

For large Shopkeeper installations, it helps to treat Evolution CMS as the editorial and routing layer, not as the place where every inventory rule lives. Keep the public product pages in Evo, but move repetitive operational data into a structure that can be updated safely and in batches.

In practice that usually means:

  • keeping product structure predictable: one template, a stable set of TVs, and clear parent sections
  • separating marketing text from numeric catalog data wherever possible
  • avoiding ad-hoc editor workflows for bulk changes
  • using import or sync logic for fields that change often

When Shopkeeper still makes sense

Shopkeeper remains a good fit when the project needs a lightweight Evolution-native commerce layer and the editorial team already understands Evo resources, TVs, and template-driven storefronts. It becomes much harder to maintain only when the project expects ERP-like catalog behavior without a proper import or synchronization layer.

Recommendation

If your store is already in the low thousands of products, do not wait for the manager UI to become painful. Normalize the product model early, define which fields are edited manually and which come from imports, and reduce the number of places where the same commercial data can be changed. That is usually the difference between a Shopkeeper store that stays manageable and one that turns into a daily cleanup job.

Newer post

Building AJAX Catalog Filters with tagManager and getPage

A practical pattern for building AJAX-driven catalog filters in Evolution CMS with tagManager, custom templates, and getPage pagination.

Older post

Building Inline Help with jQuery UI Tooltips

A lightweight frontend pattern for inline help icons and hidden helper text using jQuery UI tooltip positioning.