Communauté
Rejoignez la communauté Geekeries sur Google+ › Découvrez mag.geekeries.fr
Créer des shortcodes personnalisés pour vos contenus !

Créer des shortcodes personnalisés pour vos contenus !

Publié par Guillaume dans WordPress
Modifié le 18 août 2010 à 16:32.

ShortCoder est une extension vous permettant de créer facilement des mini-codes personnalisés. Ces « shortcode » sont de petits bouts de codes permettant l’exécution de fonctionnalités basiques ou avancées. Très simple dans son utilisation, il permet via la page d’options d’ajouter des vos mini-codes personnalisés. Grâce à son éditeur HTML, il vous suffit d’insérer le contenu avancé, tel que de la publicité, bouton de partage dynamique ou tout autre contenu, de remplir le formulaire dédié et de valider. Par la suite et pour afficher votre portion de contenu, il vous suffit alors d’insérer votre code, remplir le formulaire et valider. Cet outil est plutôt optimisé pour les utilisateurs ne souhaitant pas utiliser, de façon direct, les fonctions avancées qu’offre WordPress (API) et le fichier « functions.php » de votre thème. Nous allons donc voir également comment cela fonctionne.
[popeye exclude="9459"]
ShortCoder est une extension plutôt efficace pour les personnes utilisant fréquemment des textes ou fonctions avancées dans les articles et pages d’une installation WordPress. Voici un exemple qui va vous permettre de mieux comprendre le fonctionnement de l’extension. Nous souhaitons par exemple afficher de la publicité dynamique. Pour cela, nous allons créer la balise « pubs » contenant donc les balises données par votre fournisseur d’affichage publicitaire. Pour ensuite l’insérer dans votre article il vous suffit de coller la balise suivante.

[sc name="pubs"]

Développement de balises personnalisées (shortcode)

Après avoir présenté la façon « interface d’utilisateur » nous vous proposons de créer vous-même (développement) et de façon personnalisé votre propre balise (shortcode). Pour cela nous allons avoir besoin du fichier « functions.php » du thème de votre installation WordPress.

Nous voulons par exemple intégrer simplement du texte répétitif ou tout simplement des fonctionnalités avancées telles que l’ajout de boutons de partages Twitter, Facebook. Pour cela il vous suffit de coller le code suivant dans le fichier « functions.php » de votre thème WordPress. N’oubliez pas de modifier les valeurs avec celles que vous souhaitez utiliser. Le contenu (ce que va afficher la balise) doit également être modifié. Vous pouvez y insérer n’importe quel élement. L’attribut « tw » est la valeur de la balise. Nous allons donc insérer dans nos articles la balise [tw] pour afficher son contenu.

function twitter() {
    return 'Contenu Twitter';
}
add_shortcode('tw', 'twitter');

Nous allons maintenant voir comment utiliser une balise contenant des attributs. Ces attributs sont des valeurs ajoutées pour ainsi optimiser les requêtes que vous voulez faire sur votre mini-codes. Plutôt simple à mettre en place, mais quelques notions de développement vous seront nécessaire pour faire fonctionner correctement votre balise avancée ! Nous souhaitons afficher les articles, précédemment publiés pour n’importe quel auteur. Nous souhaitons alors bénéficier du contrôle de l’affichage (nombre d’articles), de l’ordre d’apparition et de l’auteur. On va alors créer trois attributs, qui auront des valeurs par défaut.

L’attribut « nbr » nous permet alors de définir le nombre d’article à afficher.
L’attribut « ordre » nous permet de définir l’ordre d’apparition des articles
Pour finir, l’attribut « nom » nous permet de définir et d’afficher les articles de l’auteur.

function Post_membres($atts, $content = null) {
        extract(shortcode_atts(array(
                "nbr" => '5',
                "ordre" => 'date',
                "nom" => 'Guillaume'
        ), $atts));
        global $post;
        $myposts = get_posts('showposts='.$nbr.'&orderby='.$ordre.'&author_name='.$nom);
        $style='<ul>';
        foreach($myposts as $post) :
		setup_postdata($post);
		$style.='<li><a href="'.get_permalink().'">'.the_title("","",false).'</a></li>';
        endforeach;
        $style.='</ul> ';
        return $style;
}
add_shortcode("auteur", "Post_membres");

Par la suite et une fois le code coller et enregistré dans le fichier « functions.php » de votre thème WordPress, nous pouvons alors l’utiliser dans nos articles. Pour cela il vous suffit de coller la balise suivante en y indiquant les paramètres que vous souhaitez.

[auteur nbr="3" nom="Guillaume" ordre="rand"]

Conclusion

Pour finir, nous vous avons exposé trois manières différentes de gérer et de créer des balises (shortcode). De la plus à la plus complexe nous vous avons également montrer comment mettre en place un module avancé de type « J’ai également publié » pour afficher les articles de n’importe quel rédacteur de votre blog WordPress.

Créer des mini-codes personnalisés pour vos contenus !