Theme Compatibility & Widget

Supported out of the box

  • Classic and every classic-based theme (the vast majority of themes on the market)
  • Hummingbird (PrestaShop 9’s new default theme)

The module hooks into the standard product-page and product-miniature hooks and anchors stickers to the product image server-side — no JavaScript involved, no flicker, works even with JS disabled.

After switching themes: stickers gone from listings?

When you enable a theme, PrestaShop re-assigns hooks according to the theme’s own configuration — this can silently unhook modules (hummingbird does it to the listing hook). The module heals itself: just open its configuration page once and the lost hooks are restored automatically, with a confirmation message telling you what was repaired.

So the checklist after a theme switch is one line: open the module’s Configure page.

Custom / non-standard themes

If your theme doesn’t display stickers (or shows them oddly), you have two tools:

1. The widget snippet

Paste this in your theme’s product templates (product.tpl and the product miniature), wherever you want stickers to render:

{widget name='appiapp_sticker' product=$product}

This is the PrestaShop-native equivalent of a shortcode: it works in any template, regardless of which hooks the theme implements.

2. Theme compatibility mode

A switch in the module settings that loads a tiny (~1 KB, deferred) script which re-anchors stickers to the product image on the client:

  • covers AJAX-updated product lists (faceted search filtering), which server-side rendering cannot reach;
  • covers widget usage on custom pages.

Leave it off unless you need one of those cases — the default setup ships zero front-office JavaScript.

For theme developers

Stickers render as one absolutely-positioned stack per position (.appiapp-stack.appiapp-sticker-{position}) inside the product image container (.product-cover, .carousel-inner, .thumbnail-container, … depending on context). The container is given position: relative if it doesn’t have it. You can restyle everything via the .appiapp-* class family or per-sticker custom CSS classes set in the back office.