Dans les profondeurs du code source de Wordpress repose une liste sans fin de fonctions PHP qui n’attendent que vous pour les utilisier dans vos thèmes ou plugins.
Le problème, c’est que la plupart des gens ne savent pas qu’elles existent, surement parce que le Codex de Wordpress est ridiculement peu fourni… et que la plupart des gens détestent lire le code source directement.
Voici un échantillon des plus intéressantes. Certaines sont simples et utilisables par tout le monde, d’autres ont une utilisation un peu moins commune, mais elles se révèlent toutes incroyablement pratiques.
wp_mail()
La fonction wp_mail() est une fonction très simple qui vous permet d’envoyer des e-mails à n’importe qui avec très peu d’arguments.
Par exemple :
[php]<?php
$to = ‘robert@monsite.com’;
$subject = ‘Coucou ! Mon blog est trop bien !’;
$message = "Viens le visiter — Mon blog t’envoi un mail !!";
$mail = wp_mail($to, $subject, $message);
if($mail) echo ‘Votre message a été expédié !’;
else echo "Un problème est survenue lors de l’envoi du message.";
?>[/php]
Vous pouvez aussi spécifier un troisième ou quatrième paramètre, $header et $attachments.
Cette fonction permet clairement de se débarrasser de la lourdeur de tous les envois d’e-mails auxquels vous pourriez penser en PHP.
Vous pouvez consulter cette fonction dans le Codex ici, ou vous pouvez jeter un œil à la source de Wordpress ici.
wp_loginout()
Cette fonction permet d’afficher un lien de connexion dans votre thème, ainsi on peut facilement se connecter sans avoir à taper les fameux /wp-admin/ ou /wp-login.php dans la barre d’adresse.
Mais cela va plus loin que ça : si on est déjà connecté, un lien de déconnexion est affiché à la place du lien de connexion. Pratique pour se déconnecter sans passer par le Tableau de Bord.
Cette fonction est très utile pour les créateurs de thème, surtout qu’elle fait tout pour vous. Donc si vous codez encore à la main les liens de connexion/déconnexion, à partir de maintenant vous perdez votre temps. Facilitez-vous la vie et utilisez wp_loginout().
Vous pouvez consulter cette fonction dans le Codex ici, ou vous pouvez jeter un œil à la source de Wordpress ici.
clean_url()
Cette fonction prend une URL et la teste pour s’assurer qu’elle est correctement structurée. Elle ajoute également le http:// si ce dernier vient à manquer.
Elle convertit les esperluettes dans le code HTML qui correspond et effectue quelques autres petits nettoyages qui réparent une URL mal formatée.
Cette fonction peut avoir un bon nombre d’utilisations, comme par exemple la possibilité de laisser un utilisateur saisir une URL dans les options d’un thème ou sur une page de configuration de plugin, sans les obliger à saisir les http://.
Cette fonction ne fait rien d’autre, mais rien que ça, c’est déjà pas mal .
Vous pouvez consulter cette fonction dans le Codex ici, ou vous pouvez jeter un œil à la source de Wordpress ici.
wpautop()
Cette fonction remplace les retours chariots présents dans les chaines de caractères ou les portions de texte par la balise <br/>. Elle transforme également les doubles saut de lignes en nouveau paragraphe, en fermant le premier avec la balise </p> et en ouvrant le suivant avec <p>.
wpautop() ouvre et ferme également toutes les chaines orphelines avec des balises de paragraphes, pour que l’ensemble soit correctement formaté.
Si vous stockez des chaines ou du texte dans la base de données et que vous souhaitez les afficher correctement à vos visiteurs, mais que vous ne saviez pas comment convertir ça en HTML standard au moment de la sortie, cette fonction est faite pour vous.
En fait, c’est la fonction que Wordpress utilise pour formater l’affichage des billets lorque vous utilisez the_content() dans le loop.
Vous pouvez consulter cette fonction dans le Codex ici, ou vous pouvez jeter un œil à la source de Wordpress ici.
wp_rss() / get_rss()
Ces deux fonctions peuvent récupérer des données depuis un flux RSS, les interpréter, et (selon ce que vous voulez) les afficher dans un format utile tel qu’une liste de lien.
Si vous (ou votre client) souhaitez récupérer et afficher des news depuis un autres sites, pour les afficher en barre latérale ou ailleurs, il vous faut juste un flux RSS, la fonction fera le sale boulot pour vous.
Le seul pré-requis à l’utilisation de cette fonction est un petit include pour l’utiliser :
[php]<?php
include_once(ABSPATH . WPINC . ‘/rss.php’); // < — Appel pour l’inclusion
wp_rss(‘http://example.com/rss/feed/goes/here’, 5); // <– Et voilà la fonction
?>[/php]
Vous pouvez consulter la fonction wp_rss() ici, ou get_rss() ici, ou vous pouvez jeter un œil à la source de chacune des deux fonctions ici.
Cet article est une traduction du billet de Nathan Rice.
Vous avez aimé cet article : abonnez-vous au flux RSS



















15 Responses
Très intéressant.
Je ne connaissais pas du tout wpautop() qui va me rendre bien service. Merci pour cet article.
[...] 5 fonctions Wordpress dont vous ne soupçonniez pas l’existence (Le journal du blog/ fr) [...]
Sympa de partager ce genre d’info. Ca pourra s’avérer utile pour les prochaines améliorations de mon blog
[...] du blog : 5 fonctions Wordpress dont vous ne soupçonniez pas l’existence à garder au chaud pour améliorer son [...]
Très bon article, un peu de nouveauté fait du bien. Pour compléter ton article, j’ai fait un tuto pour écrire des requêtes SQL dans phpMyAdmin (http://quick-tutoriel.com/supp.....-wordpress), cela peut toujours servir.
A+
[...] On 06.11.09, In Non classé, by admin [...]
Bonsoir,
Article vraiment intéressant. On ne se rend pas compte au départ de la puissance de Wordpress.
J’ai fait un test pour la fonction wp_rss() mais la mise en page ne me plait pas tout. J’ai l’impression qu’il y a un bug au niveau de l’affichage, les accents ne passent pas
A bientôt.
Très bonne info ! Je suis surpris que Wordpress ne mette pas ses fonctions plus en avant dans la doc.
Faire attention avec wp_rss (je n’ai pas regardé son code source) : si elle récupère le flux RSS à chaque chargement de la page sans le mettre en cache, on peut rapidement avoir des performances catastrophiques (sur le serveur hôte et/ou le serveur source!)
MERCI, pour les extensions. ce sont trop cool
Je les connais
clair que le codex est super mal documenté. Je crois que je vais m’y pencher un peu plus sur ces fonctions mais clair ça prend du temps ces petites bêtes là…
merci pour les astuces
[...] Ca donne envie de se replonger dans le codex, non ? (via Le Journal du Blog). [...]
Bonjour,
Avez-vous une idée pour que l’adresse de la fonction wprss( soit champ personnalisé de la page affichée ?
Merci d’avance,
S.
[...] 5 fonctions Wordpress dont vous ne soupçonniez pas l’existence (Le journal du blog/ fr) Marqué comme: hack, Wordpress Ce blog est mis à disposition sous un contrat Creative Commons. [...]