WPCloudDeploy Documentation

WP-CONFIG Entries

WPCloudDeploy has a few options that can be added to your WordPress wp-config.php file to activate, remove or modify certain functions.


Security Options


WPCD_ENCRYPTION_KEY

define( 'WPCD_ENCRYPTION_KEY', 'your very long encryption key goes here' );

Certain passwords and other pieces of sensitive data are encrypted when stored in the database.  This defines the encryption key that is used.  We strongly urge that you add this entry to your wp-config.php file.

Prior to version 4.1.0, we would use a hardcoded default key if you did not provide one. Frankly, this was  the same as no key because everyone could view it by looking at the source code of the plugin.

As of version 4.1.0 (and later of course), we generate a key and store it in the database for you.  BUT, this is still not as secure as could be since the key is stored in plaintext, you do not know what it is and even a mild compromise of the database can expose the key.  Further, since you do not know the temporary key we’re storing in the database, you cannot use the backup & restore settings option to move to a new installation (since the encrypted credentials cannot be decrypted in the new installation.)

So, you really need to create a wp-config.php entry – preferably before you start configuring your cloud providers.  If you create this entry after you configure your cloud providers you will need to re-enter your api keys and other credential information in settings.

Here are some ways you can generate a string for this key:

  • Use a password generation program such as LASTPASS or KEEPASS
  • Use any tool that generates WordPress SALTS
  • Create a new SSH KEYPAIR and use a portion (or all) of the private key (this idea was provided by one of our customers.)

General WP-CONFIG Options


DISABLE_WPCD_CRON

define('DISABLE_WPCD_CRON', true);

Prevent the WordPress Cron process from running WPCD Cron jobs.  This is used in conjunction with our “Better WPCD Cron” setup.


WPCD_HIDE_SSH_CONSOLE

define('WPCD_HIDE_SSH_CONSOLE', true);

Hide the SSH CONSOLE from the server detail screen.


WPCD_DEBUG

define('WPCD_DEBUG', false);

Turn on some debugging options that will write additional debugging data to the WordPress debug.log file.


WPCD_LOAD_BACKUP_DO_PROVIDER

define('WPCD_LOAD_BACKUP_DO_PROVIDER', true);

We provide two digital ocean providers so that you can use two different accounts if you like.  But by default we don’t load the second one.  Turn on the second one (‘backup’) using this wp-config entry.

If you have a license for our VIRTUAL PROVIDER add-on, you do not need to use this option (since the Virtual Provider add-on allows you to use as many provider accounts as you like.)


WPCD_SKIP_SERVER_SIZES_SETTING

define('WPCD_SKIP_SERVER_SIZES_SETTING', true);

The server sizes that are shown in the settings screen under each provider is currently only used by the VPN and BASIC SERVER apps and the WORDPRESS app WOOCOMMERCE add-ons.  This option allows those sizes to be hidden which can be useful if the none of these apps or add-ons are enabled.


WPCD_SHOW_PERMISSION_LIST

define('WPCD_SHOW_PERMISSION_LIST', true);

The permission list is an internal post type that we use for setting up permissions for teams.  In most cases it’s not necessary to show this list on the screen.


WPCD_DISABLE_DATA_SYNC

define('WPCD_DISABLE_DATA_SYNC', true);

Data syncing allows server and site metadata to be pushed to a destination WPCD site as a form of semi-real-time backup.  Use this flag to disable the option entirely.


WPCD_ALLOW_DUPLICATE_DOMAINS

define('WPCD_ALLOW_DUPLICATE_DOMAINS', true);

Under normal circumstances you do not want duplicate domains in your system.  But, when testing you might need this ability as you test creating sites on multiple servers and so on. Use this flag to enable duplicate domains.  Keep in mind that this will break some functions where we can’t identify the correct records to update based on just the domain name.


WPCD_DISABLE_EMAIL_NOTIFICATIONS

define('WPCD_DISABLE_EMAIL_NOTIFICATIONS', true);

Disables the options and metaboxes on the SERVERS and SITES screen that allow for emailing to owners and other interested parties associated with those items.  If this feature is not being used, it’s a good way to declutter the screen.


WPCD_HIDE_CHANGELOG_IN_PLUGIN_LIST

define('WPCD_HIDE_CHANGELOG_IN_PLUGIN_LIST', true);

Prevents the change log from showing in the WordPress plugins list screen.  See https://wpclouddeploy.com/whats-new-in-wpclouddeploy-4-16/ for more information.


Multisite / SAAS Related Entries


WPCD_SKIP_WELCOME_MESSAGE

define( 'WPCD_SKIP_WELCOME_MESSAGE' , false);

When enabled, will not add the WPCD welcome message to the top of the settings screen on the general tab.  However, app specific welcome messages will still be shown.  A better way to handle replacing the welcome message might be to use the wpcd_settings_welcome_text_initial filter which allows you to completely replace the text or append to it.


WPCD_SKIP_SSH_TIMEOUT_SETTINGS

define( 'WPCD_SKIP_SSH_TIMEOUT_SETTINGS',  false );

When enabled, you will not see the SSH timeout options on the settings screen.


WPCD_AUTO_TRIM_LOG_LIMIT

define( 'WPCD_AUTO_TRIM_LOG_LIMIT' , 100);

Overrides the auto trim log limit set in the settings screen (under the logs tab).


WPCD_MENU_NAME

define( 'WPCD_MENU_NAME' , 'Servers and Sites');

Overrides the name for the main menu item.


WPCD_APP_MENU_NAME

define( 'WPCD_APP_MENU_NAME' , 'All Sites');

Overrides the name for the applications menu item.


WPCD_SHORT_NAME

define( 'WPCD_SHORT_NAME' , 'FireupWP');

The product name to show on certain screens, eg: Wizard.


WPCD_LONG_NAME

define( 'WPCD_LONG_NAME' , 'FireupWP - Easiest Way To Fireup A New WP Server');

The product description to show on certain screens (not currently used anywhere).


WPCD_WPAPP_MENU_NAME

define( 'WPCD_WPAPP_MENU_NAME' , 'WP Sites');

Overrides the name for the WordPress sites menu item.

Available in WPCD V 4.2.5 or later.


WPCD_HIDE_HELP_TAB

define( 'WPCD_HIDE_HELP_TAB' , true);

In versions prior to 4.2.5, this option hides the help tab in the settings screen.  In version 4.2.5 and later, the help area moved to the main menu but this option still allows you to hide it.


WPCD_HIDE_PROVIDER_HELP_LINKS

define( 'WPCD_HIDE_PROVIDER_HELP_LINKS' , true);

Hides the help links in the provider screen that point back to the WPCD help pages.


WPCD_SITE_PACKAGES_NO_BASH

define(  'WPCD_SITE_PACKAGES_NO_BASH', true);
Does not show options for bash scripts in site packages nor allow execution of those scripts even if values are present.
This is useful when WPCD is installed in a shared SaaS environment – one where there are multiple instances of WPCD on the same server with different customers allowed to access each instance.  In this case you might not want customers executing bash scripts that they define.
If a shared environment as described in the prior paragraph is your use-case then this needs to be added to your wp-config.php file in your TEMPLATE sites so that all your customer sites inherits it.  If, for some reason, your existing customer sites do not have it, then it should be added.
This option is available in WPCD 5.4.1 and later.

WPCD_CUSTOM_SCRIPTS_NO_BASH

define(  'WPCD_CUSTOM_SCRIPTS_NO_BASH', true);
Do not allow execution of bash scripts specified in then WPCLOUDDEPLOY → SETTINGS → APP: WORDPRESS SETTINGS → CUSTOM SCRIPTS tab.
This is useful when WPCD is installed in a shared SaaS environment – one where there are multiple instances of WPCD on the same server with different customers allowed to access each instance.  In this case you might not want customers executing bash scripts that they define.
If a shared environment as described in the prior paragraph is your use-case then this needs to be added to your wp-config.php file in your TEMPLATE sites so that all your customer sites inherits it.  If, for some reason, your existing customer sites do not have it, then it should be added.
This option is available in WPCD 5.4.1 and later.

APP Specific Entries: WPAPP


WPCD_WPAPP_SKIP_POPUP_HEADER

define('WPCD_WPAPP_SKIP_POPUP_HEADER', true);

This entry applies specifically to the WordPress app.  When provisioning a server or app the popup has a large header with the “WPCloud Deploy” name on it.  Set this entry to avoid showing that.


WPCD_WPAPP_HIDE_INSTALLWP_HOVER_LINK

define('WPCD_WPAPP_HIDE_INSTALLWP_HOVER_LINK', true);

This entry applies specifically to the WordPress app.  The servers list will usually show an INSTALL WORDPRESS link under the title column when the user/admin hovers over a title.  However, there’s a lot of links there and sometimes you might just want to remove this particular link since you have a separate column with a specific button for installing WordPress.  This wp-config option gives you the ability to do so – setting it to TRUE will remove the link.


WPCD_WPAPP_HIDE_WEBSERVER_OPTIONS

define('WPCD_WPAPP_HIDE_WEBSERVER_OPTIONS', true);

This entry applies specifically to the WordPress app.  When we start to support multiple webservers, this will disable the drop-down that allows the user to select a webserver type when deploying a new server.  This option is only available as of WPCD V 5.0.


Other Entries

Please make sure you review the other entries described earlier in this document if you’re running WPCD in a shared environment – i.e.: one where there are multiple instances of WPCD, each of which is assigned to a different customer.


Testing & Development Options


WPCD_LOAD_VPN_APP

define('WPCD_LOAD_VPN_APP', true);

Activates the VPN module

The VPN Module provides the capability to sell a VPN server subscription via WooCommerce.  It requires the WooCommerce, WooCommerce Subscriptions and WooCommerce Memberships plugins to work.

There is no further documentation available for this module and no technical support is available if you activate it.


WPCD_LOAD_BASIC_SERVER_APP

define('WPCD_LOAD_BASIC_SERVER_APP', true);

Activates a basic server app module.

The Basic Server Module provides the capability to sell a Basic Server subscription via WooCommerce.  It requires the WooCommerce, WooCommerce Subscriptions and WooCommerce Memberships plugins to work.

There is no further documentation available for this module and no technical support is available if you activate it.


WPCD_LOAD_STABLEDIFF_APP

define('WPCD_LOAD_STABLEDIFF_APP', true);

Activates an app the creates a STABLE DIFFUSION AI server.

This Module provides the capability to sell a Stable Diffusion AI server subscription via WooCommerce.  It requires the WooCommerce, WooCommerce Subscriptions and WooCommerce Memberships plugins to work.

There is no further documentation available for this module and no technical support is available if you activate it.  If you’d like more information about this, please contact our sales or support team.


Deprecated Options


WPCD_SERVER_HIDE_TABS_WHEN_AUTHOR

define( 'WPCD_SERVER_HIDE_TABS_WHEN_AUTHOR' , 'server-ssh-keys,server-users,ssh_console,server_upgrade,fail2ban');

Remove certain server tabs from the server screen even when the user is an Author with full rights to the server. This helps in SaaS situations where the post author is the buyer but you still don’t want them to access those tabs.

You specify the list of tabs to be disabled when the user is an author as a comma-delimited string with no spaces between each entry.  There are currently only 5 tabs that can be disabled this way.

  • server-ssh-keys
  • server-users
  • ssh_console
  • server_upgrade
  • fail2ban

As of WPCD V 4.13.0, you no longer need to use this option since there is a UI in the settings screen that accomplishes the same thing.  We will likely remove this option in a future version so consider this option deprecated.

WPCD_WPAPP_SHOW_WEBSERVER_OPTIONS

define('WPCD_WPAPP_SHOW_WEBSERVER_OPTIONS', true);

This entry applies specifically to the WordPress app.  When we start to support multiple webservers, this will enable the drop-down when deploying a new server.  Currently, if you turn this on, it will show a drop-down of web server choices but your choice will have no effect.

This option has been removed in WPCD V 5.0 and replaced with WPCD_WPAPP_HIDE_WEBSERVER_OPTIONS.


Notes


When adding any of the options to your wp-config.php file, please make sure that they are placed above the line that says  “/* That’s all, stop editing! */” in wp-config.php.  Do not add them to the bottom of the file!

Share: