Tout savoir sur WordPress
Tutoriel WordPress

Faire flotter le menu de l’administration

Le 08 June 2012 par Julio P. classé

Cette astuce permet de garder le menu d’administration visible à tout moment. Cela évite différents scrolls pour retrouver un élément du menu.

Tutoriel WordPress

Interdire certains tags lors de la sauvegarde d’un article

Le 25 May 2012 par Julio P. classé

Si vous avez des contributeurs et des auteurs, vous avez peut-être envie d’empêcher ces personnes d’ajouter certains mots-clés. Cette astuce va vous permettre de régler ce problème.

Copier le code ci-dessous dans le fichier functions.php présent à la racine de votre thème :

[pastacode lang=”php” message=”” highlight=”” provider=”manual”]


add_action('admin_init', 'baw_remove_bad_tags' );
function baw_remove_bad_tags() {
	
    // est-on en train d'envoyer des tags ?
    if( isset( $_POST['tax_input'], $_POST['tax_input']['post_tag'] ) ) {
	
        // mots à interdire (casse non prise en compte)
        $bad_tags = array( 'motinterdit', 'autre mot' );
  
        // on filtre les tags envoyés
	$_POST['tax_input']['post_tag'] = trim( str_ireplace( $bad_tags, '', $_POST['tax_input']['post_tag'] ), ',' );
    }
}

[/pastacode]

Je n’utilise pas le hook save_post car les tags seraient déjà enregistrés, donc des requêtes auraient été lancées pour la création de ces tags, puis je devrais alors en refaire pour les supprimer … Pas très optimisé tout ça.

Je préfère tapper plus haut dans les hooks avec admin_init puis je vérifie si nous sommes en train d’envoyer des tags, alors je filtre le contenu de ces tags en supprimant ceux qui sont interdits.

BONUS : Créer un filtre de mauvais tags

Je vais ajouter un hook perso pour que des plugins (de votre création ?) puissent ajouter leurs propres mots, ou aussi pour permettre aux administrateurs d’avoir le droit d’ajouter ces mots interdits.

[pastacode lang=”php” message=”” highlight=”” provider=”manual”]


add_action('admin_init', 'baw_remove_bad_tags' );
function baw_remove_bad_tags() {
	
     // est-on en train d'envoyer des tags ?
     if( isset( $_POST['tax_input'], $_POST['tax_input']['post_tag'] ) ) {
	 
         // mots à interdire (casse non prise en compte) + hook 'bad_tags'
         $bad_tags = apply_filters( 'bad_tags', array( 'motinterdit', 'autre mot' ) );
         
         // on filtre les tags envoyés
         $_POST['tax_input']['post_tag'] = trim( str_ireplace( $bad_tags, '', $_POST['tax_input']['post_tag'] ), ',' );
    }
}

[/pastacode]

J’insère un apply_filters() avec le nom de nom choix (j’ai pris “bad_tags” arbitrairement).

L’exemple ci-dessous vous illustre comment on peut modifier le filtre bad_tags pour ajouter des mots interdits :
[pastacode lang=”php” message=”” highlight=”” provider=”manual”]


add_filter('bad_tags', 'baw_add_bad_tag' );
function baw_add_bad_tag( $bad_tags ) {
    $bad_tags[] = 'nouveaumotinterdit';
    $bad_tags[] = 'undeuxiemenouveaumotinterdit';
    return $bad_tags;
}

[/pastacode]

Maintenant, on pousse l’exemple un peu plus loin afin que les admins puissent ajouter tous les tags et ainsi passer au travers de ce filtre :
[pastacode lang=”php” message=”” highlight=”” provider=”manual”]


add_action('admin_init', 'baw_allow_admin_bad_tags' );
function baw_allow_admin_bad_tags( $bad_tags ) {
    return current_user_can( 'administrator' ) ? array() : $bad_tags;
}

[/pastacode]

Il convient de vérifier que l’utilisateur courant a des droits d’admin. Si tel est le cas, il faut retourner un tableau vide et aucun tags ne sera interdit. A défaut, il est nécessaire de renvoyer les tags comme ils m’ont été donnés.

Bon codage, merci de m’avoir lu une fois de plus :)

Tutoriel WordPress

Afficher une description (slogan) de votre site au hasard

Le 24 May 2012 par Julio P. classé

Cette astuce permet de définir plusieurs description de votre site et d’en afficher une aléatoirement.

Tutoriel WordPress

Ajouter la version jQuery de WordPress depuis le CDN de Google

Le 21 May 2012 par Julio P. classé

Cette astuce permet d’ajouter la version jQuery utilisé par WordPress à partir du CDN Google.

Tutoriel WordPress

Ajouter un lien “Réglages” dans la page des extensions

Le 11 May 2012 par Julio P. classé

Ce tutoriel est dédié aux développeurs de plugins WordPress qui souhaitent insérer un « lien d’action » permettant d’accéder à la page des options d’un plugin grâce à un lien « Réglages ».

Tutoriel WordPress

Ajouter des filtres par MIME type dans la bibliothèque de médias

Le 27 April 2012 par Julio P. classé

Cette astuce permet d’ajouter de nouveaux filtres dans la bibliothèques des médias en fonction des formats précédemment uploader.

Tutoriel WordPress

Insérer un tweet embarqué grâce à un shortcode

Le 13 April 2012 par Julio P. classé

Découvrez pas à pas la méthode à suivre pour utiliser un shortcode permettant d’afficher un tweet embarqué sans utiliser le code proposé par Twitter.

Tutoriel WordPress

Ajouter un fichier JavaScript en fonction d’un shortcode

Le 12 April 2012 par Julio P. classé

Cette astuce vous montre la démarche à suivre pour ajouter un fichier JavaScript de façon optimiser et propre en fonction d’un shortcode WordPress.

Tutoriel WordPress

Afficher les archives mensuelles des articles classés par années

Le 06 April 2012 par Julio P. classé

À l’aide de cette astuce, découvrez comment afficher les archives mensuelles des articles classés par années.

Tutoriel WordPress

Modifier le “Salutations” (Howdy) dans la barre admin

Le 26 March 2012 par Julio P. classé

Ce tutoriel est une démontration complète et détaillée pour modifier/ajouter/supprimer/s’amuser avec le petit encart “Salutations” dans l’admin bar.