PluginsWeb ⚙️

✅ ¿Qué es el archivo wp-config.php de WordPress y qué podemos hacer con él?

que es el archivo wp config php de wordpressUno de los archivos más importantes en tu instalación de WordPress es el wp-config.php. Este archivo se encuentra en la raíz de tu directorio de archivos de WordPress y contiene los detalles de configuración base de tu sitio web y la información de conexión de la base de datos entre otras cosas.

Cuando descargas WordPress por primera vez el wp-config.php no está incluido. Cuando instalas WordPress el archivo wp-config.php se creará automáticamente con los datos que proporciones durante el proceso de instalación.

Puedes crear manualmente un wp-config.php ubicando el archivo de muestra con el nombre wp-config-sample.php (ubicado en el directorio raíz de instalación), editándolo según sea necesario y luego guardándolo como wp-config.php.

editar archivo wp config php

Para cambiar el wp-config.php de tu instalación necesitarás esta información:

  1. Nombre de la base de datos: nombre de la base de datos utilizado por WordPress
  2. Nombre de usuario de la base de datos: nombre de usuario utilizado para acceder a la base de datos
  3. Contraseña de la base de datos: contraseña utilizada por el nombre de usuario para acceder a la base de datos
  4. Host de base de datos: el nombre de host de su servidor de base de datos. Es posible que también se necesite un número de puerto o una ruta de archivo de socket Unix.

Toda esta información se crea automáticamente cuando instalas WordPress desde tu hosting por lo que no tienes que configurar nada en principio pero también puedes configurarlo manualmente si lo consideras oportuno.

Configurar los ajustes de la base de datos

Ingresa a tu instalación de WordPress a través de un FTP o el administrador de archivos de cPanel y busca el archivo wp-config-sample.php en el directorio raíz de tu instalación y haz clic en editar.

wp config php sample wordpress

Establecer el nombre de la base de datos

Reemplaza ‘database_name_here’, con el nombre de tu base de datos. Por ejemplo, ‘mibasededatos003’.

define ('DB_NAME', 'mibasededatos003');

Establecer usuario de base de datos

Reemplaza ‘username_here’, con el nombre de usuario, por ejemplo, ‘minombredeusuario’ .

define ('DB_USER', 'mibasededatos003');

Establecer contraseña de la base de datos

Reemplaza ‘password_here’ con tu contraseña, por ejemplo, ‘micontraseña’ .

define ('DB_PASSWORD', 'micontraseña');

Establecer host de la base de datos

Reemplazaq ‘localhost’ con el nombre de tu host de base de datos, por ejemplo, ‘mihost’ . Es posible que también se necesite un número de puerto o una ruta de archivo de socket Unix.

define ('DB_HOST', 'mihost');

Nota: Es muy probable que NO tengas que cambiarlo. Si no estás seguro intenta instalar con el valor predeterminado de ‘localhost’ y observa si funciona. Si la instalación falla ponte en contacto con tu empresa de hosting.

configurar base de datos conexion wordpress

Juego de caracteres de la base de datos

DB_CHARSET se puso a disposición para permitir la designación del conjunto de caracteres de la base de datos que se utilizará al definir las tablas de la base de datos MySQL.

El valor predeterminado de utf8 ( Unicode UTF-8 ) es casi siempre la mejor opción. UTF-8 admite cualquier idioma, por lo que normalmente deberás dejar DB_CHARSET en utf8 y usar el valor DB_COLLATE para tu idioma en su lugar.

define ('DB_CHARSET', 'utf8');

db charset base de datos utf8

Por lo general, no debería haber ninguna razón para cambiar el valor predeterminado de DB_CHARSET.

Llaves de seguridad

No tienes que recordar las claves, solo hazlas largas, aleatorias y complicadas. Puedes cambiarlas en cualquier momento para invalidar todas las cookies existentes. Esto significa que todos los usuarios deberán iniciar sesión nuevamente.

seguridad wordpress base de datos

En términos simples, una clave secreta es una contraseña con elementos que dificultan la generación de suficientes opciones para romper sus barreras de seguridad. Una contraseña como «contraseña» o «prueba» es simple y fácil de romper.

Una contraseña larga y aleatoria que no utilice palabras del diccionario, como “88a7da62429ba6ad3cb3c76a09641fc”, a un atacante de fuerza bruta le llevaría millones de horas descifrarla. Se utiliza _SALT para mejorar aún más la seguridad del resultado generado.

Las cuatro claves son necesarias para la seguridad mejorada. Se recomiendan las cuatro _SALT, pero no son obligatorias, porque WordPress generará esas claves para tí si no se proporciona ninguna.

Tabla de prefijos

tabla de prefijops wordpress base de datos

El $table_prefix es el valor colocado en la parte delantera de las tablas de bases de datos. Cambia el valor si quieres usar algo diferente a wp_ para el prefijo de tu base de datos.

Es posible tener varias instalaciones en una base de datos si le das a cada una un prefijo único. Ten en cuenta la seguridad si decides hacer esto.

$ table_prefix = 'r235_'; // ¡Solo números, letras y guiones bajos!

Modificar intervalo de autoguardado

Al editar una publicación, WordPress usa Ajax para guardar automáticamente las revisiones de la publicación a medida que editas. Es posible que quieras aumentar esta configuración para retrasos más prolongados entre los guardados automáticos o disminuirla para asegurarte de que nunca perderás los cambios. El valor predeterminado es 60 segundos.

define ('AUTOSAVE_INTERVAL', 120); // Segundos

Limitar / deshabilitar revisiones

WordPress, de forma predeterminada, guardará copias de cada edición realizada en una publicación o página lo que permite la posibilidad de volver a una versión anterior de esa publicación o página.

Se puede deshabilitar el guardado de revisiones o se puede especificar un número máximo de revisiones por publicación o página.

define( 'WP_POST_REVISIONS', 10 );  /*Limitar a 10 revisiones*/

define ('WP_POST_REVISIONS', false);  /*Desactivar revisiones*/

Establecer dominio de cookies

El dominio configurado en las cookies para WordPress se puede especificar para aquellos con configuraciones de dominio inusuales.

Por ejemplo, si utilizas subdominios para ofrecer contenido estático puedes configurar el dominio de cookies solo en tu dominio no estático para evitar que se envíen cookies de WordPress con cada solicitud de contenido estático en tu subdominio.

define ('COOKIE_DOMAIN', 'www.ejemplo.com');

Habilitar multisitio

WP_ALLOW_MULTISITE es una característica que habilita la funcionalidad multisitio. Si esta configuración está ausente wp-config.php el valor predeterminado es falso.

Si quieres saber más sobre WordPress Multisite mira este artículo.

define ('WP_ALLOW_MULTISITE', true);

Redirigir blogs inexistentes

NOBLOGREDIRECT se puede utilizar para redirigir el navegador si el visitante intenta acceder a un subdominio o subcarpeta inexistente. Puedes utilizar esto si tenías un subdominio y lo eliminaste para que redirija al dominio principal.

define ('NOBLOGREDIRECT', 'http://example.com');

Activar el modo de depuración y el registro de errores

Para esta caractrística tengo un artículo específico sobre como activar esta funcionaliodad a través del archivo wp-config.php.

Deshabilitar la concatenación de JavaScript

Para generar pantallas de administración más rápidas, todos los archivos JavaScript se concatenan en una URL. Si JavaScript no funciona en una pantalla de administración puedes intentar deshabilitar esta función.

define ('CONCATENATE_SCRIPTS', false);

Aumento de la memoria PHP

La opción WP_MEMORY_LIMIT te permite especificar la cantidad máxima de memoria que PHP puede consumir. Esta configuración puede ser necesaria en caso de que recibas un mensaje de error como «Se ha agotado el tamaño de memoria permitido de xxxxxx bytes».

Nota: algunos hosts no te permiten aumentar el límite de memoria PHP. En ese caso, habla con ellos para aumentar el límite de memoria de PHP.

define ('WP_MEMORY_LIMIT', '128M'); /*Aumenta la memoria a 128M*/

Caché

La configuración de WP_CACHE si es verdadera incluye el wp-content/advanced-cache.php cuando se ejecuta wp-settings.php.

define ('WP_CACHE', true);

Directorio de idiomas

La versión 4.0 de WordPress te permite cambiar el idioma en tus pantallas de administración de WordPress.

Esto lo puedes hacer desde ‘Ajustes →  General’  y seleccionas el ‘Idioma del sitio’.

  • WPLANG define el nombre del archivo de traducción de idioma (.mo).
  • WP_LANG_DIR define en qué directorio reside el archivo WPLANG (.mo).

Si WP_LANG_DIR no está definido, WordPress busca primero en wp-content / languages ​​y luego wp-includes/languages.

define ('WPLANG', 'de_DE');
define ('WP_LANG_DIR', dirname (__ FILE__). 'wordpress / languages');

Guardar consultas para su análisis

SAVEQUERIES guarda las consultas de la base de datos en una matriz y esa matriz se puede mostrar para ayudar a analizar esas consultas.

La información guarda cada consulta, qué función la llamó y cuánto tiempo tardó en ejecutarse esa consulta.

Nota: esto tendrá un impacto en el rendimiento de tu sitio así que asegúrate de desactivarlo cuando no estés depurando.

Primero, agrega esto al wp-config.php:

define ('SAVEQUERIES', true);

Luego, en el pie de página de tu tema (footer), pon este código:

<?php
if ( current_user_can( 'administrator' ) ) {
    global $wpdb;
    echo "<pre>";
    print_r( $wpdb->queries );
    echo "</pre>";
}
?>

Anulación de los permisos de archivo predeterminados

Las declaraciones de definición FS_CHMOD_DIR y FS_CHMOD_FILE permiten anular los permisos de archivo predeterminados. Estas dos variables se desarrollaron en respuesta al problema de la falla de la función de actualización del núcleo con hostingss que se ejecutan en suexec.

Por lo general, los permisos correctos del servidor deberían ser 755 para los directorios y subdirectorios y 644 para los archivos.

define ('FS_CHMOD_DIR', (0755 & ~ umask ()));
define ('FS_CHMOD_FILE', (0644 & ~ umask ()));

Nota: ‘ 0755 ′ y’ 02755 ‘son valores octales. Los valores octales deben ir precedidos de un 0 y no delimitados por comillas simples (‘).

Cron alternativo

Puede haber una razón para usar un Cron alternativo con WordPress.

Por lo general, esto se hace si las publicaciones programadas no se publican según lo previsto. Este método alternativo utiliza un enfoque de redireccionamiento. El navegador de los usuarios obtiene una redirección cuando el cron necesita ejecutarse de modo que regresan al sitio inmediatamente mientras cron continúa ejecutándose en la conexión que acaban de desconectar.

Este método tiene ciertos riesgos, ya que depende de un servicio de WordPress no nativo.

define ('ALTERNATE_WP_CRON', true);

Deshabilitar Cron y Cron Timeout

El cron de WordPress es básicamente un archivo de programación de tareas que se encarga de ejecutar las tareas programadas de tu WordPress.

Deshabilita cron por completo estableciendo DISABLE_WP_CRON en true.

define ('DISABLE_WP_CRON', true);

Asegúrate de que un proceso cron no se pueda ejecutar más de una vez cada X segundos.

define ('WP_CRON_LOCK_TIMEOUT', 60);

Papelera vacía

Esta constante controla la cantidad de días antes de que WordPress elimine permanentemente publicaciones, páginas, archivos adjuntos y comentarios de la papelera. El valor predeterminado es 30 días:

define ('EMPTY_TRASH_DAYS', 30); // 30 dias

Para deshabilitar la papelera establece el número de días en cero.

define ('EMPTY_TRASH_DAYS', 0); // 0 días

Nota: WordPress no solicitará confirmación cuando alguien haga clic en «Eliminar permanentemente» usando esta configuración.

Optimización automática de la base de datos

Hay soporte de reparación automática de la base de datos que puedes habilitar agregando lo siguiente a tu wp-config.php.

Nota: Esto solo debe habilitarse si es necesario y deshabilitarse una vez que se resuelva el problema. Cuando está habilitado un usuario no necesita iniciar sesión para acceder a la funcionalidad ya que su intención principal es reparar una base de datos dañada y los usuarios a menudo no pueden iniciar sesión cuando la base de datos está dañada.

define ('WP_ALLOW_REPAIR', true);

Una vez activado tienes que ir a la URL tusitio.com/wp-admin/maint/repair.php.

Deshabilitar el editor de plugins y temas

Es posible que quieras deshabilitar el editor de temas y plugins del escritorio de WordPress para evitar que otros usuarios puedan editar archivos confidenciales y potencialmente bloquear el sitio.

Deshabilitarlos también proporciona una capa adicional de seguridad si un pirata informático obtiene acceso a una cuenta de usuario con muchos privilegios.

define ('DISALLOW_FILE_EDIT', true);

Nota : La funcionalidad de algunos plugins puede verse afectada por el uso de current_user_can('edit_plugins')en su código. Los autores de plugins deben evitar verificar esta capacidad o al menos verificar si esta constante está configurada y mostrar un mensaje de error apropiado.

Ten en cuenta que si un plugin no funciona, esta puede ser la causa.

Deshabilitar la actualización e instalación de plugins y temas

Esto bloqueará que los usuarios puedan usar la funcionalidad de instalación / actualización de plugins y temas desde el área de administración de WordPress.

Establecer esta constante también deshabilita el editor de plugins y temas (es decir, no es necesario configurar DISALLOW_FILE_MODS y DISALLOW_FILE_EDIT ya que DISALLOW_FILE_MODS por sí solo tendrá el mismo efecto).

define ('DISALLOW_FILE_MODS', true);

Requerir SSL para administradores e inicios de sesión

FORCE_SSL_ADMIN es para cuando deseas proteger los inicios de sesión y el área de administración para que las contraseñas y las cookies nunca se envíen sin cifrar.

define ('FORCE_SSL_ADMIN', true);

Bloquear solicitudes de URL externas

Bloquea las solicitudes de URL externas definiendo WP_HTTP_BLOCK_EXTERNAL como verdadero y esto solo permitirá que localhost y tu blog realicen solicitudes.

La constante WP_ACCESSIBLE_HOSTS permitirá que hostings adicionales pasen por solicitudes.

El formato de la constante WP_ACCESSIBLE_HOSTS es una lista de nombres de hostings separados por comas para permitir, los dominios comodín son compatibles, por ejemplo, * .wordpress.org permitirá que se contacte con todos los subdominios de wordpress.org.

define ('WP_HTTP_BLOCK_EXTERNAL', true);
define ('WP_ACCESSIBLE_HOSTS', 'api.wordpress.org, *. github.com');

Deshabilitar las actualizaciones automáticas de WordPress

Para deshabilitar las actualizaciones automáticas en caso de que quierqas desactivarlas y tu hosting las tenga activadas de manera predeterminada, puedes añadir la siguiente línea de código:

define ('AUTOMATIC_UPDATER_DISABLED', true);

Deshabilitar las actualizaciones principales de WordPress

# Desactiva todas las actualizaciones principales:
define (‘WP_AUTO_UPDATE_CORE’, false);

# Habilita todas las actualizaciones principales, incluidas las menores y mayores:
define (‘WP_AUTO_UPDATE_CORE’, true);

# Habilita actualizaciones principales para versiones menores (predeterminado):
define (‘WP_AUTO_UPDATE_CORE’, ‘minor’);

Ediciones de limpieza de imágenes

De forma predeterminada WordPress crea un nuevo conjunto de imágenes cada vez que edita una imagen y cuando restaura el original deja todas las ediciones en el servidor.

Definir IMAGE_EDIT_OVERWRITE como verdadero cambia este comportamiento.

Solo se crea un conjunto de ediciones de imágenes y cuando restaura el original las ediciones se eliminan del servidor.

define ('IMAGE_EDIT_OVERWRITE', true);

Conclusión

Bueno, ya has visto la importancia del archivo wp-config.php y todo lo que puedes hacer con él.

Aunque puedes hacer muchas cosas más avanzadas, en este artículo has visto las principales modificaciones que se suelen hacer en este archivo.

Para seguir conociendo WordPress y sus archivos visita:

Nos vemos en el siguiente tutorial.

Un saludo.

5/5 - (5 votos)