50 filtres de WordPress filtres 11-20

Dans la partie précédente de cette série, nous avons commencé à parcourir 50 filtres WordPress. Sélectionnés parmi des centaines, nous avons commencé par en examiner 10.

Dans ce tutoriel, nous allons en voir un autre lot et passer en revue quelques exemples de chacun..

Commençons!

Jouer avec des données traduisibles dans WordPress

L’une des fonctionnalités les plus intéressantes de WordPress est d’avoir chaque texte prêt à être traduit. Si la langue de votre site Web est l'anglais, toutefois, vous n'avez pas besoin de cette fonctionnalité.? 

le gettext le filtre pourrait fonctionner pour vous d'une manière différente. Voyons un exemple intéressant.

Exemple: corriger la grammaire d'un autre développeur!

Supposons que vous ayez trouvé un plugin agréable, mais que vous réalisiez que son propriétaire ne parle pas très bien anglais et que du texte mal écrit se trouve dans le code. Heureusement, les chaînes sont traduisibles, vous pourrez donc les changer à l'aide de l'outil gettext filtre. 

Voyons comment:

Nettoyer la limace

WordPress utilise une fonction nommée sanitize_title () pour nettoyer les titres, remplace les espaces par des traits d'union et les rend prêts à être sauvegardés sous forme de slug. Avec le filtre sanitize_title (oui, même nom) vous pouvez étendre cette fonction.

Exemple: supprimer les mots "les" de la limace

Si vous ne voulez pas le mot "le" dans vos slugs, vous pouvez les supprimer avec l'extrait de code ci-dessous:

Une solution simple et élégante.

Définition d'exceptions pour la texturation en code court

Ce filtre pratique "vous permet de spécifier les codes courts à utiliser ne pas être couru à travers le wptexturize () fonction ", comme indiqué dans le Codex.

Exemple: exclure votre shortcode de la texturation

Si vous voulez que le shortcode que vous avez construit soit exempt de texturation, utilisez ce code pour ajouter votre nom de shortcode à la liste "ne pas texturer":

Assez facile, à droite?

Filtrage du statut d'approbation d'un commentaire

WordPress a ses propres contrôles pour les commentaires (ce qui peut être un peu trop facile contre les spammeurs) avant de décider si le commentaire doit être marqué comme spam, envoyé à la file d'attente de modération ou approuvé. le pre_comment_approve filtre permet aux plugins d'aider avec cette décision.

Exemple: marquage de commentaires avec des noms d'auteur longs en tant que spam

Dans mon pays, la Turquie, les spammeurs de commentaires WordPress utilisent généralement des noms longs, parfois l’URL elle-même.. 

Avec l'extrait de code ci-dessous, vous pouvez automatiquement éliminer les spammeurs qui utilisent des noms tels que "Expédition nationale et internationale avec des prix extrêmement bas (Cliquez ici pour plus d'informations)":

 75)? 'spam': $ approuvé;  // Exemple de source: https://gist.github.com/norcross/5468979?>

Un merci spécial à Andrew Norcross pour l'idée!

Conseil bonus: si vous souhaitez éliminer le spam en vérifiant la longueur de l'URL de l'auteur du commentaire, utilisez "comment_author_url" au lieu de "comment_author". Andrew Norcross a d'ailleurs utilisé l'URL dans son astuce d'origine.

Configuration de la fonctionnalité "Publier par courrier électronique"

Saviez-vous que vous pouvez publier sur votre blog WordPress par courrier électronique? WordPress offre cette fonctionnalité peu utilisée et vous permet de l’activer ou la désactiver avec le enable_post_by_email_configuration filtre.

Exemple: activer et désactiver la fonctionnalité "Publier par courrier électronique"

Pour une raison quelconque (telle que la sécurité, peut-être), vous souhaiterez peut-être désactiver cette fonctionnalité. Et vous pouvez le faire avec une seule ligne de code:

Ou si vous utilisez WordPress Multisite et que vous devez activer cette fonctionnalité (car elle est désactivée par défaut sur Multisite), vous pouvez utiliser le __return_true () une fonction:

Filtrer vos titres de page

le wp_title () Cette fonction affiche les titres de page, ceux que l’on voit sur nos descripteurs d’onglet dans les navigateurs. Et la fonction wp_title nous permet d’altérer ces titres.

Exemple: réécriture des titres de votre page - Le droit chemin

Un "gourou" WordPress respecté (et éditeur chez Tuts + Code) Tom McFarlin nous explique dans son blog comment réécrire correctement les titres de nos pages avec le wp_title () fonction et le filtre du même nom:

Wp_title étant une fonction filtrée, cela signifie que nous sommes en mesure de fournir un hook personnalisé qui nous permet de définir le schéma d’affichage de nos titres, non seulement plus précisément, mais aussi correctement..

= 2 || $ page> = 2) $ title = sprintf (__ ('Page% s', 'tuts_filter_example'), max ($ paginé, $ page)). "$ sep $ title"; return $ title;  // Exemple de source: http://tommcfarlin.com/filter-wp-title/?>

Assurez-vous de consulter son article. Merci Tom!

Traitement des commentaires avant leur enregistrement dans la base de données

Si vous avez besoin d’aide pour modifier les données des commentaires (identifiant de publication du commentaire, nom de l'auteur, adresse électronique de l'auteur, site Web de l'auteur, type du commentaire, identifiant de l'utilisateur si le commentateur est un utilisateur, type du commentaire et contenu du commentaire), preprocess_comment peut vous aider.

Exemple: baisser le volume des juments

OBTENEZ-VOUS BEAUCOUP DE COMMENTAIRES DANS LEQUEL CHAQUE MOT EST-IL MAJUSCULE? Si vous le faites, vous pouvez automatiquement mettre ces lettres en minuscule à l'aide de l'extrait de code ci-dessous:

Cool hein?

Gestion de la redirection après la connexion

Ce petit filtre nous permet de définir des redirections (autres que le panneau d’administration) après le processus de connexion, ce qui peut être très utile dans certains cas..

Exemple: rediriger les abonnés vers le site Web

Si vous ne souhaitez pas que vos utilisateurs (avec le rôle "Abonné") voient votre panneau d'administration après leur connexion, vous pouvez les rediriger vers la page d'accueil de votre site Web:

rôles) && is_array ($ utilisateur-> rôles)) if (in_array ('abonné', $ utilisateur-> rôles)) return home_url ();  else return $ redirect_to;   revenir; ?>

Le Codex nous met en garde contre une chose: "Assurez-vous que vous utilisez add_filter en dehors de is_admin (), puisque cette fonction n’est pas disponible lors de l’appel du filtre. "

Création de liens d'action pour votre plugin

Si vous développez un plugin, vous pourriez vous demander comment d'autres développeurs ont réussi à ajouter des liens sous le nom de leurs plugins dans la page Plugins. Eh bien, ils utilisent ce filtre.

Exemple: Ajout d'un lien "Paramètres" à afficher dans la page des plugins

Pour ajouter des liens d'action personnalisés sous le nom de votre plugin dans la liste de la page Plugin, vous pouvez utiliser cette fonction et la relier au filtre:

Notez que nous utilisons le __FICHIER__ constante pour accrocher notre fonction au filtre avec le nom de votre plugin. Neat, hein?

Utilisez ceci avec prudence: si vous abusez de cette zone pour y remplir des liens, les gens se souviendront de vous en tant que spammeur..

Filtrage du contenu dans l'éditeur de publication

J'ai toujours voulu pré-rempli l'éditeur de publication pour commencer à écrire avec un modèle de publication ou laisser des notes à vos auteurs? Vous pouvez, grâce au the_editor_content filtre.

Exemple: laisser des rappels à vos auteurs

Faisons l'exemple "laisser des notes pour les auteurs": si vous avez plusieurs choses à rappeler aux auteurs de votre blog, vous pouvez remplir l'éditeur de publication avec HTML en utilisant ce code:

  • Venez avec de bons tags pour le post,
  • Réglez l'heure de publication à 08h00 demain matin,
  • Changer la limace à une limace SEO-friendly,
  • Et supprimez ce texte, hehe.
  • '. "\ n \ n"; $ template. = 'Au revoir!'; return $ template; else return $ content; // Exemple de source: http://wpfilte.rs/the_editor_content/?>

    Changer la $ template variable avec tout ce que vous aimez et vous êtes prêt à partir!

    Fin de la deuxième partie

    Nous avons examiné le deuxième lot de 50 filtres dans cet article. J'espère que vous avez aimé et appris de nouvelles choses. On se voit dans le prochain!

    Je veux aussi entendre vos pensées. Que pensez-vous de ces filtres? Postez vos commentaires ci-dessous; et si vous avez aimé l'article, n'oubliez pas de le partager!