Everything you'd want to know before you install.
A detailed look at how DataFirefly Product Positions — Drag & drop categories for PrestaShop 8 works, why we built it the way we did, and the thinking behind the features above.
Merchandising drives 30% of category conversion
When a visitor opens a category in your store, the first 4 to 6 products generate the bulk of the revenue. What you show first is what you sell. Yet on native PrestaShop, controlling product order in a category is tedious: you have to edit each product page, change its position, and start over. For a store with 200 products in a main category, that's hours of manual work for every seasonal reorganization. DataFirefly Product Positions removes this friction and turns merchandising into a visual gesture — like rearranging cards on a desk.
Drag & drop: move a product in one second
The interface displays the products of the selected category as a grid (thumbnail, name, reference, price, stock). Click and hold a product, drag to its new position, done. The save happens in the background via AJAX — no "Save" button to click, no page reload. The reordering is reflected in the front office immediately, for the next visitor.
Auto-sort: 8 criteria, ascending or descending
For high-volume categories, drag & drop remains tedious. So the module ships an auto-sort system: pick a criterion (name, price, stock, sales, reference, date added) and an order (ascending or descending), click Apply, and the entire category is reorganized. Two bonus options: reverse sort (handy to put recent products first without having to know the dates) and random sort (to refresh the look of a category without changing the catalog). A "Apply to subcategories" checkbox lets you propagate the sort to an entire branch in a single operation.
Architecture and multi-store compatibility
The module only writes to the standard category_product table (and category_product_shop in multi-store mode). No additional tables, no data duplication, no synchronization to maintain. On uninstall, nothing remains: current positions persist (since they are native PrestaShop positions), but the interface and admin tab are removed cleanly. The shop selector at the top of the screen lets you, in multi-store mode, configure different positions for each sub-shop — useful when your FR and EN storefronts need to highlight different products at the top of a category.
Performance and security
All AJAX requests are protected by the native PrestaShop admin token (Tools::getAdminTokenLite) — no public endpoint, no access without valid admin authentication. SQL queries use INNER JOIN with category_shop to load only products actually present in the active shop: no data leak between shops. Pagination is intentionally disabled (all products of a category are loaded at once) because the typical use case is to see the full ordering. For very large categories (1,000+ products), the module remains fluid thanks to virtualized front-end rendering.
Typical use cases
Seasonal highlight (Christmas, sales, back-to-school): sort by ascending stock to clear end-of-line products at the top of the category. New collection launch: sort by date added descending to expose new arrivals. Strategic commercial category: manual drag & drop of the 6 hero products into the first positions, then auto-sort the rest by descending sales. Visual refresh without changing the catalog: monthly random sort to vary the appearance of a category for returning visitors.
Reviews
There are no reviews yet.