dfbulkcategory — Bulk category assignment
Installation, bulk actions usage, multistore management, PrestaShop 9 compatibility and troubleshooting for the dfbulkcategory module.
Overview
dfbulkcategory adds two bulk actions to the PrestaShop back-office product list: Add to category and Remove from category. Select your products with the native checkboxes, pick one or more categories in a modal with a searchable tree, confirm — the operation runs via AJAX with no page reload.
The module supports PrestaShop 8.0.0 through 9.99.99 and works in multistore mode. It creates no SQL table and modifies no core file.
Installation
- Download the module ZIP file from your DataFirefly account.
- In the PrestaShop back office, go to Modules → Module Manager → Upload a module.
- Drag and drop the
dfbulkcategory.zipfile and confirm. - The module is ready immediately: no configuration is required.
On installation, the module registers a hidden admin tab required by PrestaShop 9 access control. No visible entry is added to your back-office menu.
Upgrading from version 1.0.0
Simply replace the module with the new version via Upload a module (or the Update button). An upgrade script runs automatically and installs the admin tab required by PrestaShop 9 on existing installations. No manual action is needed.
Usage
Adding products to categories
- Open Catalog → Products.
- Check the products to update (the header checkbox selects the whole page).
- Open the Bulk actions menu and click Add to category.
- In the modal, check one or more categories in the tree, then click Apply.
Checked categories are added to each product’s existing categories — nothing is overwritten.
Removing products from categories
Same principle with the modal’s Remove from category tab. Checked categories are removed from each selected product.
A product’s default category is never removed: if it is among the categories to remove, the module automatically keeps it so the product always retains a main category.
Combined mode (add and remove in one operation)
The Both tab shows two side-by-side panels: categories to add on the left, categories to remove on the right. It is the ideal mode for moving products from one category to another in a single confirmation.
Tree search and navigation
The search field filters the tree in real time and automatically expands branches containing results. The Expand all and Collapse all buttons make navigating large trees fast.
Disabled categories
By default, only active categories are displayed. Toggle Show disabled categories at the top of the modal to include them — useful during a catalogue restructuring. Disabled categories are marked with a badge.
Multistore
Each operation runs in the context of the store active in the back office:
- The category tree displayed is the current store’s tree.
- The module verifies that each selected product belongs to that store before any modification.
- Category associations of other stores are not affected.
In “All shops” context, first pick a specific store in the multistore selector to correctly target the associations.
PrestaShop 9 compatibility
Since version 1.1.0, the module is fully PrestaShop 9 compatible:
- AJAX URLs are generated server-side following the mechanism expected by PrestaShop 9 (token included).
- A hidden admin tab is registered to satisfy the stricter access control — non-superadmin employees can use the module as long as they have catalog access.
- Behaviour on PrestaShop 8.0, 8.1 and 8.2 is unchanged.
Troubleshooting
The buttons do not appear in the Bulk actions menu
Clear the PrestaShop cache (Advanced Parameters → Performance → Clear cache) and reload the products page with Ctrl+F5. Also verify that the module is installed and enabled in the Module Manager.
“Access denied” error when applying
On PrestaShop 9, this error usually indicates the module’s admin tab is missing (installation older than 1.1.0). Reinstall the module or apply the update: the upgrade script recreates the tab automatically.
A product was not updated
The result message details skipped products. Usual causes: the product is not associated with the active store (multistore), or it was deleted between selection and confirmation.
Changelog
1.1.0 — July 2, 2026
- PrestaShop 9 compatibility (supported range: 8.0.0 — 9.99.99)
- AJAX URLs generated server-side (PS9 compliant)
- Hidden admin tab registered on install for PrestaShop 9 access control
- Automatic upgrade script for existing 1.0.0 installations
- Category labels now always filtered per store
- Error messages rendered safely in the modal
1.0.0 — February 11, 2026
- First public release
- Add / Remove bulk actions in the product list
- Modal with category tree, real-time search, combined mode
- Disabled categories option, multistore management, default category preservation