Den ultimate guiden til WordPress betingelsesmerker

Betingede tagger for WordPress er en flott funksjon i WordPress som lar deg kontrollere hvilket innhold som vises på en side. Det er betingede koder for forskjellige områder på nettstedet ditt, for eksempel hjemmesiden din, blogginnlegg og sider. Dette lar deg endre det som vises på nettstedet ditt. For eksempel kan du endre nettstedets logo på forskjellige områder av nettstedet.


I denne opplæringen skal jeg forklare hvilke betingede koder som er tilgjengelige for deg og vise deg hvordan de kan brukes i temaer og plugins.

Slik fungerer WordPress betingelsesmerker

Betingede koder er en boolesk datatype som bare kan returnere sann eller usann. Merkelappen is_home () refererer for eksempel til bloggindeksen. Vi kan bruke denne taggen til å vise en melding til besøkende på bloggen. Denne meldingen vises ikke andre steder.

Koden er enkel. Alt vi gjør nedenfor er å sjekke om siden som vises er bloggens indeksside. Hvis det er, viser vi meldingen.

<?php

if (is_home ()) {

ekko "Velkommen til bloggen vår!!";

}

?>

Ovennevnte er et grunnleggende eksempel på hva som kan oppnås ved bruk av betingede koder, men det er egentlig alt som er til det. Du sjekker ganske enkelt hvilken type side som vises. Avhengig av om resultatet er sant eller usant, handles et annet stykke kode.

Før vi ser på flere eksempler på hvordan betingede koder kan brukes, la oss først se på populære betingede koder som du sannsynligvis vil se brukt i WordPress-temaene dine.

  • is_home () – Sjekker om blogginnleggsindeksen vises. Dette er kanskje ikke hjemmesiden din også.
  • is_front_page () – Sjekker om hjemmesiden din vises. Dette fungerer enten innstillingene dine på forsiden er konfigurert til å vise blogginnlegg (dvs. bloggindeks) eller en statisk side.
  • er singel() – Kontroller om noen type innlegg vises (unntatt vedlegg).
  • is_attachment () – Sjekker om et vedlegg vises.
  • is_page () – Sjekker om en side vises.
  • is_singular () – Sjekker om et enkelt innlegg, vedlegg eller side vises. True returneres hvis en av disse betingelsene er oppfylt.
  • is_category () – Sjekker om en kategoriarkivside vises.
  • is_search () – Sjekker om en søkeresultatside vises.
  • is_tag () – Sjekker om et taggarkiv vises.
  • is_author () – Sjekker om en forfatterarkivside vises.
  • is_archive () – Sjekker om noen type arkivside vises, inkludert kategori, tag, dato og forfatterarkiver.
  • is_sticky () – Sjekker om et innlegg er definert som klissete.
  • is_multi_author () – Sjekker om mer enn en forfatter har publisert innlegg på nettstedet. True returneres hvis to eller flere personer har publisert innlegg. Hvis bare en forfatter har publisert innlegg, eller hvis det ikke er publisert noen innlegg i det hele tatt, returneres falske.

Det er seks tidsbaserte betingede koder som du også vil finne nyttige. Disse kodene refererer til datoarkivsider. For eksempel er nettadressen http://www.yourwebsite.com/2013/12/ en månedsbasert arkivside.

Hvis noen av de følgende betingede taggene returnerer true, vil is_archive () også være sant.

  • is_date () – Sjekker om det er en datobasert arkivside.
  • is_year () – Sjekker om det er en årsbasert arkivside.
  • is_month () – Sjekker om det er en månedsbasert arkivside.
  • is_day () – Sjekker om det er en dagsbasert arkivside.
  • tiden er inne() – Sjekker om det er en tidsbasert arkivside.
  • is_new_day () – Sjekker om i dag er en ny dag. Hvis det nåværende innlegget ble publisert på en annen dag enn det forrige innlegget som ble publisert, ville det returnert. Falske vil bli returnert hvis begge innleggene ble publisert samme dag.

Du vil komme over betingede koder som is_home () og is_single () ofte, men du trenger ikke å huske alle disse betingede taggene. De fleste WordPress-brukere henviser til WordPress-kodeksen for den aktuelle betingede taggen når de trenger å sette opp en betinget funksjon.

Eksempler på betingede tagger

Mange betingede koder lar parametere sendes til funksjonen. Dette gir deg mye mer kontroll over hvilke betingelser som må oppfylles før noe blir handlet. is_page () er et godt eksempel på dette. Koden lar deg sjekke om siden som vises er en side. is_page () vil returnere en verdi av true hvis noen side vises, men du må angi parameteren $ page hvis du vil være mer spesifikk. Parameteren på $ siden kan være side-ID, sidetittel eller sideslug.

La oss vurdere et vanlig nettsted som har en om-side, og du vil tilpasse om-siden annerledes enn alle andre sider. For eksempel kan du vise et bilde av selskapet ditt øverst på sidefeltet, eller du kan vise ytterligere informasjon nederst på siden om.

For å gjøre dette, må du definere parameteren $ siden. Hvis side-ID-en var 10, kan du åpne opp betingelseserklæringen din med noe slikt:

if (er_side (10)) {

En spesifikk side kan også spesifiseres ved å føre sidetittelen til funksjonen.

if (is_page (‘Om oss’)) {

Sidesluggen kan også brukes. Som du husker, er sidesluggen den unike navngitte identifikatoren på slutten av nettadressen. Hvis URL-en om siden din var www.yourwebsite.com/about-our-company/, ville sidesluggen være om-vårt selskap.

if (is_page (‘om-vårt selskap’)) {

Noen betingede koder, for eksempel is_page (), kan også passere parametere i en matrise. Følgende betingede uttalelse vil returnere en verdi av true hvis noen av betingelsene er sanne.

if (is_page (matrise (10, ‘Om oss’, ‘om-vårt selskap’))) {

Det er vanlig at utviklere setter mer enn en betingelse når de bruker betingede koder. La oss gå tilbake til den enkle oppgaven å vise en velkomstmelding til bloggbesøkende. Dette er noe som et bedriftsnettsted ønsker å legge til bloggområdet sitt, men ikke til andre områder på nettstedet (f.eks. Hjemmeside, kontaktside, om side osv.).

De kan gjøre dette ved å bruke betingede tagger is_home () og is_single (); som representerer henholdsvis blogginneksen og enkeltinnleggene. For å vise en melding i begge områdene, må du bruke den logiske ELLER-operatøren ||. Dette er illustrert i koden nedenfor. Den første hvis uttalelsen sjekker om siden er blogginneksen eller et enkelt innlegg. Hvis en av dem er sant, vises meldingen.

<?php

if (is_home () || is_single ()) {

ekko "Velkommen til bloggen vår!!";

}

?>

En annen logisk operatør som er veldig nyttig er AND-operatøren &&. Dette brukes når du vil at to eller flere forhold skal være sanne før noe blir handlet. Følgende hvis uttalelse sjekker om en side både er en arkivside og kategorisert under nyhetskategorien. På nyhetskategorisidene vises velkomstmeldingen. Ingenting vil bli vist i andre kategorier.

<?php

if (is_archive () && is_category (‘Nyheter’)) {

ekko "Velkommen til Nyhetsarkivet";

}

?>

AND og OR operatører kan kombineres. Eksemplet nedenfor er hentet frafunksjonene.php-malen til standard WordPress-tema Twenty Thirteen. Funksjonen brukes til å vise sidetittelen i nettleseren, men bare en del av funksjonen vises nedenfor.

If-setningen returnerer en verdi av true hvis det er en nettstedsbeskrivelse og brukeren ser på blogginneksen eller hjemmesiden. Områdebeskrivelsen kan legges inn via feltlinjen i det generelle innstillingsområdet. Hvis du fyller ut dette feltet, vil tittellinjen på bloggeindeksen og hjemmesiden vise “Nettstittel | Nettstedbeskrivelse ”(merk: skillet vises ved å bruke strengen $ sep i koden nedenfor). Hvis du ikke gjør det, vil tittellinjen vise “Nettstittel”.

Som du ser blir is_home og _is_front_page sett på som en enkelt enhet på grunn av OR-operatøren. Dette er grunnen til at de er pakket inn i parentes.

if ($ site_description && (is_home () || is_front_page ()))
$ tittel = "$ title $ sep $ site_description";

En annen logisk PHP-operatør du kan bruke er ikke operatøren !. Dette er mer praktisk å bruke under mange omstendigheter. La oss for eksempel si at du vil vise et bilde på alle sidene dine bortsett fra arkivene dine. Det er ikke nødvendig å sette opp en lang betinget uttalelse som spør “Er dette hjemmesiden, er dette et enkelt innlegg, er dette en side…”. Det er mer praktisk å bare spørre “Er dette ikke en arkivside?”.

For å gjøre dette, bare legg til et utropstegn før den betingede taggen. Koden nedenfor viser hvor enkelt dette er i praksis. Det vil vise et bilde på hver side på nettstedet ditt unntatt arkivsider.

<?php

if (! is_archive ()) { ?>

<?php

}

?>

Frem til nå har vi sett på grunnleggende eksempler på at betingede tagger blir brukt der noe enten er handlet eller det ikke blir handlet (dvs. hvis A er sant, gjør B). I praksis er det vanligvis en annen handling å gjøre hvis en betingelse ikke er oppfylt. I tillegg kan det være flere betingelser som kan oppfylles, med forskjellig respons til hver enkelt.

I stedet for å skrive mange individuelle utsagn for dette, er det praktisk å bruke ellers og ellers utsagn. Dette gir deg en større grad av kontroll over hva som vises på nettstedet ditt.

Vi kan vise dette ved hjelp av et eksempel. La oss si at du vil vise en annen logo på nettstedet ditt i forskjellige områder av nettstedet ditt. Hvordan vil du gjøre dette? Svaret er enkelt: Vi bruker andre uttalelser og annet. Koden nedenfor viser hvordan dette kan oppnås.

<?php

if (is_home () || is_front_page ()) { ?>

<?php

} elseif (is_category ()) { ?>

<?php

} elseif (is_single ()) { ?>

<?php

} elseif (is_page ()) { ?>

<?php

}

ellers { ?>

<?php

}

?>

Avhengig av hvilket område på nettstedet en besøkende ser, vil en av fem logoer vises med koden ovenfor. Det er et grunnleggende eksempel som illustrerer hvor enkelt annet og annet uttalelser kan brukes til å kontrollere mange forskjellige områder på nettstedet ditt.

Elseif-uttalelser brukes også i andre deler av WordPress. De fleste features.php-maler bruker dem, og mange WordPress-temaer bruker dem til å endre hvordan nettstedets tittel vises i nettlesere.

Mer betingede merker

Det er en rekke ekstra betingede koder tilgjengelig. Mange av disse brukes av utviklere i temaer og plugins.

Nedenfor er en liste over noen av de andre betingede taggene som er tilgjengelige for deg.

  • is_tax () – Sjekker om en tilpasset taksonomiarkivside vises.
  • has_term () – Sjekker om det gjeldende innlegget har en av de spesifiserte vilkårene.
  • taxonomy_exists () – Sjekker om taksonominavnet eksisterer.
  • post_type_exists () – Sjekker om det finnes en posttype.
  • is_post_type_hierarchical ($ post_type) – Sjekker om posttypen er hierarkisk.
  • is_post_type_archive () – Sjekker om arkivsiden for en spesifikk posttype vises.
  • is_comments_popup () – Kontrollerer om popup-vinduet for kommentarer er åpent.
  • comments_open () – Sjekker om kommentarer er tillatt for det nåværende innlegget eller siden.
  • pings_open () – Sjekker om pinger er tillatt for gjeldende innlegg eller side.
  • is_feed () – Sjekker om gjeldende spørring er for en innmating.
  • is_404 () – Sjekker om en 404-feil vises.
  • is_paged () – Sjekker om siden du ser på for øyeblikket er en annen side med side. Innlegg og sider blir paginert når du bruker neste side quicktag i innholdet ditt for å dele opp store innlegg.
  • is_trackback () – Sjekker om en trackback brukes.
  • is_admin () – Sjekker om brukeren er logget inn i administratorområdet. Det brukes ikke til å sjekke om en bruker har administratorrettigheter, bare om de er logget inn på WordPress-dashbordet.
  • is_page_template () – Sjekker om siden som vises bruker en sidemal. En spesifikk sidemal kan defineres om nødvendig.
  • is_preview () – Sjekker om et blogginnlegg blir sett i utkastmodus.
  • has_excerpt () – Sjekker om det nåværende innlegget har et utdrag. Spesifikke innlegg kan defineres.
  • has_nav_menu () – Sjekker om en menyplassering har en meny tilordnet. Dette brukes av temautviklere for å vise noe i tilfelle at brukeren ikke har lagt til en meny.
  • i Løkken() – Kontrollerer om innringeren fremdeles er innenfor WordPress-loopen.
  • is_active_sidebar ($ indeks) – Sjekker om en gitt sidefelt blir brukt.
  • is_multisite () – Sjekker om flerside støttes.
  • is_main_site () – Sjekker om en flerside er hovednettstedet i nettverket.
  • is_super_admin () – Sjekker om en bruker er en superadministrator i nettverket.
  • is_plugin_active ($ plugin) – Sjekker om en plugin er aktivert.
  • is_child_theme () – Sjekker om et barnetema blir brukt.
  • current_theme_supports ($ -funksjon) – Sjekker om et tema støtter en spesifikk funksjon, for eksempel innleggsformater eller kjente bilder.

Sjekk også: Slik fjerner du standardtaksonomier.

Betingede koder er et viktig WordPress-konsept. På grunn av hvor nyttige de er, er det få WordPress-temaer som er designet uten dem. Når du har forstått ellers uttalelser, ellers uttalelser og logiske operatører som AND, OR og Not; vil du kunne takle enhver betinget funksjon.

Jeg håper denne guiden hjalp deg med å lære hvordan du bruker WordPress betingede koder i temaene dine.

Hvis du likte denne artikkelen, kan du bli med på ThemeLab på Twitter.

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map