Skip to content

Instantly share code, notes, and snippets.

Embed
What would you like to do?
All those damned wp-config constants you can never remember.
<?php
// PHP memory limit for this site
define( 'WP_MEMORY_LIMIT', '128M' );
define( 'WP_MAX_MEMORY_LIMIT', '256M' ); // Increase admin-side memory limit.
// Database
define( 'WP_ALLOW_REPAIR', true ); // Allow WordPress to automatically repair your database.
define( 'DO_NOT_UPGRADE_GLOBAL_TABLES', true ); // Don't make database upgrades on global tables (like users)
// Explicitely setting url
define( 'WP_HOME', 'http://domain.com' );
define( 'WP_SITEURL', 'http://domain.com' );
// Set url to... whatever.
define( 'WP_HOME', 'http://' . $_SERVER['HTTP_HOST'] );
define( 'WP_SITEURL', 'http://' . $_SERVER['HTTP_HOST'] );
// Temporary for causing a site to relocate. Remove after login.
define( 'RELOCATE', true );
// Allow WordPress to update files
define( 'FS_METHOD', 'direct' );
define( 'FS_CHMOD_DIR', ( 0755 & ~ umask() ) ); // change permissions of directories
define( 'FS_CHMOD_FILE', ( 0644 & ~ umask() ) ); // change permissions of files
// Set the directory files should be downloaded to before they're moved.
// This is usually set in the PHP conf
define( 'WP_TEMP_DIR', '/Applications/MAMP/tmp/php/' ); // this one is for default MAMP setup
// Set post revisions to something feasible
define( 'WP_POST_REVISIONS', 15 );
// Autosave interval of post revisions in seconds.
define( 'AUTOSAVE_INTERVAL', 160 ); // Seconds
// Set cookie domain for login cookies
// Very helpful if you're getting cookie errors during login
define( 'COOKIE_DOMAIN', '.domain.com' ); // Domain and all subdomains
define( 'COOKIE_DOMAIN', 'domain.com' ); // only root domain
define( 'COOKIE_DOMAIN', 'www.domain.com' ); // only subdomain
// More cookie constants
define( 'COOKIEPATH', $_SERVER['HTTP_HOST'] . '/' ); // You should set this explicitely.
define( 'SITECOOKIEPATH', $_SERVER['HTTP_HOST'] . '/' ); // You should set this explicitely.
define( 'ADMIN_COOKIE_PATH', SITECOOKIEPATH . 'wp-admin' );
define( 'PLUGINS_COOKIE_PATH', preg_replace( '|https?://[^/]+|i', '', WP_PLUGIN_URL ) );
// Cookie names.
define( 'USER_COOKIE', 'wordpressuser_' . COOKIEHASH );
define( 'PASS_COOKIE', 'wordpresspass_' . COOKIEHASH );
define( 'AUTH_COOKIE', 'wordpress_' . COOKIEHASH );
define( 'SECURE_AUTH_COOKIE', 'wordpress_sec_' . COOKIEHASH );
define( 'LOGGED_IN_COOKIE', 'wordpress_logged_in_' . COOKIEHASH );
define( 'RECOVERY_MODE_COOKIE', 'wordpress_rec_' . COOKIEHASH );
// WordPress debug on and off
define( 'WP_DEBUG', true );
define( 'WP_DEBUG_LOG', true );
define( 'WP_DEBUG_DISPLAY', true );
define( 'WP_LOCAL_DEV', true ); // Magic switch for local dev
// Script and style debug
define( 'CONCATENATE_SCRIPTS', false ); // Causes WordPress scripts to be included separately
define( 'SCRIPT_DEBUG', true ); // Uses unminified scripts
define( 'SAVEQUERIES', true ); // Requires analyzing the global $wpdb object.
define('COMPRESS_SCRIPTS', true);
define('COMPRESS_CSS', true);
define('ENFORCE_GZIP', true);
// Disable WP cron in favor of server cron
define( 'DISABLE_WP_CRON', true );
define( 'ALTERNATE_WP_CRON', true ); // alternate method of firing cron in the background when initiated by end users.
define( 'WP_CRON_LOCK_TIMEOUT', 60 ); // limit cron runs to a certain interval.
// SSL
define( 'FORCE_SSL_LOGIN', true ); // Only secrue the registration/login process
define( 'FORCE_SSL_ADMIN', true ); // Force SSL for the whole WordPress admin
// The "timthumb" fix
define( 'WP_HTTP_BLOCK_EXTERNAL', true );
define( 'WP_ACCESSIBLE_HOSTS', 'api.wordpress.org,*.github.com' ); // Only allow particular hosts in
// Modifying files
define( 'DISALLOW_FILE_EDIT', true ); // Kill the WordPress file editor
define( 'DISALLOW_FILE_MODS', true ); // Don't allow users to update core, plugins, or themes
define( 'IMAGE_EDIT_OVERWRITE', true ); // Allow editing images to replace the originals
// Changing WordPress updates.
define( 'AUTOMATIC_UPDATER_DISABLED', true ); // Disable all WordPress auto-updates
define( 'WP_AUTO_UPDATE_CORE', false ); // Only disable core updates
define( 'WP_AUTO_UPDATE_CORE', 'minor' ); // Only enable minor core updates
// Change languages
define( 'WPLANG', 'de_DE' );
define( 'WP_LANG_DIR', dirname(__FILE__) . 'wordpress/languages' );
// Trash
define( 'EMPTY_TRASH_DAYS', 30 ); // 30 days
// Dev tools
define( 'SHORTINIT', false ); // Disable most of WordPress. Useful for fast responses for custom integrations.
define( 'WP_FEATURE_BETTER_PASSWORDS', true ); // Remove better password feature.
// Recovery mode and fatal error handling.
define( 'WP_SANDBOX_SCRAPING', true ); // Turn off WSOD Protection (and don't send email notification)
@mcguffin

This comment has been minimized.

Copy link

@mcguffin mcguffin commented Oct 11, 2019

Thanks, very helpful :)

I found this little fellow was missing:

// Turn off WSOD Protection (and don't send email notification)
define( 'WP_SANDBOX_SCRAPING', true );
@MikeNGarrett

This comment has been minimized.

Copy link
Owner Author

@MikeNGarrett MikeNGarrett commented Oct 18, 2019

I just added sandbox scraping. Thanks for mentioning it.

There are a ton of constants that are useful in different scenarios. I recommending checking out the default constants file: https://github.com/WordPress/WordPress/blob/master/wp-includes/default-constants.php

@milindmore22

This comment has been minimized.

Copy link

@milindmore22 milindmore22 commented Nov 8, 2019

Thanks
here are few missing to boost site speed a little

define('COMPRESS_SCRIPTS', true);
define('COMPRESS_CSS', true);
define('ENFORCE_GZIP', true);
@MikeNGarrett

This comment has been minimized.

Copy link
Owner Author

@MikeNGarrett MikeNGarrett commented Nov 8, 2019

Thanks for the additions!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.