Existen muchas formas de optimizar WordPress y una forma muy sencilla de optimizarlo es mediante el archivo wp-config.php, en este archivo están las configuraciones que hacen que nuestro WordPress funcione correctamente como el nombre de la base de datos, la contraseña, etcétera. Para empezar solo tenemos que editar este archivo con cualquier editor de textos sin formato (Notepad, Notepad++, etc) y realizar los ajustes correspondientes.
Cada porción de código que le agreguemos al archivo wp-config.php debe de colocarse en una nueva línea al final del archivo y verificar que no existe código repetido.
Antes de realizar cualquier cambio en el archivo hay que crear una copia de seguridad por si algo sale mal. No pasa de que nuestro Blog se quede en blanco al entrar en una página.
Contenido
- URL del sitio
- Directorios de Plugins y Themes
- URL del contenido (imágenes, plugins, etc)
- Auto guardado de entradas
- Revisiones de entradas automáticas
- Modo de depuración
- Unión de scripts y estilos en el Escritorio
- Límite de memoria
- Opciones extra de acceso FTP
- Cron alternativo
- Vaciado automático de la papelera
- Reparación automática de la base de datos
URL del sitio
Aquí debemos reemplazar http://example.com/wordpress por la ruta de nuestro Sitio Web, por ejemplo, si lo tenemos instalado en la carpeta blog, tendríamos que colocar algo similar a esto: http://example.com/blog, y si nuestro sitio tiene las tres WWW no hay que olvidar ponerlas: http://www.example.com, lo mismo pasa con https y http.
define('WP_SITEURL', 'http://example.com/wordpress');
Al colocar lo siguiente repetimos los pasos del ejemplo anterior:
define('WP_HOME', 'http://example.com/wordpress');
Directorios de Plugins y Themes
Definiendo el directorio en donde se colocan todos los archivos extra como los Plugins, Themes, etc.
define( 'WP_CONTENT_DIR', $_SERVER['DOCUMENT_ROOT'] . '/directorio/wp-content' );
URL del contenido (imágenes, plugins, etc)
Definiendo la URL del directorio donde se colocan todos los archivos extra.
define( 'WP_CONTENT_URL', 'http://example/blog/wp-content');
Auto guardado de entradas
Esto es muy importante debido a que son los segundos entre cada Auto-guardado que genera WordPress al estar escribiendo una nueva entrada. Y recomiendo colocar un número alto para no acumular basura en la base de datos de WordPress.
define('AUTOSAVE_INTERVAL', 160 );
Revisiones de entradas automáticas
Con el siguiente código establecemos si queremos activar o desactivar las revisiones que nos permiten recuperar lo que escribimos en algún tiempo determinado con el parámetro anterior ('AUTOSAVE_INTERVAL'). TRUE para activar y FALSE para desactivar.
define('WP_POST_REVISIONS', false );
Modo de depuración
Con lo siguiente activamos el modo de depuración para observar errores en caso de haberlos mientras realizamos cualquier optimización o modificación. TRUE para activar y FALSE para desactivar. Hay que tratar de usarlo solamente en el entorno de desarrollo.
define('WP_DEBUG', true);
Unión de scripts y estilos en el Escritorio
Con el siguiente código se unen los distintos archivos JavaScript en uno solo, en el área de Administración o Escritorio aumentando el rendimiento notablemente ya que en lugar de cargar distintos archivos solo carga uno con el contenido de todos. TRUE para activar y FALSE para desactivar.
define('CONCATENATE_SCRIPTS', true);
Límite de memoria
Si agregamos el siguiente código podremos especificar el límite de memoria RAM que WordPress puede utilizar, y en caso de superar el límite se detendría su ejecución (En el ejemplo para especificar 32MB de RAM se coloca '32M').
define('WP_MEMORY_LIMIT', '64M');
Opciones extra de acceso FTP
Si tenemos problemas a la hora de actualizar los Plugins o al instalar un Theme, con los siguientes parámetros WordPress dejará de preguntarnos por las credenciales de login FTP que necesita y así será un proceso más fácil y sencillo. Es necesario personalizarlos según nuestros directorios.
/* FTP Access */
define('FS_METHOD', 'direct');
define('FTP_BASE', '/home/usuario/imperioweb.net/htdocs/');
define('FTP_CONTENT_DIR', '/home/usuario/imperioweb.net/htdocs/wp-content/');
define('FTP_PLUGIN_DIR ', '/home/usuario/imperioweb.net/htdocs/wp-content/plugins/');
define('FTP_USER', 'usuario');
define('FTP_PASS', 'password');
define('FTP_HOST', 'localhost');
define('FTP_SSL', false);
Cron alternativo
Ahora algo muy importante que debemos tener en cuenta es que WordPress necesita realizar diversas tareas automáticamente cada cierto tiempo, como por ejemplo: Publicar entradas programadas automáticamente, eliminar los artículos de la papelera, etc. Por esto se nos brinda una alternativa para disminuir el consumo de recursos, La forma en que funciona es cuando un usuario visita el sitio lo dirige y realiza todas las tareas pendientes, y de lo contrario cada cierto tiempo se estarían consumiendo recursos. Este método solo lo recomiendo para los que tengan problemas con el Cron o para los que tengan un servidor modesto con pocos recursos. Para ello tenemos que agregar lo siguiente.
define('ALTERNATE_WP_CRON', true);
Vaciado automático de la papelera
Esta opción sirve para especificar la cantidad de días que tarda en eliminar los artículos que se encuentran en la papelera. Si se especifica cero solo pide confirmación para eliminarlos permanentemente.
define('EMPTY_TRASH_DAYS', 30 ); // 30 días
Reparación automática de la base de datos
El siguiente código optimiza automáticamente la base de datos MySQL. En cuanto a mi experiencia nunca me ha funcionado y he preferido tener esta opción desactivada con FALSE.
define('WP_ALLOW_REPAIR', true);
Existen muchos más ajustes pero solo describí los más importantes y por lo pronto esto es todo.