BEAR - WooCommerce Bulk Editor and Products Manager Professional

Upgrade the WooCommerce bulk editor from free to pro: a clean switch

The free and the full version of BEAR are two builds of the same plugin, not a free plugin with an add-on on top. Nothing inside the free copy gets unlocked: to upgrade the WooCommerce bulk editor from free to pro, you replace one build with the other. The two cannot run side by side. Done in the right order, the switch takes a minute and keeps your settings and your History. Done in the wrong order, it ends in a Cannot redeclare fatal error, in an empty History, or in an editor that still behaves like the free version.

How the free and the full version relate

Both builds are the same code. They declare the same PHP classes and functions (WOOBE, WOOBE_STORAGE, a set of woobe_ functions), read the same settings from the database and write to the same History tables. The free build has a switch that limits it, and the limits are also the easiest way to tell which build is running:

  • the editor shows 10 products per page, whatever the setting says;
  • the Help tab says Current version of the plugin is FREE, and the editor header has an Upgrade button;
  • the History tab says that 2 last operations can be rolled back, and the Meta Fields tab allows 2 meta fields;
  • in the Bulk Edit tab, many fields sit in red containers without the select it to use checkbox; among taxonomies only categories and one attribute can be edited;
  • on the Plugins screen, the plugin's row has a Go Pro! link.

The current packages of both builds use the same plugin folder, wp-content/plugins/woo-bulk-editor. That is what makes a clean replacement possible. Older packages of the full version used woocommerce-bulk-editor, which is how many sites ended up with two copies installed at once.

Upgrade the bulk editor from free to pro in place

This is the recommended way, because nothing is deleted and no uninstall routine runs.

  1. Take the plugin zip of the full version: woo-bulk-editor.zip. If the file you have contains other files and folders, unpack it and use the zip inside. Uploading the outer archive ends with The package could not be installed. No valid plugins were found., as explained in the install error FAQ.
  2. In WordPress go to Plugins → Add New Plugin → Upload Plugin, choose the zip and press Install Now. The free version can stay active.
  3. WordPress finds the folder already in place and shows This plugin is already installed. with a table comparing the current and the uploaded plugin. Check the uploaded name and version, then press Replace current with uploaded.
  4. WordPress swaps the files in the same folder. An active plugin stays active; if it was inactive, press Activate Plugin.
  5. Open Products → BEAR Bulk Editor and reload the page once.

Your column settings and profiles, saved filters, attached meta fields, shop manager permissions and global options are all kept, and so is History. One detail about History: the free build itself keeps only the last two single edits and the last two bulk operations of each user and deletes older rows, so older entries were already gone before the switch. From now on History keeps everything, as described in the History documentation.

Removing the free version first: what is kept and what is lost

The other common route is Plugins → Deactivate → Delete for the free version, then uploading and activating the full one. It works, with one cost. Deleting the plugin from the Plugins screen runs its uninstall routine, which:

  • drops the two History tables, so History starts empty;
  • removes the editor's working memory of each user (the current filter and similar state), so the editor opens without a filter.

It does not touch the settings: columns, profiles, meta fields, permissions and global options are stored separately and are in place when the full version is activated. If History matters to you, use the in-place replacement above, or remove the free version's folder over FTP or the hosting file manager instead of using Delete: removing the folder does not run the uninstall routine.

"Cannot redeclare" and "Cannot declare class" fatal errors

Messages such as these all mean the same thing: two copies of BEAR are installed in different folders, and PHP met the same function or class twice.

Fatal error: Cannot redeclare woobe_init_translates() (previously declared in .../plugins/woo-bulk-editor/index.php...)
Fatal error: Cannot redeclare function woobe_uninstall_cleanup() (previously declared in ...)
Fatal error: Cannot declare class WOOBE_STORAGE, because the name is already in use in .../lib/storage.php

The name in the message depends on the versions of the two copies (older ones fail on woobe_init_translates, current ones on woobe_uninstall_cleanup), not on anything you can configure. The fix is always to keep one copy.

The full version could not be activated

If WordPress says Plugin could not be activated because it triggered a fatal error, nothing is broken yet: WordPress tested the plugin and refused it. Go to the Plugins screen, where BEAR is now listed twice, and keep only the copy you just uploaded:

  1. Deactivate every BEAR copy.
  2. Remove the other copy: delete its folder over FTP or the file manager to keep History, or press Delete on the Plugins screen if History does not matter (see the previous section).
  3. Activate the remaining copy.

The whole site shows "There has been a critical error"

This happens when both copies became active in a way WordPress could not test, for example after one of them was updated. WordPress emails the site administrator a link to recovery mode, where the Plugins screen works again. Without that email, open wp-content/plugins over FTP or the hosting file manager and rename the folder of the copy you do not want, for example to woocommerce-bulk-editor-off. The site loads again, and the Plugins screen reports that the plugin was deactivated because its file does not exist. Then remove that copy as described above.

The free version keeps showing after the switch

Check the signs from the first section. If the editor still shows 10 rows per page and the Help tab still says FREE, the free code is still the code that runs. The usual reasons:

  • The replacement did not happen. Cancel and go back was pressed on the comparison screen, or the uploaded zip was the free build again. The comparison table shows the name and version of both; upload the right zip and choose Replace current with uploaded.
  • Two copies are installed and the free one runs. The Plugins screen lists BEAR twice, or an admin notice starting with Hello, looks like you bought and installed premium version of BEAR asks you to deactivate the free version. When two copies are active and no fatal error stops them, the copy loaded first runs and the other one stands down with that notice. Keep only the full copy, as described above.
  • The browser shows an old page. Reload the editor with a hard refresh; resetting the page cache in the browser lists the keys for each browser.
  • The server runs old PHP files. Some hosts keep compiled PHP in memory without checking whether files changed. If the files on disk are new but the behaviour is old, clear the PHP cache (OPcache) in the hosting panel or ask the host to restart PHP.

Later updates and a short checklist

Later versions of the full build install the same way: upload the new woo-bulk-editor.zip and choose Replace current with uploaded. The comparison table is a useful last check that you are replacing the installed version with a newer full build and not with the free one.

  • One BEAR entry on the Plugins screen, active, with no Go Pro! link.
  • The editor pages through more than 10 products when you ask for more, and the Help tab no longer says FREE.
  • Your columns, filters and meta fields are where you left them.
  • History shows your earlier operations if you replaced in place, or starts empty if you deleted the free version first.

If the switch still does not go through, open a topic on the BEAR support forum with the exact error message, the list of BEAR folders in wp-content/plugins and the versions shown on the Plugins screen.