Comment utiliser les balises WordPress conditionnelles

licium Et quelques exemples pour résumer. Comment fonctionne une balise de condition dans une balise de condition WordPress une fonction WordPress renvoie une valeur booléenne basée sur différentes conditions au moment de l’appel. Les balises de condition sont des fonctions WordPress qui renvoient des valeurs booléennes, vraies ou fausses selon différentes conditions au moment de l’appel. Ces critères sont généralement expliqués dans le nom de la fonction. Les balises conditionnelles peuvent être appelées de n’importe où dans WordPress: thèmes, plugins et vos appels. Ils sont très utiles pour prendre des décisions conditionnelles oui ou non au besoin.
Par exemple, si nous écrivons quelque chose comme if (IS _ sticky Post ()) {} dans la boucle, les balises dans lamp;rsquoinstruction if namp;rsquoapparaîtront que lorsque le message actuel est collant:
Nous pouvons le faire: * environnement: Nous sommes en boucle, dans lamp;rsquoindex. Php *


amp;lt?php * Environment: Weamp;039re inside a theme template file that uses The Loop, like home.php or index.php * if ( have_posts() ) : while ( have_posts() ) : the_post() (Regular Loop contents will go here) if ( is_sticky_post() ) : This code will execute *only* for sticky posts! endif endwhile endif Nota la sintassi della nostra chiamata a is_sticky_post() . La maggior parte dei tag condizionali di WordPress iniziano con is_ , perché sono controlli di stato. E dal momento che sono spesso collegati a if() -statements, si leggono davvero come lamp;039inglese: amp;quotIf is sticky post, thenamp;quot
Alcuni tag condizionali WP che vale la pena discutere WordPress ha oltre 50 tag condizionali. Non li elencheremo tutti qui, ma ne indicheremo alcuni che sono particolarmente utili o particolarmente suscettibili di creare confusione (o entrambi). Utili tag condizionali di WordPress is_single() : è vero se la pagina che sta attualmente visualizzando è composta da un singolo post, di qualsiasi tipo di post eccetto Allegato (un file multimediale) o Pagina. is_page() : è vero se lamp;039elemento visualizzato è un singolo post del tipo di post amp;quotPaginaamp;quot predefinito di WordPress. is_singular() : simile a is_single() , ma sarà anche vero quando stai mostrando un post di tipo Allegato o Pagina. Equivale a is_single() || is_page() || is_attachment() is_single() || is_page() || is_attachment() is_single() || is_page() || is_attachment() , dove || significa amp;quotoamp;quot. is_archive() : è vero se la pagina corrente sta visualizzando una serie di archivi, sia per un autore, un intervallo di date, un tag, una categoria, ecc. is_main_query() : è true se la query corrente è la query principale per la pagina. Questo è davvero utile quando stai cercando di hackerare il processo di post-fetching su pre_get_posts , anche se, in tal caso, non lo stai utilizzando a livello globale, ma come metodo sullamp;039oggetto query passato dal filtro. Tag condizionali potenzialmente confusi is_admin() : è vero quando sei nellamp;039area di amministrazione di un sito WordPress. Questo può creare un poamp;039 di confusione, perché potresti erroneamente credere che ti dirà se lamp;039 utente corrente è un amministratore. is_dynamic_sidebar() : è vero se una qualsiasi delle barre laterali attualmente registrate (aree widget) ha widget attivi. Non proprio quello che ti aspetteresti, dal nome. is_home() : Questo è confuso. Potresti pensare che is_home() ti dirà se stai attualmente eseguendo il rendering della radice del tuo sito WordPress, come http:example.com . Questo non è esattamente il caso: WordPress ti consente di avere un sacco di post del blog nella radice del tuo sito o una amp;quotPrima pagina staticaamp;quot. Se il tuo sito ha una prima pagina statica, il tuo is_home() sarà false nella home page del sito ( example.com ) e true nellamp;039indice del blog del sito ( example.comblog ). In sintesi, is_home() equivale davvero a is_blog_posts_index() — che, purtroppo, non esiste. is_front_page() : is_front_page() è true se sei su una prima pagina statica o sullamp;039indice del tuo blog se non stai utilizzando una prima pagina statica. In altre parole, sarà sempre vero su example.com , qualunque cosa contenga quella pagina. Come puoi vedere, è un poamp;039 più come amp;quotè a casa?amp;quot rispetto a is_home() stesso. Questo è solo un elenco parziale dei tag condizionali che iniziano con is_ . Ce ne sono anche alcuni che iniziano con has_ (e altri che iniziano con nessuno dei due). Lamp;039elenco canonico è nel Codex, allamp;039indirizzo https:codex.wordpress.orgConditional_Tags.
Passaggio di parametri ai tag condizionali in WordPress Molti tag condizionali che valutano il post corrente, come is_singular() , is_home() e is_page() , hanno una caratteristica condivisa: accettano un parametro di funzione che ti consente di specificare un attributo aggiuntivo che il post deve soddisfare. A seconda della funzione, questo attributo può verificare lamp;039ID del post, lo slug del tipo di post o il titolo. Ecco alcuni esempi: is_singular( amp;039movie-reviewamp;039 ) verifica la presenza di un singolo post di tipo Movie Review. is_page( amp;039Weekly News Roundupamp;039 ) verifica la presenza di una pagina intitolata amp;quotRiepilogo notizie settimanaliamp;quot. is_single( 5 ) controlla un singolo post con un ID post di 5. Alcuni casi damp;039uso per i tag condizionali di WordPress Esistono infiniti modi per combinare gli oltre 50 tag condizionali forniti da WordPress per fare cose interessanti. Ecco alcuni casi damp;039uso comuni.
Utilizzo di tag condizionali nei file modello I tag condizionali sono molto comunemente usati nello sviluppo di temi WordPress. A volte un elemento in un file della gerarchia di modelli viene visualizzato in alcune situazioni in cui non lo desideri. Notes sur les balises conditionnelles et la hiérarchie des modèles WordPress pouvez utiliser les balises conditionnelles pour construire votre propre arbre de décision hiérarchique de modèle. Prenez l’exemple ci dessus à son maximum: Vous pouvez utiliser le marqueur de condition WordPress au lieu de toute la hiérarchie des modèles WordPress! Vous pouvez mettre tout le sujet dans lamp;rsquoindex. PHP et utiliser des balises conditionnelles pour prendre les mêmes décisions que la hiérarchie du modèle.
En fait, construisez votre thème de cette façon non
N est une bonne idée, mais sachez que camp;rsquoest possible et que lamp;rsquoéquivalence entre les balises conditionnelles et la hiérarchie du modèle devrait aider à mieux comprendre les deux. Pour une visualisation plus intuitive du sujet, consultez ce graphique (un de nos graphiques préférés): https:wphierarchy.com. Les balises conditionnelles facilitent la mise en file damp;rsquoattente des scripts et des styles uniquement sur les pages désirées. Parfois, voudrez peut être avoir une page personnalisée sur votre site Web qui a une apparence et un comportement très uniques. Peut être quamp;rsquoil y a beaucoup damp;rsquointeractions, différentes apparences, etc.
Pour ce faire, la page aura un certain nombre de fichiers JavaScript personnalisés et de feuilles de style css dont namp;rsquoavez besoin que. Sans justification, leur téléchargement sur un site Web ralentit la vitesse de chaque page. Heureusement, lamp;rsquoutilisation de balises conditionnelles peut facilement les ajouter à une seule page: * environnement: Nous sommes dans la fonctionnalité du thème actif. Php (ou fichier PHP dans le plug in de page spéciale) * fonction wpshout _ Special page () {if (! Is page (amp;lsquospecial page)) {return} WP _ enqueue script (amp;lsquospecial JSamp;rsquo, get Stylesheet Directory Uri ().amp;rsquo Spécial JSamp;rsquo) WP _ enqueue style (amp;lsquospecial CSSamp;rsquo, get Stylesheet Directory Uri ().amp;rsquo Spécial CSS
Notez que notre appel is _ page () doit en fait passer deux tests: est ce une page? Camp;rsquoest ce que _ page () contrôle lui même. La page a t elle une page spéciale pour les fentes? Pour vérifier cela, nous avons passé la
Et les styles ne samp;rsquoappliquent quamp;rsquoà des pages spécifiques. Instructions sur les balises de condition WordPress et l’état global l’état global WordPress doit être défini avant que les balises de condition puissent être utilisées correctement. Les balises conditionnelles accèdent à l’état global de WordPress, ainsi qu’à la situation en arrière plan, qui doit être définie avant qu’elles puissent être utilisées correctement. Par conséquent, ne pouvez pas utiliser les conditions WordPress de manière fiable tant que le processus WordPress

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

ContactPress Supported By WordPress Plugins