Nous utilisons tous des déclarations conditionnelles dans nos développements sous WordPress, non? Mais savez-vous tout intégré Balises conditionnelles WordPress? Ils sont tout simplement géniaux car grâce à ces balises, il est très facile de créer des instructions conditionnelles. Vous pouvez par exemple afficher du contenu uniquement pour certains utilisateurs, ou charger des scripts uniquement si une page utilise un modèle personnalisé spécifique, ou même styliser une publication si cette publication est persistante.

Les balises conditionnelles peuvent être utilisées dans vos thèmes ou dans vos plugins, cela n’a pas d’importance, mais notez que dans certains plugins, il sera parfois un peu délicat d’utiliser certaines balises (en fait toutes les balises spécifiques aux thèmes).

Balises conditionnelles disponibles

Voici la liste des fonctions conditionnelles disponibles:

Vous en connaissez probablement quelques-uns, mais connaissez-vous vraiment la différence entre is_single_ () et is_singular ()? Ou entre id_day () et is_date ()? Saviez-vous que is_preview ()? Pour comprendre le fonctionnement de chaque fonction, cliquez simplement sur le nom de la balise et lisez attentivement les instructions du codex.

Toutes les balises conditionnelles renvoient TRUE ou FALSE

Les balises conditionnelles sont l’une de mes fonctionnalités intégrées préférées de WordPress et je vous encourage vraiment à les utiliser largement dans vos codes. Toutes les fonctions renvoient toujours TRUE ou FALSE, jamais d’ID ou de array ().

Une relation étroite avec la hiérarchie des modèles

Comme vous le savez peut-être, WordPress utilise un modèle vraiment puissant hiérarchie système. Eh bien, l’utilisation de balises conditionnelles est étroitement liée à cette hiérarchie. C’est le principe utilisé pour sélectionner le modèle de page à utiliser en fonction de l’URL que vous visitez.

Les balises conditionnelles acceptent de nombreux arguments

Lorsque vous utilisez ces balises conditionnelles, vous devez savoir que vous pouvez leur transmettre différentes variables telles que des ID, des slug ou des tableaux. Voici un exemple tiré du codex avec la fonction is_author ():

is_author ()
Lorsqu’une page d’auteur est affichée.
is_author ('4')
Lorsque la page d’archive pour le numéro d’auteur (ID) 4 est affichée.
is_author ('Vivian')
Lorsque la page d’archive de l’auteur avec le surnom «Vivian» est affichée.
is_author ('john-jones')
Lorsque la page d’archive de l’auteur avec le nom «john-jones» est affichée.
is_author (tableau (4, 'john-jones', 'Vivian'))
Lorsque la page d’archive de l’auteur est soit l’ID utilisateur 4, soit nom_nique_utilisateur «John-jones», ou surnom «Vivian».

Exemples

C’est ainsi que fonctionnent presque toutes les fonctions conditionnelles, mais vous pouvez bien sûr combiner de nombreuses conditions:

if ( is_home() && in_category( array( 9, 'blue-cheese', 'Stinky Cheeses' ) ) ) {
   the_content();
}
else {
   the_excerpt();
}

ou vous pouvez faire une action si une situation ou une autre se produit:

if ( is_home() || in_category( array( 9, 'blue-cheese', 'Stinky Cheeses' ) ) ) {
   the_content();
}
else {
   the_excerpt();
}

Et si vous voulez faire une condition négative, utilisez “! “:

$paged = $wp_query->get( 'page' );

if ( ! $paged || $paged < 2 ) 
{
    // This is not a paginated page (or it's simply the first page of a paginated page/post)
} 
else 
{
   // This is a paginated page.
}

Et enfin, l’utilisation de balises conditionnelles est comme toute autre instruction PHP «else if»:

if ( is_page( 'about' ) || '2' == $post->post_parent ) {    
    // the page is "About", or the parent of the page is "About"
    $bannerimg = 'about.jpg';

} elseif ( is_page( 'learning' ) || '56' == $post->post_parent ) {   
    $bannerimg = 'teaching.jpg';

} elseif ( is_page( 'admissions' ) || '15' == $post->post_parent ) { 
    $bannerimg = 'admissions.jpg';

} else { 
    $bannerimg = 'home.jpg'; // just in case we are at an unclassified page, perhaps the home page
}   

Création de balises conditionnelles personnalisées

Dans certains cas, vous devez créer vos fonctions conditionnelles personnalisées. C’est assez facile à faire, mais très souvent, les noms de fonctions ne suivent pas la même logique que celle utilisée par les développeurs principaux. Veuillez utiliser la même convention de dénomination en utilisant un préfixe tel que “est_“,”a_“,”dans_«. Ceci est particulièrement utile si vous n’êtes pas la seule personne à travailler sur un script spécifique.

Share: