Your 'Sale' category tells Google almost nothing about the product
'New In' is useful merchandising. 'Walking Boots' describes the product. Feed mapping needs to know which distinction you mean.
We use necessary cookies to make this site work. With your permission we also use Google Analytics to understand how the site is used and Google Ads cookies to measure which of our ads lead to purchases. You can accept all cookies, reject the optional ones or choose which ones to allow. Cookie policy
Choose which cookies you allow. Necessary cookies are always on because the shop cannot work without them. You can change your choice at any time with the "Cookie settings" link.
Needed for the basket, checkout, login and security. They do not track you.
Google Analytics: how many people visit, which pages they read and how they found the site. It sets the _ga cookies and sends usage data to Google.
Google Ads: measures which of our ads lead to a purchase. It sets the cookies _gcl_au and _gcl_aw (90 days) and, when you buy, sends Google the order details and a hashed form of your contact details for matching. See our cookie and privacy policies.
Bulk edit and mass update products from the Magento 2 product grid: prices, categories, websites, stock, attributes, links, images and more, run in batches with a preview, job log and undo.
One-off payment, with 12 months of updates.
No subscription or automatic renewal. Keep using the versions included in your update period. Update and licence details
Composer package commercegears/module-mass-product-actions
Change prices, stock and attributes right in the product grid or in bulk with a short form. No exports, spreadsheets or re-imports.
The old values are kept for each changed product, so a price change or category move can be reversed from the job log.
Every action has its own permission, and the job log shows who changed what, when and on how many products.
All features
Feature tour
01 / 06
Tick products in Catalog > Products, choose Edit in grid and change name, SKU, price, quantity, status or any attribute column in place. Enter saves, Esc cancels.
02 / 06
Tick products and choose Edit in grid. Fill a whole column with All in Column, or paste a column copied from a spreadsheet. Type +10 or +10% to change the current values.
03 / 06
Catalog > Products > Actions > More actions lists the extra actions. Magento's own actions stay as they are, and each admin only sees the actions their role allows.
04 / 06
Set, increase or decrease by an amount or a percentage, round to an ending such as .99, and press Preview to compare the current and new price before you apply.
05 / 06
Who started it, what it changed, and how many products were updated, skipped or failed. Grid edits list the old and new value of every changed cell.
06 / 06
Undo restores the values from before the job. The job page warns when later jobs changed the same fields of the same products.
Live demo
A full Magento store with the module installed, on Luma and on Hyvä. The admin demo signs you in with one click.
Compatibility
| Magento | 2.4.6 – 2.4.9 |
|---|---|
| Storefront themes | Luma Blank Hyvä |
| PHP | 8.2 – 8.5 |
| Latest version | 2.1.0 |
| composer.json requires | php ~8.2.0||~8.3.0||~8.4.0||~8.5.0 magento/framework ~103.0.6 commercegears/module-core ^2.0 free, installed by Composer with this module magento/module-backend * magento/module-catalog * magento/module-catalog-inventory * magento/module-catalog-rule * magento/module-catalog-search * magento/module-catalog-url-rewrite * magento/module-config * magento/module-configurable-product * magento/module-eav * magento/module-media-storage * magento/module-store * magento/module-ui * magento/module-url-rewrite * magento/module-user * |
Installation
After you buy, create a Composer key in your account. Then, in the root of your Magento project:
01Add the repository and your key (once per project)
composer config repositories.commercegears composer https://repo.commercegears.com composer config --auth http-basic.repo.commercegears.com PUBLIC_KEY PRIVATE_KEY
02Install the module
composer require commercegears/module-mass-product-actions
03Enable it
bin/magento setup:upgrade bin/magento setup:di:compile bin/magento setup:static-content:deploy bin/magento cache:flush
The last three are only needed in production mode.
Prefer a zip? Every version you are entitled to can be downloaded from My modules. More about Composer access
User guide
The user guide has its own page: how to install Mass Product Actions, what each option does and how to use it in your store. Written for version 2.1.0; a copy ships with the module.
Changelog
FAQ
Something else on your mind? The developers who wrote the module answer before and after you buy.
Ask a question →Already installed it? Open a support ticket
On Catalog > Products: tick the products, open Actions and then More actions. Each action opens a short form in a pop-up. Magento's own actions (Delete, Change status, Update attributes) are not changed.
Yes. In Catalog > Products tick one or more products and choose Actions > Edit in grid to edit them in place. By default clicking a row still opens the product page, as in Magento; to start editing with a click, set Stores > Configuration > CommerceGears > Mass Product Actions > Product Grid Editor > Clicking a Product Row to "Starts editing in the grid". Names, SKUs, prices, special prices and dates, cost, quantity, stock status, status, visibility, URL keys, meta fields and other text, number, date, dropdown and multiple select attributes can be edited. Press Enter or Save to save, Esc to cancel.
Yes. Every save from the grid is a job in the job log, with the old and new value of every changed cell, and Undo Job puts the old values back (including SKUs, stock and URL keys with their URL rewrites). The product page has a Change History button that lists the jobs that changed the product.
Choose a store view in the grid's Store View filter to edit that store view. Cells with a value of their own on the store view are marked. Typing the default value creates no store view value, and clearing a cell goes back to the default value. With All Store Views you edit the default values and store views keep their own values.
Yes. Open the rows with Edit in grid, click the first cell and paste a copied column (or block of columns): the values fill the rows downwards in the order shown. Dropdown cells accept the option label or its ID. Nothing is saved until you press Save, and invalid values are marked on their cell.
Yes. Type +10%, -10%, +5 or -5 in a price, special price or cost cell, and +5 or -5 for quantities. The result can be rounded to an ending such as .99 (setting Rounding for Relative Price Changes).
The grid sends the value each cell had when you loaded it. If the value has changed since, that cell is refused with the current value instead of overwriting the other change. Nothing is saved until every changed cell is valid.
Fifteen: update price, special price and cost; add, remove or replace categories; add to or remove from websites; change status by store view; change visibility; update stock; assign attribute value; change attribute set; related, up-sell and cross-sell links; copy custom options from a product; copy images from a product; duplicate products; append or replace text.
Yes, for update price, update special price, update cost and append or replace text. The Preview button shows the current and the new value for the first 10 selected products, or why a product would be skipped. Nothing is saved until you press Apply.
Yes, for 12 of the 15 actions: everything except copying custom options, copying images and duplicating. The module keeps the values from before the job for every changed product, and Undo Job on the job page puts them back. Undo overwrites later changes to the same fields of those products; the job page lists later jobs that touched the same fields, and the confirmation names them. Undo data is kept as long as the job (60 days by default).
Selections up to Run Immediately Up To (Products) (default 50) are updated straight away. Larger ones are queued and processed by cron in batches, in their own cron group so that other cron jobs are not held up. The job page shows the progress, and an interrupted job continues where it stopped.
Yes. Attribute changes go through Magento's own updateAttributes() (the same path as the native "Update attributes"), then the price, EAV, category, stock, flat, search and catalogue rule indexers are run for the changed products, or left to Magento when indexers are set to "Update by Schedule". The page cache is cleaned for those products.
Status, visibility and attribute values can be set for all store views or for one. Global attributes (for example the price with catalogue price scope "Global") are always written to all store views, and website-scope attributes apply to all store views of that website, as in Magento itself. You can also remove store-view values so the default value applies again.
Yes. Every action has its own permission under CommerceGears > Mass Product Actions > Run Mass Actions, plus permissions for the job log, cancelling and deleting jobs, undo and the settings. The More actions menu only lists what the user may run. Assigning price attributes also needs the matching price permission, and design attributes need Magento's "Edit Product Design" permission. Editing in the grid has its own permission, with separate permissions for prices, for quantity and stock status, and for SKU and URL key; other columns stay read-only.
Only with the default stock. Update stock and the Quantity and Stock Status cells of the grid change the default stock quantity and status; quantities per source are not supported.
Adobe Commerce content staging (scheduled updates with row versions) is not supported, so the module is meant for Magento Open Source 2.4.6 to 2.4.9.
No. It only adds admin features. Products you change behave on Luma, Hyvä or any other theme exactly as if you had edited them in the product form.
Yes: bin/magento commercegears:mass-actions:process processes queued jobs straight away (also one job with --job), and bin/magento commercegears:mass-actions:jobs lists recent jobs.
Support
From the blog
'New In' is useful merchandising. 'Walking Boots' describes the product. Feed mapping needs to know which distinction you mean.
Bulk price changes are easy to start and expensive to get wrong. Check the selected products, price scope and undo behaviour before running the job.
The admin price still says £89. The customer paid £69. Check the price source before looking for the person who changed it.