# 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.

## Mintakód

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.

```php
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;
}
```

## AND kapcsolat

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:

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

## Oldalsablon Sage témában

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:

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