WordPress (Managed) App
This app is targeted at users who want a managed WordPress installation. The Cloudron team tracks upstream WordPress releases and publishes updates. The WordPress code is read-only and you have to extend WordPress using plugins. If you require full control over the installation including editing the WordPress code, use the WordPress (unmanaged) app instead.
- Questions? Ask in the Cloudron Forum - WordPress
The WordPress admin page is located
When using WordPress with Cloudron user management, an admin user is created by default with a
random password and the email as
email@example.com. You can delete the admin user
post-installation by logging in as a Cloudron admin. It is not deleted automatically because
the default posts auto-generated by WordPress installer are assigned to admin.
Administration Email Address
WordPress uses the Administration Email Address to send out important administrative emails.
To be able to receive those, make sure to change that address in the
The Managed WordPress app does not support editing files via SFTP. If you require SFTP access to edit WordPress files, use the WordPress (unmanaged) app instead.
To adjust memory allocated for WordPress, edit
/app/data/wp-config.php using the File manager
and add the following line at the end of the file:
define('WP_MEMORY_LIMIT', '128M'); define('WP_MAX_MEMORY_LIMIT', '256M');
Note that the app also has a separate memory limit controlled by the app's memory limit. If you increase
WP_MEMORY_LIMIT, be sure to increase the app's memory limit. A good formula is to provide the app 6 times the
WP_MEMORY_LIMIT value at the bare minimum.
WP_MAX_MEMORY_LIMIT is the limit for administration tasks, which often require more.
A detailed explanation can be found in the WordPress docs.
The app is configured to run WordPress cron tasks every 5 minutes.
To run the cron tasks manually run the following command using the Web terminal:
sudo -E -u www-data /app/pkg/wp cron event run --due-now
WordPress' built-in cron task schedule
wp-cron is disabled since
it is not effective
for low traffic websites.
To add custom cron events, use a plugin like WP Crontrol.
Cloudron does not support plugins that modify the code. Code is read-only and immutable. This property is essential for Cloudron to update apps correctly.
Use the WordPress (unmanaged) app as an alternative to install plugins that modify the code.
A list of plugins known to not work can be found here.
GTmetrix is a great site for getting performance metrics on the WordPress installation.
To set the expires headers for all pages, the WP Fastest Cache plugin can be installed.
Cloudron does not support PHPMyAdmin. It is, however, possible to access the database using other methods:
Open a Web terminal and press the 'MySQL' button to get console access. You can execute SQL commands directly.
sudo -E -u www-data /app/pkg/wp
If one or more plugins/themes are erroring, you can make WP CLI skip loading plugins/themes as follows:
sudo -E -u www-data /app/pkg/wp --skip-plugins --skip-themes
Additional php settings can be configured, when running the cli with
php -d key=value:
sudo -E -u www-data php -d max_execution_time=100 /app/pkg/wp
In this case setting the maximum execution timeout to 100 seconds.
To list the themes:
sudo -E -u www-data /app/pkg/wp --skip-plugins --skip-themes theme list
To disable a theme, just activate another theme:
sudo -E -u www-data /app/pkg/wp --skip-plugins --skip-themes theme activate sometheme
#example php_value post_max_size 600M php_value upload_max_filesize 600M php_value memory_limit 128M php_value max_execution_time 300 php_value max_input_time 300 php_value session.gc_maxlifetime 1200
Migrating existing site
See our blog on how to migrate an existing WordPress site to Cloudron.
For security reasons, WordPress' built-in file editing functionality is disabled by default. You can enable this
back by editing
/app/data/wp-config.php and setting
DISALLOW_FILE_EDIT to false.
For security reasons, non-admins are not allowed to post unfiltered HTML content. You can enable this back by editing
/app/data/wp-config.php and setting
DISALLOW_UNFILTERED_HTML to false.