PHP Warning: mkdir(): Permission denied in wp-content/plugins/swift-framework/includes/options/redux-framework/inc/class(dot)redux_filesystem(dot)php

Errors & Troubleshooting | Updated 2026

The "PHP Warning: mkdir(): Permission denied in wp-content/plugins/" error means a WordPress plugin cannot create a directory because of incorrect file ownership or permissions. This commonly occurs with page builder plugins like Swift Framework, caching plugins, or any plugin that writes files to the wp-content directory.

01. Why This Happens

  • Wrong file ownership - The wp-content directory or its subdirectories are owned by a different user than the PHP process. See SoftException UID Error.
  • Too restrictive permissions - Directories need 755 to allow PHP to create subdirectories
  • After a migration or restore - Backups can change ownership or permissions

02. How to Fix

If you have SSH access, run the commands from the featured card above. If not, you can fix permissions via cPanel File Manager by right-clicking directories and selecting "Change Permissions" to 755.

If the issue persists after fixing permissions, the problem is ownership. Open a ticket and we will fix it. Also make sure you have define('FS_METHOD', 'direct'); in your wp-config.php. See WordPress FTP Credentials.

Permission Errors Persist?

Open a ticket and we will fix file ownership and permissions across your WordPress installation.

Open a Support Ticket

Quick Recap

  1. Fix ownership - chown -R $USER:$USER ~/public_html/wp-content
  2. Fix permissions - Directories 755, files 644
  3. Add FS_METHOD direct to wp-config.php
  4. Do not use 777
  5. Contact support if you cannot fix ownership yourself

WordPress permission errors · Last updated March 2026 · Browse all Error articles

  • 159 Users Found This Useful

Was this answer helpful?

Related Articles

How do I customize error messages for my site?

Errors & Troubleshooting | Updated 2026 When visitors hit a 404 (page not found), 403...

403 Error on POST

Errors & Troubleshooting | Updated 2026 A 403 Forbidden error on POST requests (form...

Premature end of script headers

Errors & Troubleshooting | Updated 2026 "Premature end of script headers" is an Apache...

Error 406 unacceptable

Errors & Troubleshooting | Updated 2026 A 406 "Not Acceptable" error means the server...

Error: SoftException in Application(dot)cpp:303 UID of script is small than min_uid

Errors & Troubleshooting | Updated 2026 The "SoftException in Application.cpp: UID of...



Save 30% on web hosting - Use coupon code Hosting30