The full error typically reads:
Installation failed: Download failed. cURL error 60: SSL certificate problem: unable to get local issuer certificate
Method 1: Quick Code Snippet (Fast Temporary Fix)
Step-by-Step Guide
- Log into your WordPress dashboard and go to Appearance > Theme File Editor.
- From the file list on the right, select Theme Functions (functions.php).
- Scroll to the very end of the file and paste the code below. If the file ends with a
?>tag, paste the code before it.
- Click Update File to save your changes.
- Return to the plugin installation screen and try again — the download and installation should now complete normally.
⚠️ Security WarningThis approach disables SSL certificate validation for outgoing connections and reduces your site’s security level. Use it exclusively in local development environments, and delete the code snippet immediately after you finish installing plugins.
Method 2: Manual Plugin Upload (Reliable Code-Free Solution)
Step-by-Step Guide
Download the plugin ZIP file
Open the official WordPress Plugin Directory in your browser, search for the plugin you need, and click the Download button to save the .zip archive to your computer.
Upload and install the plugin
In your WordPress dashboard, go to Plugins > Add New.
- Click the Upload Plugin button near the top of the page.
- Click Choose File, select the .zip archive you downloaded, then click Install Now.
- When the installation finishes, click Activate to enable the plugin.
Method 3: Replace cURL CA Certificate Bundle (Permanent, Secure Fix)
cacert.pem bundle and configuring PHP to reference it, you permanently fix SSL verification for all WordPress and PHP operations, with no workarounds needed.Step-by-Step Guide
Download the official CA certificate bundle
Download the latest
cacert.pemfile from the official cURL website — this is the same trusted root certificate set maintained by Mozilla. Save the file to a fixed directory on your local server (for example,C:\php\extras\ssl\cacert.pemon Windows).Locate your active php.ini configuration file
In your local PHP environment (phpStudy, XiaoPi Panel, XAMPP, WAMP or similar), open the currently active
php.inifile. You can confirm the exact file path via a PHP info page or your control panel’s PHP settings.Configure PHP to use the certificate file
Search for the
curl.cainfodirective in php.ini. Uncomment the line by removing the leading semicolon;, then set its value to the full absolute path of yourcacert.pemfile:curl.cainfo = "C:\php\extras\ssl\cacert.pem"For full compatibility across all PHP extensions, also set theopenssl.cafiledirective to the same path:openssl.cafile = "C:\php\extras\ssl\cacert.pem"Restart your web server
Save the
php.inifile, then restart your Apache/Nginx and PHP services through your local control panel. The certificate configuration will take effect after the restart.- Return to WordPress and retry plugin installation. SSL verification will now pass normally, and the error will be permanently resolved.
💡 NoteThis is the recommended long-term solution for local development environments. It preserves full SSL security validation and fixes the issue for all PHP/cURL requests, not just WordPress plugin downloads.
