I tag condizionali sono una delle molte grandi strutture che WordPress deve aiutarci a sviluppare per WordPress più facilmente. In questo articolo, avremo modo di conoscerne alcuni e usarli in funzioni di esempio come rimuovere elementi dalle pagine di errore o modificare la favicon delle pagine di amministrazione.
Sono fondamentalmente domande "si-no": restituiscono solo VERO o FALSO quando le usi. Li usiamo dentro Se
dichiarazioni - se la dichiarazione è VERO o FALSO, possiamo elaborare il nostro codice in base al risposta.
Puoi vedere tutti i tag condizionali nel codice WordPress.
Ora, passiamo alla parte divertente! In questo articolo ci sono dieci grandi funzioni che utilizzano i tag condizionali.
is_front_page ()
Salutare il visitatore dalla home page potrebbe essere piacevole per il visitatore, oppure è possibile inserire un avviso per la manutenzione programmata, oppure è possibile visualizzare un annuncio popup orrendo. Qualunque cosa tu debba fare, ecco come lo fai:
Per prima cosa, devi ottenere il plugin jQuery di Colorbox qui. Ottenere colorbox.min.js dal "colorbox / colorbox"cartella e il colorbox.css (e il corrispondente "immagini"cartella" in un "scatola dei colori"cartella all'interno della cartella dei temi.
Quindi, è necessario creare un colorbox.load.js file per caricare il popup. Inserisci questo file nella "scatola dei colori"cartella anche:
jQuery (document) .ready (function ($) var $ popup = $ ("# mypopup"); $ .colorbox (href: $ popup););
Dopodiché, inserisci il tuo codice HTML popup (con "mypopup
"ID per CSS" all'interno del tema index.php file e nascondilo nel tuo style.css file (con "#mypopup display: none;
").
function front_popup () if (is_front_page ()) // load colorbox.min.js wp_enqueue_script ('colorbox-js', get_template_directory_uri (). '/ colorbox / colorbox.min.js', array ('jquery')) ; // carica colorbox.load.js wp_enqueue_script ('colorbox-load-js', get_template_directory_uri (). '/ colorbox / colorbox.load.js', array ('colorbox-js')); // carica colorbox.css wp_enqueue_style ('colorbox-css', get_template_directory_uri (). '/ colorbox / colorbox.css'); add_action ('wp_head', 'front_popup');
Incolla questo nel tuo functions.php file e sei a posto!
Nota: Per fare in modo che il tuo popup scompaia, devi aggiungere un link all'interno del tuo popup. Questo andrà bene:
Vicino
is_page ()
Potrebbe essere necessario caricare alcuni file JavaScript o CSS esterni per una pagina specifica, ad esempio la pagina "Informazioni" o una pagina di download per il tuo prodotto. Sì, puoi anche includerli nei tuoi contenuti ma non è una buona pratica. Ecco la buona pratica:
function extra_assets () if (is_page (123)) // '123' è l'ID della pagina che stiamo controllando per wp_enqueue_script ('my-script', get_template_directory_uri (). '/ some / path / in / your / tema / cartella / script.js'); wp_enqueue_style ('my-style', get_template_directory_uri (). '/ some / path / in / your / theme / folder / style.css'); add_action ('wp_head', 'extra_assets');
Come il primo esempio, aggiungendo questo nel tuo functions.php il file è sufficiente (Non dimenticare di cambiare il "123
"numero con l'ID della tua pagina!)
in_category ()
Non è sempre necessario, ma potresti aver bisogno di una sezione "Altro da questa categoria" per una categoria (ma non le altre). Di ', hai una categoria "Notizie" e le altre categorie non sono adatte alla sezione che creeremo. Il tag condizionale in_category ()
ci aiuterà con questo:
function more_from_category ($ cat_ID) if (in_category ($ cat_ID) $ posts = get_posts ('numberposts = 5 & category ='. $ cat_ID); $ output = 'Altro da questa categoria
'; $ output. = '
Costruisci questa funzione come desideri e aggiungila al tuo functions.php file. Quindi, vai al single.php e inserire il codice () dove vuoi che la sezione appaia. Tutto ciò che devi considerare è inserire il codice all'interno di The Loop. È tutto!
is_preview ()
Questo non è un must (dopotutto, stiamo solo imparando esempi per questi Tag Condizionali) ma potrebbe essere una buona idea ricordare a te stesso (o ai tuoi autori) che la pagina visualizzata è la pagina di "anteprima". Aggiungi questo al tuo tema functions.php file:
function preview_warning () if (is_preview ()) echo 'Ricorda, sei ancora nella pagina di anteprima!'; add_action ('the_content', 'preview_warning');Certo, questo non è abbastanza - devi modificare il file style.css per dare una forma al testo di avviso. Qualcosa come questo:
# preview-warning background: # 800; line-height: 50px; font-size: 30px; font-weight: bold; text-align: center; position: fixed; bottom: 0;Ecco qua!
Funzione 5. Rimuovi alcuni elementi dalle tue 404 pagine con
is_404 ()
Questo è il consiglio più facile di tutti. Non penso che abbia nemmeno bisogno di una spiegazione - avvolgi solo quegli "elementi certi" (cose che non vuoi mostrare nelle pagine di errore, come le pubblicità) con il codice qui sotto e sei a posto!
if (! is_404 ()) // Ecco che arriva "certi elementi". È così facile Sul serio.
Funzione 6. Non mostrare mai più gli estratti generati automaticamente
has_excerpt ()
Io solo odiare gli estratti auto-generati. Quindi li rimuovo - con il codice effettivamente fornito dal Codex:
function full_excerpt () if (! has_excerpt ()) echo "; else echo get_the_excerpt ();Aggiungi questo nel functions.php file e quindi tutto quello che devi fare è cambiare le istanze di
the_excerpt ()
confull_excerpt ()
.
Funzione 7. Elencare solo i titoli dei post (anziché i post completi) sugli archivi basati su data con
is_date ()
A volte, elencare solo i titoli è più che sufficiente su determinate pagine di archivio, come gli archivi basati sulla data. Quindi, ad esempio il tag condizionale
is_date ()
, ci libereremo delle cose in The Loop tranne il titolo.Questo è un po 'complicato dal archive.php i file sono diversi per ogni tema. (E se c'è un date.php file nel tuo tema, dovresti modificare quello.) Cerca The Loop nel codice e cambia il codice all'interno di The Loop con questo:
if (is_date ()) // Se il tuo tema usa i titoli h2 per i titoli dei post, usa h2. Se usa h1, usa h1. eco ''.il titolo().'
'; else // ... // Il codice originale all'interno di The Loop // ...
Funzione 8. Un Favicon separato per il tuo pannello di amministrazione con
is_admin ()
Questo suggerimento potrebbe essere molto utile se ti piace lavorare con 20 schede aperte, tutte per il tuo blog. Modifica un po 'la tua favicon e salvala come adminfav.ico - ad esempio, la mia favicon del pannello di amministrazione è solo il rosso versione della mia favicon originale.
Ad ogni modo, ecco come lo fai:
function admin_favicon () if (is_admin ()) echo ''; add_action ('admin_head', 'admin_favicon');
Funzione 9. Mostra una miniatura predefinita se il post non ne ha uno
has_post_thumbnail ()
Questo è un must per un buon tema. Se hai qualche parte nel tuo tema in cui vengono mostrate le miniature delle immagini in primo piano, tu dovrebbero sostituisci il
the_post_thumbnail ()
funziona con il codice qui sotto:if (has_post_thumbnail ()) the_post_thumbnail (); else echo '';In questo modo puoi mantenere la coerenza degli sguardi del tuo tema.
Funzione 10. Mostra un menu speciale per i tuoi membri loggati con
is_user_logged_in ()
Se si utilizza il sistema di appartenenza in WordPress e si hanno membri, è possibile creare un menu speciale solo per i membri registrati. Ecco come:
function member_menu () if (is_user_logged_in ()) echo '';Menu membro
- Prima voce del menu
- Seconda voce di menu
- Terza voce di menu
Questo è un codice standard "titolo & elenco", dovresti giocare con il codice per renderlo simile alla tua barra laterale
div
s e quindi inserire il codicenel tuo tema sidebar.php file.
Inoltre, questo è solo un esempio, ma idealmente useresti i menu personalizzati WordPress
wp_nav_menu ()
Qui. Uno standard e uno per i membri, quindi è possibile continuare a gestirli dalla dashboard dell'amministratore di WordPress. Puoi leggere di più suwp_nav_menu ()
funzione qui.
Altre idee?
Queste erano le mie 10 idee preferite per usare i Tag Condizionali. E i tuoi? Se avete qualcosa da condividere, si prega di commentare qui sotto in modo che possiamo estendere questo post con più idee!