Daily Shaarli

All links of one day in a single page.

March 10, 2013

How to Create WordPress Shortcodes | Wptuts+
thumbnail

Comment créer ses propres Shortcodes sous Wordpress. Très simple et extrêmement puissant !

Un shortcode est une balise comme ceci : [shortcode] (oui, une sorte de BB Code).

Vous pouvez donc en programmer vous-même ;)

(Peut-être un jour dans Blogotext ?)

[Snippet] Derniers liens Shaarli dans Wordpress

Comme vous pouvez le constater sur mon blog, j'ai mis en place un widget indiquant les 5 derniers liens en vrac que j'ai posté sur Shaarli. Ceci grâce à un petit snippet sous Wordpress.

Comment faire ? C'est simple.

Dans le fichier "functions.php" du dossier du thème, ajoutez n'importe où le code suivant :

include_once(ABSPATH.WPINC.'/rss.php');

function kvu_displayShaarli($atts) {
extract(shortcode_atts(array(
"link" => 'http://',
"num" => '1',
), $atts));

if ($link[strlen($link)-1] == '/') {
    $link = $link.'?do=rss&permalinks';
} else {
    $link = $link.'/?do=rss&permalinks';
}

return wp_rss($link, $num);

}

add_shortcode('shaarli', 'kvu_displayShaarli');

Vous n'avez plus qu'à mettre en place un widget "texte" et y placer le shortcode [shaarli link="" num=""] où "link" est l'adresse du Shaarli (pas le flux RSS/ATOM) et "num" le nombre d'entrées à afficher. C'est tout. Par exemple : [shaarli link="http://links.kevinvuilleumier.net/" num="5"].

EDIT : Attention : la fonction wp_rss() utilise un cache qui a pour conséquence un affichage du flux RSS qui n'est pas en temps réel ! De plus, c'est une fonction dépréciée, mais qui fonctionne très bien sous Wordpress 3.5.1 (dernière version actuelle).
EDIT 2 : Correction d'une erreur dans le script.