Tres correcciones para WordPress

Los primeros dos parches solucionan un error a la hora de reiniciar la contraseña (por olvido/pérdida) y un fallo en filtro image_send_to_editor.
La primer alternativa es descargar los 2 archivos y sobrescribir por los que estan en el host.

La segunda cambiar manualmente las líneas correspondiente en cada archivo.

1. Editar wp-includes/pluggable.php con el notepad o algún programa similar
2. Buscar la siguiente cadena:

function wp_generate_password($length = 12) {
$chars = abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789!@#$%^*();

3) Cambiamos por la siguiente cadena:

function wp_generate_password($length = 12, $special_chars = true) {
$chars = abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789;
if ( $special_chars )
$chars .= !@#$%^*();

1. Editar wp-login.php (esta en el raíz) con el notepad o algún programa similar
2. Buscar la siguiente cadena:

$key = wp_generate_password();

3. Cambiamos por la siguiente cadena

$key = wp_generate_password(20, false);

Y el tercer parche soluciona un bug en los comentarios. El problema reside en que cualquier usuario podía hacerse pasar por el autor del blog. La solución es muy parecida a las otras dos.

1. Editamos wp-comments-post.php (esta en el raíz) con el notepad o algún programa similar
2. Buscamos la siguiente cadena:

$comment_author = trim(strip_tags($_POST[author]));
$comment_author_email = trim($_POST[email]);
$comment_author_url = trim($_POST[url]);
$comment_content = trim($_POST[comment]);

3. A continuación ponen este código:

// get list of user (display) names for blog
global $wpdb;
$valid_users = (array)$wpdb->get_results(
SELECT display_name, user_email FROM . $wpdb->prefix . users);

// get ID of logged in user (if there is one)
global $userdata;
get_currentuserinfo();
$logged_in_name = $userdata->ID;
$logged_in_email = $userdata->user_email;

// see if the comment author matches an existing author
$found_match = FALSE;
foreach ($valid_users as $va) {
if (trim($va->display_name) != ) {
if (strtolower($va->display_name) == strtolower($comment_author)) {
$found_match = TRUE;
break;
}
}
if (trim($va->user_email) != ) {
if (strtolower($va->user_email) == strtolower($comment_author_email)) {
$found_match = TRUE;
break;
}
}
}

// if commenter is not logged in, but match was found, block the comment
if (trim($logged_in_name) == ) {
if ($found_match == TRUE) {
wp_die( __(You cannot post using the name or email of a registered author.) );
}
}

Para personalizar el mensaje que le aparece a los que quieren hacerse pasar por los autores del blog editar la siguiente línea

wp_die( __(You cannot post using the name or email of a registered author.) );

Tags: #blog #Programming #wordpress

author
Author: 
    No related post!

    Leave a reply "Tres correcciones para WordPress"

    Must read×

    Top