What activating a plugin from cPanel actually changes
Activation is one row in the WordPress database, not a file you upload. WordPress keeps the list of active plugins in wp_options under the option name active_plugins, as a serialized array of main-file paths. Every cPanel route that switches a plugin on is writing that array.
- Installed means the folder exists in
wp-content/plugins, and WordPress loads none of it yet. - Active means the plugin's main file, such as
akismet/akismet.php, is listed insideactive_plugins. - cPanel has three writers for that row: WP-CLI in Terminal, the Plugins tab in WP Toolkit, and phpMyAdmin.
Uploading files through File Manager or FTP only installs a plugin. If a guide stops at dropping a folder into wp-content/plugins, it has finished the install and skipped activation. On cPanel hosting all three writers sit behind the same login.
Activate a plugin with WP-CLI in cPanel Terminal
Terminal plus WP-CLI is the shortest route, and it prints a result you can read. Use it when the account has shell access and cPanel shows the Terminal icon under Advanced.
- In cPanel open Advanced, then Terminal.
- Change to the folder that holds
wp-config.php:cd ~/public_html. If WordPress lives in a subfolder, cd into that folder instead. - Run
wp plugin list. The name column is the slug you activate, which is often not the plugin's display name. - Run
wp plugin activate akismet, replacingakismetwith that slug. - Read it back with
wp plugin list --status=active.
You know it worked when the last command prints the plugin with status active and the site loads without a blank page. If a caching plugin is running, clear the WordPress cache before you judge the front end.
Common failure: Error: This does not seem to be a WordPress installation. You are in the wrong directory. Run ls wp-config.php to confirm the folder, then cd again. If Terminal answers wp: command not found, the host has not enabled WP-CLI for shell users; use WP Toolkit or phpMyAdmin instead.
Activate a plugin from WP Toolkit in cPanel
WP Toolkit is cPanel's own WordPress manager, and its Plugins tab toggles activation without shell or SQL. The host has to enable it, so the icon is missing on some accounts.
- In cPanel open Domains, then WP Toolkit.
- Select the site you want to change.
- Open the Plugins tab and find the plugin row.
- Switch the plugin on, then reload the tab.
You know it worked when the row still reads Active after the reload and /wp-admin/plugins.php shows the plugin switched on. If the WP Toolkit icon is absent, that is a server feature setting rather than a fault on your site; email support instead of hunting for an installer.
Activate a plugin in phpMyAdmin without shell access
phpMyAdmin is the route when Terminal is missing and WP Toolkit is not enabled. It writes the same row by hand, and the serialized format is unforgiving: every path carries its own character count.
- Open
wp-config.phpin File Manager and note$table_prefix. It is usuallywp_, and many installs use something else. - In cPanel open Databases, then phpMyAdmin, and select the WordPress database.
- Open the options table, for example
wp_options, and find the row whoseoption_nameisactive_plugins. - Click Edit on that row and read
option_value. One active plugin readsa:1:{i:0;s:19:"akismet/akismet.php";}. - To add a second, keep that entry and append
i:1;s:27:"woocommerce/woocommerce.php";inside the braces, then change the leadinga:1toa:2. - Save, then reload
/wp-admin/plugins.php.
The number after s: is the exact character count of the path in quotes. akismet/akismet.php is 19 characters, so it is written s:19. One character out and WordPress cannot read the array.
Why a wrong count wipes the whole plugin list
WordPress unserializes the value before it trusts it. When the declared length and the real string disagree, the read fails and the option comes back empty, so every plugin looks deactivated at once. That is the usual cause of a plugin list that empties itself after a database edit.
The repair is to stop hand-editing lengths. Restore the option from a database export, or set the value to the empty array a:0:{}, log in to wp-admin, and activate plugins from the Plugins screen where WordPress writes the serialization for you. Take a fresh database export before the next attempt.
Deactivate every plugin from cPanel during a lockout
White screens and a dead wp-admin login are usually a plugin conflict, so switch all plugins off first and bring them back one at a time.
- With Terminal, run
wp plugin deactivate --allin the WordPress folder. - Without Terminal, set
active_pluginstoa:0:{}in phpMyAdmin. - Load the site and wp-admin. If both return, a plugin was the cause.
- Activate one plugin, reload, and repeat until the fault comes back. The plugin that breaks the page is the one to replace.
You know it worked when wp-admin opens and the Plugins screen lists every plugin as inactive. If the site still fails with the array empty, the fault sits in the theme or in core, and WordPress error logs are the next place to look.
When to email support instead of editing the database
Email support@webji.services when phpMyAdmin will not open, the options table has no active_plugins row, or the site still fails with every plugin switched off. Say whether Terminal worked and paste the exact command and its output; that is faster to act on than a description.
Support is 24/7 by email in Hindi and English, with an average first reply under 60 minutes. The office phone is not a support line. Every WebJi® Linux plan includes cPanel with Terminal and phpMyAdmin, on WordPress hosting from the L-Basic rate of ₹300 a month before 18% GST.
Frequently Asked Questions
How do I activate a WordPress plugin from cPanel?
Activation means adding the plugin's main file to the active_plugins row in wp_options. In cPanel open Advanced, then Terminal, run cd ~/public_html, then wp plugin activate plugin-slug, and read it back with wp plugin list --status=active.
Can I activate a plugin without wp-admin access?
Yes. Use WP-CLI in cPanel Terminal, the Plugins tab in WP Toolkit under Domains, or phpMyAdmin to edit the active_plugins row. None of the three needs a working wp-admin login, which is why they are used during a lockout.
What is the correct active_plugins value in phpMyAdmin?
It is a serialized array of main-file paths, such as a:1:{i:0;s:19:"akismet/akismet.php";}. The number after s: counts every character of the path, here 19. Add a second plugin as i:1, then change a:1 to a:2.
Why did my plugins disappear after editing the database?
A wrong character count makes WordPress fail to read the serialized value, and it treats active_plugins as empty. Restore the option from a database backup, or set it to a:0:{} and activate plugins again from the Plugins screen.
How do I deactivate all plugins from cPanel?
Run wp plugin deactivate --all in the WordPress folder from cPanel Terminal. Without Terminal, set active_plugins to a:0:{} in phpMyAdmin, reload wp-admin, then switch plugins back on one at a time.
Does uploading a plugin folder activate it?
No. A folder in wp-content/plugins only installs the plugin. WordPress loads a plugin after its main file path is written into active_plugins, which is the step WP-CLI, WP Toolkit or phpMyAdmin performs.

