domingo, 8 de abril de 2012

Hoy en AyudaWordPress.com

Hoy en AyudaWordPress.com

Link to Ayuda WordPress

Cómo limpiar la tabla wp_options

Posted: 08 Apr 2012 04:02 PM PDT

Una de las cosas que más me chirrían de WordPress es la manía de muchos plugins de meter líneas de información en la base de datos, en concreto en la tabla ‘wp_options‘, que a poco que instales y desinstales plugins, se va llenando de porquería, muy al estilo de lo que pasa con el registro de Windows.

Por supuesto, es una mala costumbre, no de WordPress, sino de algunos desarrolladores que, pudiendo crear sus propias tablas, prefieren introducir la información del plugin en la tabla ‘wp_options‘. Y esto, además, no sería un problema si introdujeran una línea de código para limpiar la base de datos de su información al desinstalar el plugin, algo que si hacen algunos programadores.

Pero bueno, si tu base de datos crece y crece en tamaño, y no es por nuevas tablas ni por el crecimiento normal de las tablas wp_posts o wp_comments, es muy probable que sea precisamente la tabla wp_options que ha ido creciendo por plugins con esta fea costumbre.

¿Limpiarlo?, pues bueno, puedes hacerlo manualmente, si conoces las entradas de una instalación estándar de WordPress, pero es una absoluta barbaridad y te puede llevar muchas horas que seguramente prefieras emplear para otras cosas.

Lo mejor es valerte de alguna de estas soluciones:

1. WP-Options manager

Este plugin ofrece un navegador que te permite identificar las entradas en la tabla ‘wp_options‘ de tu base de datos e ir borrándolas selectivamente. Lo que le diferencia de hacer lo mismo desde PHPmyAdmin es que nos ofrece ocultar las entradas por defecto de WordPress, haciendo esta tarea mucho más segura.

Otra funcionalidad interesante es buscar opciones obsoletas, para empezar el borrado por ahí.

Muy recomendable pero hay que usarlo con precaución, como siempre que haces algo directamente con la base de datos, como es el caso.

2. Clean options

Una de las mayores virtudes de este plugin es que detecta opciones obsoletas, e identifica las muy pesadas y habituales entradas de RSS antiguas, que suelen llenar toda tabla ‘wp_options‘.

También es de agradecer que antes del borrado definitivo nos ofrezca una pantalla en la que nos avisa y recuerda todo lo que se va a borrar, para dar el último suspiro antes de hacer el borrado.

3. Eliminar los _transient

Las entradas del tipo ‘_transient‘ son una especie de referencias a cache y los accesos RSS que antes comentaba. Si es tu cáncer particular puedes automatizar el borrado de estas molestas y pesadas entradas en tu tabla wp_options de WordPress añadiendo este código al fichero functions.php o plugin de funciones:

add_action( 'wp_scheduled_delete', 'delete_expired_db_transients' );  function delete_expired_db_transients() {      global $wpdb, $_wp_using_ext_object_cache;      if( $_wp_using_ext_object_cache )         return;      $time = isset ( $_SERVER['REQUEST_TIME'] ) ? (int)$_SERVER['REQUEST_TIME'] : time() ;     $expired = $wpdb->get_col( "SELECT option_name FROM {$wpdb->options} WHERE option_name LIKE '_transient_timeout%' AND option_value < {$time};" );      foreach( $expired as $transient ) {          $key = str_replace('_transient_timeout_', '', $transient);         delete_transient($key);     } }

Pues bien, esto es lo que hay. Y te recuerdo que siempre, siempre, haz backup de tu base de datos antes de liarla parda con estas cosas, para que no te tengas que arrepentir.

Y si con estos plugins no te llega, siempre puedes dejar la tabla ‘wp_options‘ al estado inicial de la instalación de WordPress con estos sencillos pero radicales pasos:

  1. Ve a ‘Herramientas -> Exportar’ y exporta todo el contenido
  2. Ve a PHPmyAdmin y borra todas las entradas de la tabla ‘wp_options
  3. Ve a ‘miweb.com/wp-admin/install.php’ y actualiza la base de datos
  4. Ve a ‘Herramientas -> Importar’ e importa el contenido antes exportado

Para todo lo demás, usa cuantos menos plugins mejor, y si tienen alguna función de limpieza tras la desinstalación mucho mejor.

Proteger el fichero wp-config.php desde .htaccess

Posted: 07 Apr 2012 04:03 PM PDT

Uno de los archivos más importantes de una instalación de WorPress, si no el más importante, es el archivo de configuración wp-config.php.

Y, en consecuencia, uno de los objetivos de cualquier indeseable que quiera hackear tu WordPress.

Pues bien, buena noticia, proteger este archivo de accesos no deseados es muy sencillo. Solo debes añadir unas líneas de código al fichero .htaccess de tu instalación de WordPress, estas:

<Files wp-config.php> order allow,deny deny from all </Files>

Guardas los cambios y ya está. Por supuesto, si no tienes un archivo .htaccess debes crearlo accediendo con tu aplicación cliente FTP.

No hay comentarios:

Publicar un comentario

Seguidores

Archivo del blog