# Sukurta turinio redaktoriams

Platesnis laukų skydelis, įrankių juostos valdikliai, redaktoriaus taisyklės ir administravimo srities sąrašas, nustatomi block.json ir blockstudio.json.

## Vietos kiekvienam laukui

Pasikartojantys laukai, kodo laukai ir įdėtinės grupės šoninėje juostoje susispaudžia. Bloko antraštėje yra `Open Expanded Editor` mygtukas, atveriantis tuos pačius laukus platesniame skydelyje dešinėje. Paspaudus Done, foną arba Esc skydelis uždaromas, o blokas lieka pasirinktas.

Tai tas pats laukų atvaizduoklis, įrašantis tuos pačius atributus, todėl peržiūra atnaujinama jums rašant ir nereikia jokio block.json nustatymo. Laukus, kurie turėtų būti šalia turinio, galima perkelti į bloko įrankių juostą naudojant `"position": "toolbar"`.

[Išplėstinis redaktorius](https://blockstudio.dev/lt/docs/blocks/attributes/expanded-editor/)

block.json

```
{
  "name": "my-theme/hero",
  "title": "Hero",
  "blockstudio": {
    "attributes": [
      {
        "id": "alignment",
        "type": "select",
        "label": "Alignment",
        "position": "toolbar",
        "options": [
          { "value": "left", "label": "Left" },
          { "value": "center", "label": "Center" },
          { "value": "right", "label": "Right" }
        ]
      },
      {
        "id": "title",
        "type": "text",
        "label": "Title"
      }
    ]
  }
}
```

## [Automatinis užbaigimas iš jūsų CSS](https://blockstudio.dev/lt/docs/general/settings/#blockeditor)

Išvardykite stilių lentelių URL lauke blockEditor.cssClasses ir cssVariables; klasių bei kodo laukai leidžia suprasti, ką šie failai apibrėžia.

## Užvedimo ir pasirinkimo žymos

Nustatykite blockEditor.enhance, kad redaktoriuje būtų rodomi Blockstudio užvedimo ir pasirinkimo indikatoriai.

## [Kas gali pasiekti redaktorių](https://blockstudio.dev/lt/docs/general/settings/#users)

users.ids ir users.roles lauke blockstudio.json nurodo naudotojų ID ir vaidmenis, turinčius redaktoriaus prieigą per Blockstudio.

## [Jūsų kliento kalba](https://blockstudio.dev/lt/docs/general/translations/)

Laukų valdikliai, administravimo ekranas ir drobė naudoja svetainės arba kiekvieno naudotojo profilio kalbą, pasirinkdami iš įtrauktų vertimų.

## Tik redaktoriui skirti ištekliai

editor.assets faile blockstudio.json išvardija papildomus išteklius, kuriuos reikia įkelti redaktoriuje.

## [Medija pradiniame duomenų rinkinyje](https://blockstudio.dev/lt/docs/blocks/loading/#media-hydration)

Failų laukai nuskaito priedo duomenis iš pradinio redaktoriaus duomenų rinkinio, taip pat įdėtose grupėse, kortelėse ir pasikartojančiuose laukuose, prieš kreipdamiesi į medijos galinį tašką.

## Vienu metu – tik viena peržiūros užklausa

Naujesnė bloko peržiūros užklausa naršyklėje atšaukia ankstesnę, o dabartinė peržiūra tuo metu lieka ekrane.

## Kiekvienas blokas išsaugo savo reikšmes

Kelių pasirinkimų blokuose išsaugomos jų atskiros reikšmės, o anuliavimo ir grąžinimo veiksmai apima RichText bei šoninės juostos laukus.

## Išjunkite lauką, išsaugokite jo reikšmę

Redaktorius gali išjungti lauką inspektoriuje: užveskite pelės žymeklį ties jo kairiuoju kraštu, kol pasirodys mėlynas rėmelis, tada spustelėkite. Laukas tampa permatomas, jo reikšmė lieka išsaugota, o blokas nustoja jį atvaizduoti, kol kas nors vėl jį įjungs.

Tas pats veikia ir su atskirais failų lauko elementais, todėl vienas vaizdas gali būti paslėptas, o kiti rodomi. Nustatykite `"switch": true`, kad laukui būtų rodomas perjungiklis, o šablone patikrinkite `$a['_disabled']`.

[Atributų išjungimas](https://blockstudio.dev/lt/docs/blocks/attributes/disabling/)

block.json

```
{
  "name": "acme/card",
  "title": "Card",
  "blockstudio": {
    "attributes": [
      {
        "id": "title",
        "type": "text",
        "label": "Title",
        "switch": true
      }
    ]
  }
}
```

## Peržiūra įterpimo lange

Pridėkite raktą `example` prie block.json, ir blokas bus peržiūrimas, kai redaktorius užves ant jo pelės žymeklį blokų įterpimo lange. Blokui, kuris gerai atrodo su numatytaisiais nustatymais, pakanka tuščio objekto.

Nurodykite `example.attributes` savo laukų pavyzdines reikšmes arba `example.innerBlocks` pradinį medį blokui, kuris apgaubia kitus blokus.

[Įterpimo peržiūra](https://blockstudio.dev/lt/docs/blocks/preview/)

block.json

```
{
  "name": "my-theme/hero",
  "title": "Hero",
  "category": "text",
  "example": {
    "attributes": {
      "title": "This title will be shown in the preview"
    }
  },
  "blockstudio": true
}
```

## Redaktoriaus taisyklės viename faile

Nustatykite, ką siūlo įterpimo langas, nepridėdami temos jungiamojo kodo. `blockEditor.blocks` priima leidžiamų ir draudžiamų elementų sąrašus su pakaitos simboliais, pavyzdžiui, `core/*`, pervadina ir rikiuoja kategorijas, pašalina PHP užregistruotus blokų stilius, paslepia senus valdiklius ir gali išjungti blokų katalogą.

`blockEditor.patterns` įjungia arba išjungia pagrindinius, nuotolinius, temos ir Blockstudio šablonų šaltinius bei filtruoja jų kategorijas. `blockEditor.media` išjungia Openverse ir apriboja vaizdų dydžius, kuriuos gali pasirinkti redaktoriai.

[Blokų redaktoriaus nustatymai](https://blockstudio.dev/lt/docs/general/settings/#blockeditor)

blockstudio.json

```
{
  "blockEditor": {
    "blocks": {
      "allow": ["core/*", "my-theme/*"],
      "deny": ["core/embed", "core/freeform"],
      "directory": false,
      "categories": {
        "rename": { "text": "Writing" },
        "order": ["my-theme", "text", "media"]
      },
      "styles": {
        "deny": { "my-theme/card": ["outline"] }
      },
      "legacyWidgets": { "hide": ["archives", "calendar"] }
    },
    "patterns": {
      "core": false,
      "remote": false,
      "categories": { "deny": ["gallery"] }
    },
    "media": {
      "openverse": false,
      "imageSizes": { "allow": ["thumbnail", "large"] }
    }
  }
}
```

## Greitas pradinis atvaizdavimas

Blockstudio blokai atvaizduojami serveryje. Redaktorius iš anksto įkelia įraše jau esančių blokų, įskaitant įdėtinius sinchronizuotų šablonų blokus, sugeneruotą išvestį ir panaudoja ją pirmajam atvaizdavimui, užuot siuntęs atvaizdavimo užklausą kiekvienam išsaugotam blokui.

Kodas, klasės, atributai ir WYSIWYG valdikliai atsisiunčiami pirmą kartą jiems pasirodžius, todėl nepasirinkti blokai jų neįkelia. Blokas, kuriam nereikia tiesioginės peržiūros, gali nustatyti `disableLoading` ir rodyti vietaženklį, o visus laukus bus galima redaguoti.

[Redaktoriaus įkėlimas](https://blockstudio.dev/lt/docs/blocks/loading/)

block.json

```
{
  "name": "my-theme/map",
  "title": "Map",
  "blockstudio": {
    "blockEditor": {
      "disableLoading": true
    }
  }
}
```

## Peržiūros veikia kaip puslapis

Interactivity API įkeliamas redaktoriaus iframe, todėl `data-wp-context`, susiejimai, įvykių apdorojimo funkcijos ir jūsų saugyklos veiksmai veikia drobėje. Jame veikia ir įtraukti `bsui/*` komponentai, todėl redaguojant atsidaro dialogo langas, o išskleidžiamasis sąrašas išsiskleidžia.

Peržiūroje esančios nuorodos niekada neatidaro kito puslapio – nesvarbu, ar jas spustelėsite, atidarysite modifikavimo klavišu, ar aktyvinsite klaviatūra, o spustelėjus vis tiek pažymimas blokas. Naudojant `assets.reset.enabled`, temos body klasės kopijuojamos į drobę, todėl joje taip pat veikia tokie selektoriai kaip `.brand-a .site-card`.

[Interaktyvumas](https://blockstudio.dev/lt/docs/blocks/interactivity/)

block.json

```
{
  "name": "my-theme/disclosure",
  "title": "Disclosure",
  "blockstudio": {
    "interactivity": true
  }
}
```

## Inventorius skiltyje Tools > Blockstudio

Administravimo ekrane pateikiama, ką Blockstudio užregistravo iš failų sistemos: blokus, plėtinius, laukus, puslapius su jų sinchronizavimo būsena ir `db.php` schemas – savosiose WordPress DataViews lentelėse. Duomenų bazių rodinyje galima naršyti kiekvienos schemos įrašus, gaunamus ir puslapius suskaidytus per REST API.

Kai temos `blocks.json` įvardija registrus, registro rodinyje pateikiami jų blokai ir jie importuojami į jūsų blokų katalogą iš wp-admin. Ekraną gali atverti naudotojai, turintys `manage_options`, o filtras `blockstudio/admin/enabled` jį išjungia.

[Administravimo ekranas](https://blockstudio.dev/lt/docs/dev/admin/)

blocks.json

```
{
  "$schema": "https://blockstudio.dev/schema/blocks.json",
  "directory": "blockstudio",
  "registries": {
    "ui": "https://blocks.example.com/registry.json"
  }
}
```

Plus

## Oficialus plėtinių rinkinys

Aukščiausios klasės svetainių šablonai, DI sistemos instrukcijos ir privati Discord bendruomenė. Vienkartinis pirkimas, atnaujinimai visam laikui.

- 500+ svetainių šablonų
- AI sistemos instrukcijos
- Naujiniai visam laikui
- Privati Discord bendruomenė

[Gaukite Plus](https://blockstudio.dev/lt/plus/)
