Product support

Visit this product's website for support.



Please, use the following credentials user:manager,password:manager for logging to the Dashboard.

New FREE Shopaholic Bootstrap Theme Available!

Free E-Commerce Bootstrap for Shopaholic theme is now available on October's marketplace. Check out the theme's live demo version. It demonstrates what you can build with Shopaholic and will soon have support for all our plugins and extensions. We will also constantly update it to cover all Shopaholic functionality.

Open to your Ideas!

Let us know if you have any questions, ideas or suggestions! Just drop a line at shopaholic@lovata.com

Live Demo

You can visit our Live Demo site. Sign in to backend using: login - manager, password - manager. You can deploy the demo site locally. To do so, you need to clone the repository, follow the steps from the "Installation guide", install the plugins. As a result, you will receive a copy of the demo site with a full database. Having a ready-made demo site example, you can easily learn how to operate the plugins.

Large Catalog Performance Live Demo

If you would like to know how our plugins perform with large catalogs of products, you can visit our Large Catalog Live Demo that has 21 000 products, 68 000 offers and 210 000 variations of property values.

Below are the performance characteristics for server setup: Dual Core CPU with 4GB of RAM.

For a catalog containing 210 products

Catalog page load time: 100-150 ms

Product list filtering time: 80-100 ms

For a catalog containing 21 000 products

Catalog page load time: 900-1100 ms

Product list filtering time: 500-600 ms


Please join us on #shopaholic channel in October CMS slack chat in order to have quick support on all our products. You will also get all newest updates and insights about our existing and upcoming products!

If you have any specific requests, suggestions or ideas please do not hesitate to send us a message, it will help us make our products even better.

If you don't have access to octobercms.slack.com, please register here

Required Plugins

Recommended Plugins

General information

The plugin extends Shopaholic plugin functionality and allows to:

  • Create tags, assign names and descriptions to them
  • Bind tags to a category of products
  • Bind products to a tag
  • Bind tags to a static URL of a filter

Using the plugin’s components it’s possible to: create a tag page, that displays the list of products binded to that tag; display a list of tags for a category of products; filter lists of products by tags.

Get involved and contribute to the project

If you’d like to help us improve the project, you can do so in the following ways:

You can also visit LOVATA’s GitHub page.


© 2018, LOVATA Software Development Company under Commercial License.

Developed by Andrey Kharanenka.

Tag form

The full plugin documentation is available here.

TagList component

The component allows to work with TagCollection class objects.

Method list

make($arElementIDList = null)

Example: render tag list

Get collection of tags, apply sorting + filter by flag "active" + filter by category ID

{% obCategory = CategoryPage.get() %}

{% set obTagList = TagList.make().sort().active().category(obCategory.id) %}
{% if obTagList.isNotEmpty() %}
    <div class="tag-list-wrapper">
        {% for obTag in obTagList %}
            <div data-id="{{ obTag.id }}">
                <h1>{{ obTag.name }}</h1>
                {% if obTag.preview_image is not empty %}
                    <img src="{{ obTag.preview_image.path }}" title="{{ obTag.preview_image.title }}" alt="{{ obTag.preview_image.alt }}">
                {% endif %}
                <div>{{ obTag.preview_text }}</div>
        {% endfor %}
{% endif %}

TagPage/TagData component

The component allows to work with TagItem class objects.

Usage example:

slug = "{{ :slug }}"

{# Get tag item #}
{% set obTag = TagPage.get() %}
<div data-id="{{ obTag.id }}">
    <h1>{{ obTag.name }}</h1>
    {% if obTag.preview_image is not empty %}
        <img src="{{ obTag.preview_image.path }}" title="{{ obTag.preview_image.title }}" alt="{{ obTag.preview_image.alt }}">
    {% endif %}
    <div>{{ obTag.description|raw }}</div>

Extension ProductCollection class

Tags for Shopaholic plugin adds method:


  • $iTagID - tag ID

Method applies a filter by the tag ID.

    $obList = ProductCollection::make()->tag(2);

Change lists method to pluck method. Thanks for contribution Nick Khaetsky.

Apr 05, 2022


Reduced count of database queries, if cache is empty. Requires Toolbox plugin version 1.32.0 and later.

May 02, 2021


Added composer.json to plugin

May 01, 2021


Added support svg files in image fields. Added settings for "default tag page". Added icon field.

Dec 29, 2020


Removed links to github wiki.

Mar 03, 2020


Removed index by slug field in migrations.

Feb 04, 2020


Added getPageUrl() method to TagItem class.

Dec 19, 2019


Added annotations for integration with Coupons for Shopaholic, Discounts for Shopaholic, Campaigns for Shopaholic plugins.

Oct 16, 2018


Update license file

Aug 07, 2018


Fix work with *Store classes in *Handler classes.

Jul 11, 2018


Add new store classes. Refactoring *Store, *Item, *Collection classes. Requires Toolbox plugin version 1.10.0 and later.

Jun 21, 2018


Add integration with Search for Shopaholic / Sphinx for Shopaholic plugins

Feb 23, 2018


!!! Adding additional cache cleaning for the sorted list of tags, after the creation of a new tag. Requires Toolbox plugin version 1.3.0 and later.

Jan 08, 2018


Initialize plugin.

Dec 08, 2017