Dokumentasjonsmeny
Bygge et nettsted
Blokkvisninger og hjelpere
Vis tekst, lenker, bilder og spor med hjelpere eller Blade-direktiver.
Visningen til en blokk er en anonym Blade-komponent. Den får blokkens $data:
resources/views/components/blocks/card.blade.php
Blade
@props(['data' => []])
<a href="{{ link_href($data) }}" class="card">
<x-aurora::media :value="$data['image'] ?? null" size="md" class="card-image" />
<h3 @editable('title')>{{ inline_text($data['title'] ?? '') }}</h3>
@if (shows_field('body', $data['body'] ?? null))
<p @editable('body')>{{ plain_text($data['body'] ?? '') }}</p>
@endif
</a>
Hjelpefunksjonene
Hjelpefunksjonene er korte former av statiske metoder (inline_text() er Aurora\Support\Markup::inline()), så visningene trenger ingen @php use …-importer. Kall klassene direkte hvis du heller vil det.
| Hjelpefunksjon | Hva den gjør |
|---|---|
@editable('field') | Gjør elementet redigerbart på lerretet (for felt som står i editables()) |
inline_text($text) | Tekst med uthevede ord, som *highlighted* |
plain_text($text) | Ren tekst, escapet |
rich_text($html) | Formatert tekst fra en RichEditor, renset |
shows_field($field, $value) | Om et valgfritt felt skal vises: når det er fylt ut, eller når lerretet redigerer, slik at det kan fylles ut |
link_href($data), link_target($data) | Adressen og målet til en Fields::link()-gruppe; send med prefikset for en annen gruppe: link_href($data, 'cta') |
is_editing() | Sann på lerretet, for eksempel for å vise plassholdere |
block_slot($name) | Et spor i en containerblokk, med blokkene som ligger i det |
<x-aurora::media> | Et bilde fra mediebiblioteket, responsivt, med blokkens beskjæring og fokuspunktet |
Eller som Blade-direktiver
| Hjelpefunksjon | Direktiv |
|---|---|
{{ inline_text($data['title'] ?? '') }} | @inlineText($data['title'] ?? '') |
{{ plain_text(…) }}, {{ rich_text(…) }} | @plainText(…), @richText(…) |
{{ link_href($data) }}, {{ link_target($data) }} | @linkHref($data), @linkTarget($data) |
{{ block_slot('content') }} | @blockSlot('content') (ikke @slot: det bruker Blade-komponentene) |
@if (shows_field('body', …)) … @endif | @shows('body', …) … @endshows |
@if (is_editing()) … @endif | @editing … @else … @endediting |