Tovább a tartalomhoz

Szintaxis és operátorok

A feltételek felépítése, az összehasonlító operátorok, több feltétel kombinálása és a különleges értékek.

Egy meta box vagy mező láthatóságát a visible (megjelenik) és a hidden (rejtett) beállítással adhatod meg:

'visible' => [ 'mező', 'operátor', 'érték' ],
'hidden' => [ 'mező', 'operátor', 'érték' ],
Elem Jelentés
mező A Meta Box mező azonosítója, vagy egy HTML-elem azonosítója, amellyel összehasonlítasz.
operátor Az összehasonlítás módja: =, >=, <=, >, <, !=, in, contains, between, starts with, ends with, match. Mindegyik megfordítható a not előtaggal. Elhagyható, alapértéke =.
érték Az az érték, amellyel összehasonlítasz.

Ha az operátor =, kihagyhatod:

'visible' => [ 'mező', 'érték' ],
'hidden' => [ 'mező', 'érték' ],

Az egyszerű operátorok (=, !=, >, <, >=, <=) egyértelműek. A többi operátor működése:

Operátor Mit vizsgál
contains A mező értéke tartalmazza-e a megadott szöveget vagy értéket.
in A mező értéke szerepel-e a megadott értéktömbben.
between A mező értéke a két megadott érték közé esik-e.
starts with A mező értéke a megadott szöveggel kezdődik-e.
ends with A mező értéke a megadott szöveggel végződik-e.
match A mező értéke illeszkedik-e a megadott reguláris kifejezésre.

Szövegmezőnél azt nézi, hogy a mező értéke tartalmazza-e a megadott szövegrészt:

'visible' => [ 'brand', 'contains', 'pp' ]

Több értékű mezőnél (jelölőnégyzet-lista, többszörös kiválasztás) azt vizsgálja, hogy a mező értéke (ami ilyenkor tömb) tartalmazza-e az adott értéket:

'visible' => [ 'brand', 'contains', 'Apple' ]

A taxonomy_advanced mezőnél az értéknek a kifejezés (term) azonosítóját add meg. Például így ellenőrizheted, hogy van-e kiválasztott érték:

'visible' => [ 'product_type', 'contains', 4 ]

Azt ellenőrzi, hogy a mező értéke szerepel-e a megadott értékek között:

'visible' => [ 'brand', 'in', [ 'Apple', 'Samsung' ] ]

Több értékű mezőnél (például checkbox_list) akkor teljesül, ha a kiválasztott értékek bármelyike szerepel a megadott tömbben. A fenti példa ilyenkor akkor jelenik meg, ha az „Apple” vagy a „Samsung” közül legalább az egyik ki van jelölve.

taxonomy_advanced mezőnél kifejezés-azonosítókat adj meg:

'visible' => [ 'product_type', 'in', [ 2, 4 ] ]

Azt ellenőrzi, hogy a mező értéke a megadott legkisebb és legnagyobb érték közé esik-e. Számokon kívül dátum- és időmezőkkel is működik.

Például egy released_date dátummező értéke 2015. június 1. és 2015. december 1. között:

'visible' => [ 'released_date', 'between', [ '2015-06-01', '2015-12-01' ] ]
'visible' => [ 'brand', 'starts with', 'App' ]
'visible' => [ 'brand', 'ends with', 'le' ]

A mező értékét reguláris kifejezéssel veti össze:

'visible' => [ 'brand', 'match', '[a-z]$' ]

A not az operátorok jelentését megfordítja. Így lesz belőlük: not contains, not in, not match, not starts with, not ends with, not between.

Egy meta boxra vagy mezőre több feltételt is megadhatsz. Alapértelmezés szerint a feltételek mindegyikének teljesülnie kell:

'visible' => [
[ 'brand', 'Apple' ],
[ 'released_year', 'between', [ 2010, 2015 ] ],
],

Ha elég, hogy az egyik teljesüljön, tedd a feltételeket a when kulcs alá, és add meg a relation kulcsot or értékkel:

'visible' => [
'when' => [
[ 'brand', 'Apple' ],
[ 'released_year', 'between', [ 2010, 2015 ] ],
],
'relation' => 'or',
],

A Builderben ugyanezt a Conditional logic szakasz all és any választója adja.

Jelölőnégyzetnél a ki nem jelölt állapotot 0 vagy false, a bejelöltet 1 vagy true jelenti:

'visible' => [ 'checkbox_field', true ]

A WordPress médiaablakát használó mezőknél (file_advanced, image_advanced) a bővítmény nem az értéket, hanem a feltöltött fájlok számát vizsgálja. Az alábbi példa akkor jelenít meg egy mezőt, ha van feltöltött fájl, és akkor rejt el egy másikat, ha nincs feltöltött kép:

'visible' => [ 'file_advanced', '>', 0 ],
'hidden' => [ 'image_advanced', 0 ],

Készült:

Tiszteletben tartjuk a magánszférádat

Sütiket használunk a böngészési élmény javítására és a forgalom elemzésére. Az analitika csak akkor indul, ha engeded. Adatvédelmi irányelvek, Sütitájékoztató.

Sütibeállítások