# Site blueprint

The Site blueprint is located in `/site/blueprints` and controls the Panel setup and form fields for the site/dashboard.

****

- Read more: <https://getkirby.com/docs/guide/blueprints/introduction>

****

## Blueprint location

```filesystem
/site/blueprints/site.yml
```

## Title

With the `title` option, you can overwrite the `Site` label in the main menu of the Panel.

### Translated titles

The title can be translated by passing an array of translations with the matching language code as key:

```yaml
title:
  en: Site
  de: Webseite
```

## Options

With options, you can control all the site actions that should or should not be available.

| Option | Value |
|----    | ---- |
| `changeTitle` | `true`/`false` |
| `update` | `true`/`false` |

<p>Each option can be set on a per user role for fine-grained permissions, for example:</p>
<figure class="code">
<pre><code class="language-yaml">options:
  delete:
    admin: true
    editor: false</code></pre>
</figure>
<p>Or using a wildcard to change the default for all roles:</p>
<figure class="code">
<pre><code class="language-yaml">options:
  update:
    *: false
    editor: true</code></pre>
</figure>
<p>Controlling accessibility for roles.</p>
<figure class="code">
<pre><code class="language-yaml"># Page is not accessible and not visible for all roles except admins.
options:
  access:
    *: false
    admin: true
  list:
    *: false
    admin: true</code></pre>
</figure>

## Custom preview URL

You can set the preview URL for the site in the site.yml with the `preview` property:

```yaml
title: Site

options:
  preview: https://mycustomdomain.com
```

<details class="since list-none" open="1">
<summary >
	Since <a href="https://github.com/getkirby/kirby/releases/tag/5.0.0">5.0.0</a></summary>
<div>
	<h2 id="view-buttons"><a href="#view-buttons" tabindex="-1">View buttons</a></h2>
<p>Kirby allows you to define what buttons to use for this site. To select which (default) buttons to show on a particular view you can set the <code class="type">buttons</code> option in the corresponding blueprint:</p>
<figure class="code">
<pre><code class="language-yml">buttons:
  settings: true</code></pre>
</figure>
<p>By setting the value to <code class="type type-bool">true</code>, you can reference existing buttons (from the <a href="https://getkirby.com/docs/reference/system/options/panel/panel-view-buttons#referencing-buttons">core or <code class="type">config.php</code> file</a> or even <a href="https://getkirby.com/docs/reference/plugins/extensions/panel-view-buttons">Panel area plugin extensions</a>) by name and decide which ones to include and in what order.</p>
<h3 id="view-buttons__create-a-new-button"><a href="#view-buttons__create-a-new-button" tabindex="-1">Create a new button</a></h3>
<p>You can now also define your own custom buttons directly in a blueprint:</p>
<figure class="code">
<pre><code class="language-yml">buttons:
  settings: true
  social:
    icon: mastodon
    text: Mastodon
    link: "https://mastodon.social/@getkirby"
    theme: purple-icon</code></pre>
</figure>
<p>The available options are based on the <a href="https://lab.getkirby.com/public/lab/docs/k-view-button"><code class="type">k-view-button</code> component</a>. Check out the <a href="https://getkirby.com/docs/reference/system/options/panel/panel-view-buttons">config option documentation</a> for more details, e.g. in regard to available attributes or query support.</p>
<h3 id="view-buttons__disable-all-buttons"><a href="#view-buttons__disable-all-buttons" tabindex="-1">Disable all buttons</a></h3>
<figure class="code">
<pre><code class="language-yml">buttons: false</code></pre>
</figure></div>
</details>