Aquí les dejo mi guía totalmente actualizada a la última versión de WordPress la 3.5, sobre como arreglar este error, que sinceramente creo que WP debería traer en sus menos de configuración que template usar para cuando sucede esto..
Normalmente en los hosting compartidos, los proveedores separamos a los servidores de bases de datos de los servidores de datos, es decir, los archivos .html, .php, .css ,etc van en el servidor donde apunta tu dominio y al que te conectas por ftp, y las bases de datos van en uno aparte, probablemente en el mismo datacenter , aunque no es imperativo, puede estar en otro datacenter, ahora bien, cuando el servidor de base de datos tiene un fallo de conexion, o peor, un fallo en el disco duro (crashh).. podria ocurrir el error.. Error establishing a database connection
A veces los servidores pueden tener fallos, es normal nada es perfecto, aunque estan en su mayoria diseñados para restablecerse automáticamente, generalmente hay personal en los datacenters las 24 horas del día monitoreando la actividad de su banco de servidores, ahora bien si usamos WordPress, al perder comunicación con el servidor de base de datos, nos lanza el conocido error:
Error establishing a database connection en ingles
o
Error Estableciendo comunicación con la base de datos en español
esto sucede porque la mayoría de los proveedores dividen su servicios de alojamiento en servidor de archivos y servidor de base de datos, ahora bien , si el segundo falla se muestra el error, pero que sucede si este error tarda mucho tiempo o si nuestra web es indexada muy rápidamente por los buscadores debido a su gran popularidad?
Bien, simplemente que los buscadores indexaran algo como :
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" <?php
if ( function_exists( 'language_attributes' ) )
language_attributes(); ?>>
<head> <meta http-equiv="Content-Type" content="text/html;
charset=utf-8" /> <title>Database Error</title>
</head><body><h1>Error establishing a database connection</h1>
</body> </html>
si vemos la simple estructura, ademas de perder visitas le estaríamos dando resultados de indexación erróneos a los bots , con las consecuencias que acarrea para nuestra web, ahora bien para todo hay solución, si ubicamos la linea 2730 en la última version de WordPress el archivo ubicado en wp-includes/functions.php podemos reemplazarlo por algo como hice con esta web www.ventics.com:
<!DOCTYPE HTML>
<html>
<head>
<meta charset=»utf-8″>
<meta name=»description» content=»Diseño de paginas web, tiendas online, seo, wordpress, opencart,diseño grafico » />
<meta name=»keywords» content=»Diseño de paginas web, tiendas online, seo, wordpress, opencart, » />
<meta name=»robots» content=»index, follow» />
<title>Diseño de Paginas Webs,Diseño Grafico,Logotipos,Wordpress,Modulos Opencart,SEO</title>
</head>
<body>
<p>Te invitamos a seguirnos en <a href=»http://www.twitter.com/raventics» title=»Twitter» target=»_self»>Twitter</a> y a probar <a href=»http://www.ventics.com/autocms» title=»AutCMS» target=»_self»>Auto CMS el Administrador de Contenidos Web mas pequeño y fácil de usar del Mundo</a></p>
<meta http-equiv=»refresh» content=»10″ />
</body>
</html>
Lo que esta en rojo es lo que he agregado adicionalmente mejorado la experiencia para el usuario, tambien he actualizado al formato a html5 (raro que WP no lo cambiara desde hace rato ya…), lo que esta en azul es para no perder la indexacion de mi home en Google, tambien en mi caso anunciando mi CMS gratuito AutoCMS, de tal manera que no perderíamos el contácto con nuestros visitantes, asi mismo, si vemos la linea <meta http-equiv=»refresh» content=»10″ /> le indicamos que se refresque cada 10 segundos para verificar si ya el servidor de base de datos se levantó por si deseas estar pendiente que la web se pueda visualizar, finalmente lo que esta en Naranja son las mismas etiquetas META de mi pagina de inicio,..
En el caso que no quieras hacerlo por ti mismo estoy a tu disposición , puedes dejarme un mensaje en en formulario de contacto, te respondere a la brevedad…
Importante es que cada vez que actualices WP desde respaldar el archivo en cuestion y volver a realizar el proceso ya que es un archivo que puede ser frecuentemente actualizado por WP.