Archive for mai, 2009

Ré-initialiser le mot de passe admin pour wordpress

Samedi, mai 2nd, 2009

Comment ré-initialiser le mot de passe admin pour WordPress quand on ne possède plus l’email de l’administrateur ?
Comment ré-initialiser le mot de passe admin pour WordPress quand la procédure de changement de mot de passe se finie par une beau message d’erreur « clé invalide » ?

Comment ré-initialiser le mot de passe admin pour WordPress ?
Après de nombreux changement de version ou simplement l’oubli de votre mot de passe, vous utilisez surement la fonction mot de passe perdu ?
Et vous obtenez un lien qui vous fourni « clé invalide » !
Dommage …
Et comment faire si vous ne possédez plus l’email de votre administrateur …

Vous pouvez toujours changer l’email de l’administrateur dans la base de donnée mais cela ne résout pas le problème de « clé invalide » (table : wp_users )

Votre solution n’est portant pas loin :
Touchez simplement à la base … avec les bon paramètres :

UPDATE `wp_users` SET `user_pass` = MD5( 'MON-NOUVEAU-MOT-DE-PASSE' ) WHERE `user_login` = "admin"

C’est encore plus rapide que de demander un email pour mot de passe perdu …

Filtre sur les emails d’inscription

Vendredi, mai 1st, 2009

Créé un filtre sur les emails d’inscription.
Votre blog est remplis d’email d’utilisateurs qui créaient un compte mais ne l’utilisent pas ?
A priori on pourrais penser que votre blogue attire les nuisibles qui tentent d’exploiter une faille interne à votre site.

Nous avons reçu cette requête d’un professionnel :

Notre WordPress reçois des centaines d’inscriptions par jour, ce sont des spammeurs qui pensent pouvoir faire valider leurs commentaires en créant un compte.
Ceci devient problématique.
De plus notre hébergeur nous signale qu’il ne pourra plus gérer tant de mails qui sont pour la plupart inexistant …

Nous proposons deux solutions très Wordpress-Seo.com

  • Un patch rapide (2 minutes) ( car WordPress évolue et les anciennes versions ne permettent que ce patch WP <2.1 )
  • Un Plugin qui résoudra vos ennuis. (depuis qu’il est possible de crée un Hook sur l’enregistrement WP >= 2.1 : register_post )

A vous d’exploiter nos deux pistes …

Le patch anti-enregistrement d’email russe ou chinois

Pour les WordPress dont la version est inférieure à 2.1 ( nous étions déjà en avance ) …
Ceci n’est pas un plugin WordPress, mais plutôt un patch rapide pour débloquer une situation.

Le patch :
Cherchez dans le fichier includes/registration.php la fonction « wp_insert_user« .
Selon la version de WordPress que vous possédez, vous devez ajouter devant
« $wpdb->insert( $wpdb->users[...] » ce bout de code à adapter selon vos besoins .

Dans cette exemple nous revoyons 0 si les mail finissent par « .ru » ou par « .cn » ce qui provoque une erreur d’inscription géré par WordPress.

/* PATCH ANTI-RU/CN */
$pattern = '/\.ru$/';
$is_found=preg_match($pattern, $user_email);
if($is_found>0){return 0;}
$pattern = '/\.cn$/';
$is_found=preg_match($pattern, $user_email);
if($is_found>0){return 0;}
/* ****************** */

Le patch anti-enregistrement d’email russe ou chinois WP >= 2.1

Depuis la version 2.1 un nouveau Hook est apparu : register_post.
Nous allons donc l’utiliser.


/*
Plugin Name: Filtre email d'enregistrement BETA 0.1
Plugin URI: http://www.wordpress-seo.com
Description: Filtre email d'enregistrement ( configuration manuelle )
Version: 0.1
Author: Wordpress-seo.com
Author URI: http://Wordpress-seo.com
*/
// ---------------------------------------
function registration_filter_get_pattern()
{
$A=array();
// activer selon vos besoins
$A[]='/\.ru$/'; // bannir les RU
$A[]='/\.cn$/'; // bannir les CN
// mode d'emploi : consulter "preg_match"

return $A;
}
// ---------------------------------------
function registration_filter_ban($login, $email, $errors)
{
$is_Banned=0;
$Patterns=registration_filter_get_pattern();
foreach($Patterns as $pat)
{
$is_found=preg_match($pat, $email);
if($is_found>0){$is_Banned++;}
}
// --------------------
if($is_Banned>0)
{
$errors->add('email_banned','<strong>ERROR</strong>: This email address is not allowed, please choose another one.');
}

}
// ---------------------------------------
// hook
add_action('register_post', 'registration_filter_ban', 10, 3);

Si vous n’y arrivez pas, publiez un commentaire

Techniques Wordpress
plugin et patch Wordpress
Formation Wordpress
Utilisateurs Wordpress-SEO
Wordpress-SEO : Wordpress professionel