Voorwaardelijke tags zijn een van de vele geweldige structuren die WordPress ons moet helpen ontwikkelen voor WordPress eenvoudiger te maken. In dit artikel zullen we een aantal van hen leren kennen en ze gebruiken in voorbeeldfuncties zoals dingen verwijderen van de foutpagina's of het favicon van beheerderspagina's wijzigen.
Het zijn in wezen "ja-nee vragen": ze keren alleen TRUE of FALSE terug als je ze gebruikt. We gebruiken ze in als
- als de verklaring WAAR is of NIET WAAR, kunnen we onze code verwerken volgens de antwoord.
U kunt alle voorwaardelijke tags in de WordPress Codex bekijken.
Laten we nu naar het leuke gedeelte gaan! Er zijn tien geweldige functies met voorwaardelijke tags in dit artikel.
is_front_page ()
Begroeting van de bezoeker vanaf de startpagina kan prettig zijn voor de bezoeker, of u kunt een waarschuwing plaatsen voor gepland onderhoud, of u kunt een vreselijke pop-upadvertentie weergeven. Wat je ook moet doen, dit is hoe je het doet:
Eerst moet je de Colorbox jQuery-plug-in hier downloaden. Krijgen colorbox.min.js van de "colorbox / colorbox"map en de colorbox.css (en de daarbij behorende "afbeeldingen"map) naar een"Kleurdoos"map in uw themamap.
Vervolgens moet u een maken colorbox.load.js bestand om de pop-up te laden. Plaats dit bestand in de "Kleurdoos"map, ook:
jQuery (document) .ready (function ($) var $ popup = $ ("# mypopup"); $ .colorbox (href: $ popup););
Plaats daarna uw pop-up HTML-code (met de "mypopup
"ID voor CSS) in je thema's index.php bestand en verberg het in uw style.css bestand (met "#mypopup display: none;
").
function front_popup () if (is_front_page ()) // laad colorbox.min.js wp_enqueue_script ('colorbox-js', get_template_directory_uri (). '/ colorbox / colorbox.min.js', array ('jQuery')) ; // laad colorbox.load.js wp_enqueue_script ('colorbox-load-js', get_template_directory_uri (). '/ colorbox / colorbox.load.js', array ('colorbox-js')); // laad colorbox.css wp_enqueue_style ('colorbox-css', get_template_directory_uri (). '/ colorbox / colorbox.css'); add_action ('wp_head', 'front_popup');
Plak dit in jouw functions.php bestand en je bent klaar om te gaan!
Notitie: Om je pop-up te laten verdwijnen, moet je een link toevoegen in je pop-upvenster. Dit komt goed:
Dichtbij
is_page ()
Mogelijk moet u een aantal externe JavaScript- of CSS-bestanden laden voor een specifieke pagina, zoals uw 'Over' -pagina of een downloadpagina voor uw product. Ja, je kunt ze ook opnemen in je inhoud, maar het is geen goede oefening. Dit is de goede gewoonte:
function extra_assets () if (is_page (123)) // '123' is de ID van de pagina die we controleren wp_enqueue_script ('my-script', get_template_directory_uri (). '/ some / path / in / your / thema / map / script.js'); wp_enqueue_style ('my-style', get_template_directory_uri (). '/ some / path / in / jouw / theme / folder / style.css'); add_action ('wp_head', 'extra_assets');
Like het eerste voorbeeld door dit toe te voegen aan je functions.php bestand is genoeg. (Vergeet niet om de "123
"nummer met uw pagina-ID!)
in_category ()
Het is niet altijd nodig, maar je hebt misschien een sectie 'Meer van deze categorie' nodig voor een categorie (maar niet voor de andere). Stel dat u een categorie 'Nieuws' heeft en de andere categorieën niet geschikt zijn voor de sectie die we gaan maken. De voorwaardelijke tag in_category ()
zal ons daarbij helpen:
function more_from_category ($ cat_ID) if (in_category ($ cat_ID) $ posts = get_posts ('numberposts = 5 & category ='. $ cat_ID); $ output = 'Meer uit deze categorie
'; $ output. = '
Bouw deze functie naar eigen inzicht en voeg deze toe aan uw functions.php het dossier. Ga dan naar de single.php en plaats de code () waar u het gedeelte wilt laten verschijnen. Het enige dat u hoeft te overwegen, is om de code in The Loop te plaatsen. Dat is alles!
is_preview ()
Dit is geen must (we leren immers alleen voorbeelden voor deze voorwaardelijke tags), maar het is misschien een goed idee om jezelf (of je auteurs) eraan te herinneren dat de pagina die wordt weergegeven de "voorbeeldpagina" is. Voeg dit toe aan uw thema's functions.php het dossier:
function preview_warning () if (is_preview ()) echo 'Vergeet niet dat je nog steeds op de voorbeeldpagina bent!'; add_action ('the_content', 'preview_warning');Dit is natuurlijk niet genoeg - je moet het style.css om de waarschuwingstekst vorm te geven. Iets zoals dit:
# preview-warning background: # 800; line-height: 50px; font-size: 30px; font-weight: bold; text-align: center; position: fixed; bottom: 0;Daar ga je!
Functie 5. Verwijder bepaalde elementen van uw 404 pagina's met
is_404 ()
Dit is de gemakkelijkste tip van allemaal. Ik denk niet dat het zelfs een uitleg nodig heeft - pak gewoon die "bepaalde elementen" (dingen die je niet op je foutpagina's wilt weergeven, zoals advertenties) met de onderstaande code en je bent klaar om te gaan!
if (! is_404 ()) // Hier komt de "bepaalde elementen". Het is zo makkelijk. Ernstig.
Functie 6. Nooit automatisch gegenereerde fragmenten opnieuw weergeven met
has_excerpt ()
Ik gewoon een hekel hebben aan de automatisch gegenereerde fragmenten. Dus ik verwijder ze - met de code die feitelijk uit de Codex komt:
function full_excerpt () if (! has_excerpt ()) echo "; else echo get_the_excerpt ();Voeg dit toe aan de functions.php bestand en dan alles wat u hoeft te doen is de instanties van wijzigen
the_excerpt ()
metfull_excerpt ()
.
Functie 7. Noem alleen de berichttitels (in plaats van volledige berichten) op datumgebaseerde archieven met
is_date ()
Soms is het vermelden van alleen de titels meer dan genoeg op bepaalde archiefpagina's - zoals de op datum gebaseerde archieven. Dus bijvoorbeeld de voorwaardelijke tag
is_date ()
, we zullen de dingen in The Loop kwijtraken behalve de titel.Dit is een beetje lastig sinds de archive.php bestanden zijn verschillend in elk thema. (En als er een is date.php bestand in je thema, zou je die moeten bewerken.) Zoek naar The Loop in de code en verander de code in The Loop met dit:
if (is_date ()) // Als uw thema h2-kopjes gebruikt voor berichttitels, gebruikt u h2. Als h1 wordt gebruikt, gebruik dan h1. echo ''.de titel().'
'; else // ... // De originele code in The Loop // ...
Functie 8. Een afzonderlijk Favicon voor uw beheerderspaneel met
is_admin ()
Deze tip kan best handig zijn als je graag met 20 open tabbladen werkt, allemaal voor je blog. Bewerk gewoon je favicon een beetje en sla het op als adminfav.ico - mijn favicon van het beheerderspaneel is bijvoorbeeld gewoon rood versie van mijn originele favicon.
Hoe dan ook, hier is hoe je het doet:
function admin_favicon () if (is_admin ()) echo ''; add_action ('admin_head', 'admin_favicon');
Functie 9. Toon een standaardminiatuur als het bericht er geen heeft
has_post_thumbnail ()
Dit is een beetje een must voor een goed thema. Als je een deel hebt in je thema waar de miniaturen van de aanbevolen afbeeldingen worden getoond, jij moeten vervang de
the_post_thumbnail ()
functies met de onderstaande code:if (has_post_thumbnail ()) the_post_thumbnail (); else echo '';Op deze manier kunt u de consistentie van de looks van uw thema behouden.
Functie 10. Toon een speciaal menu voor uw ingelogde leden met
is_user_logged_in ()
Als u het lidmaatschapssysteem in WordPress gebruikt en leden hebt, wilt u misschien een speciaal menu maken voor alleen uw ingelogde leden. Hier is hoe:
function member_menu () if (is_user_logged_in ()) echo '';Lidmenu
- Eerste menu-item
- Tweede menu-item
- Derde menu-item
Dit is een standaard "titel & lijst" -code, u zou met de code moeten spelen om het als uw zijbalk te maken
div
s en plaats dan de codein je thema's sidebar.php het dossier.
Dit is ook slechts een voorbeeld, maar idealiter zou je WordPress aangepaste menu's gebruiken met
wp_nav_menu ()
hier. Eén standaard en één voor leden, dan kunt u ze blijven beheren vanuit uw WordPress-beheerdersdashboard. U kunt meer lezen over dewp_nav_menu ()
functie hier.
Alle andere ideeën?
Dit waren mijn favoriete 10 ideeën om voorwaardelijke tags te gebruiken. Hoe zit het met die van jou? Als je iets te delen hebt, reageer hieronder dan kunnen we dit bericht uitbreiden met meer ideeën!