If the “Add New Plugin” option is missing in your WordPress instance, the issue may be caused by one of the following reasons.
Possible Causes and Solutions
1. WordPress is Set to Multisite Mode
In a Multisite (Network) setup, the “Plugins” menu is restricted. You can check and disable Multisite with the following steps.
How to Check
- Log in to the admin panel (
http://YOUR_DOMAIN/wp-admin
) - Check if “Network Admin” appears in the left menu.
Solution (Disable Multisite Mode)
Modify wp-config.php
to revert to a single-site installation.
- Connect to your instance via SSH
- Edit
wp-config.php
sudo nano /YOURDIRECTORY/wp-config.php
- Comment out or remove the following Multisite settings:
define('MULTISITE', true); define('SUBDOMAIN_INSTALL', false); define('DOMAIN_CURRENT_SITE', 'your-domain.com'); define('PATH_CURRENT_SITE', '/'); define('SITE_ID_CURRENT_SITE', 1); define('BLOG_ID_CURRENT_SITE', 1);
After modification:// define('MULTISITE', true); // define('SUBDOMAIN_INSTALL', false); // define('DOMAIN_CURRENT_SITE', 'your-domain.com'); // define('PATH_CURRENT_SITE', '/'); // define('SITE_ID_CURRENT_SITE', 1); // define('BLOG_ID_CURRENT_SITE', 1);
- Save and exit (
Ctrl + X
→Y
→Enter
) - Restart Apache
sudo /opt/bitnami/ctlscript.sh restart apache
- Log back into WordPress → Check if “Add New Plugin” appears.
2. User Role is Not “Administrator”
If your WordPress user role is Editor or another lower role instead of Administrator, you won’t be able to manage plugins.
How to Check
- Go to the Admin Dashboard (
/wp-admin/
) - Navigate to “Users” → “Your Profile”
- Check the “Role” field → It should be Administrator.
Solution (Change User Role to Administrator)
Modify the user role directly in MySQL:
- Connect to your Lightsail instance via SSH
- Access MySQL
mysql -u root -p
- Select your WordPress database
USE YOUR_WORDPRESS_DB;
- Check the current user role
SELECT user_login, meta_value FROM wp_usermeta WHERE meta_key = 'wp_capabilities';
- If
meta_value
is nota:1:{s:13:"administrator";b:1;}
, update it with:UPDATE wp_usermeta SET meta_value = 'a:1:{s:13:"administrator";b:1;}' WHERE meta_key = 'wp_capabilities' AND user_id = 1;
- Exit MySQL
EXIT;
- Log back in and check if “Add New Plugin” appears.
3. DISALLOW_FILE_MODS
is Enabled in wp-config.php
If plugin installation is disabled at the system level, this setting might be the cause.
How to Check and Fix
- Connect to the server via SSH
- Open
wp-config.php
:sudo nano /YOURDIRECTORY/wp-config.php
- Find the following line and change
true
tofalse
, or remove it:define('DISALLOW_FILE_MODS', true);
After modification:define('DISALLOW_FILE_MODS', false);
- Save and exit (
Ctrl + X
→Y
→Enter
) - Restart Apache
sudo /YOURDIRECTORY/ctlscript.sh restart apache
- Check if the “Add New Plugin” option appears.
4. File Permission Issues
Incorrect file or directory permissions can prevent plugin installation.
Solution
Run the following commands to set the correct permissions:
sudo find /YOURDIRECTORY/wordpress -type d -exec chmod 775 {} \\;
sudo find /YOURDIRECTORY/wordpress -type f -exec chmod 664 {} \\;
Restart Apache:
sudo /YOURDIRECTORY/ctlscript.sh restart apache
Log back into WordPress and check if the plugin menu appears.
Summary
Cause | Solution |
---|---|
Multisite Mode Restriction | Disable MULTISITE in wp-config.php |
User Lacks Admin Rights | Modify wp_capabilities in MySQL |
DISALLOW_FILE_MODS is Set to True | Change it to false in wp-config.php |
File Permission Issues | Use chown and chmod to fix |
Priority Steps to Try First
- Open
wp-config.php
and check/fixMULTISITE
settings. - Change
DISALLOW_FILE_MODS
tofalse
inwp-config.php
. - Verify and update
wp_capabilities
in MySQL to ensure the user is an Administrator.
If the issue persists after these steps, check .htaccess
rules and Apache settings.