Tovább a tartalomhoz

Példák és tudnivalók

Teljes mintakód include és exclude szabályokkal, egyéni függvénnyel, valamint az oldalsablon használata Sage témában.

A példában az egyik meta box a felsorolt feltételek bármelyikének teljesülésekor megjelenik, a másik ugyanilyen feltételek mellett el van rejtve. A location és os kulcs egyéni taxonómia szlugja, a custom egyéni ellenőrző függvényt jelöl.

add_filter( 'rwmb_meta_boxes', 'prefix_include_exclude_demo' );
function prefix_include_exclude_demo( $meta_boxes ) {
$meta_boxes[] = [
'title' => 'Include Meta Box',
'include' => [
'relation' => 'OR',
'ID' => [ 1, 2 ],
'parent' => [ 3, 4 ],
'slug' => [ 'contact', 'about' ],
'template' => [ 'full-width.php', 'sidebar-page.php' ],
'category' => [ 1, 'Blog', 'another' ],
'tag' => [ 1, 'fun' ],
'location' => [ 12, 'USA', 'europe' ],
'os' => [ 'Windows', 'mac-os' ],
'parent_category' => 'Parent',
'parent_tag' => 'Parent',
'parent_location' => [ 12, 'USA', 'europe' ],
'is_child' => true,
'user_role' => 'administrator',
'user_id' => [ 1, 2 ],
'custom' => 'manual_include',
],
'fields' => [
[ 'name' => 'Name', 'id' => 'name', 'type' => 'text' ],
],
];
$meta_boxes[] = [
'title' => 'Exclude Meta Box',
'exclude' => [
'relation' => 'OR',
'ID' => [ 1, 2 ],
'parent' => [ 3, 4 ],
'slug' => [ 'contact', 'about' ],
'template' => [ 'full-width.php', 'left-sidebar.php' ],
'category' => [ 1, 'News' ],
'tag' => [ 1, 'fun' ],
'user_role' => [ 'administrator', 'editor' ],
'user_id' => [ 1, 2 ],
'location' => [ 12, 'USA', 'europe' ],
'os' => [ 'Windows', 'mac-os' ],
'is_child' => true,
'custom' => 'manual_exclude',
],
'fields' => [
[ 'name' => 'Job', 'id' => 'job', 'type' => 'text' ],
],
];
return $meta_boxes;
}
function manual_include( $meta_box ) {
if ( $meta_box['title'] == 'Include Meta Box' ) {
return true;
}
return false;
}

Ha azt szeretnéd, hogy a meta box csak akkor jelenjen meg, amikor több feltétel együtt teljesül, állítsd a relation értékét AND-re. Az alábbi meta box csak a kapcsolat szlugú gyermekoldalakon látszik:

'include' => [
'relation' => 'AND',
'slug' => [ 'kapcsolat' ],
'is_child' => true,
],

A Sage a Roots.io indítótémája, amely a Laravel Blade sablonrendszert használja. A template szabály azt az értéket veszi alapul, amelyet a WordPress az adatbázisban tárol, vagyis az oldalsablon legördülő listájának értékét. Sage-ben ez views/sablonneve.blade.php alakú, ezért a szabály így néz ki:

'template' => 'views/sablonneve.blade.php',

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