block.json para registrar un bloque Gutenberg
El archivo block.json es la forma moderna y recomendada de registrar bloques de Gutenberg. Centraliza toda la metadata del bloque: nombre, atributos, assets y soporte de características.
Casos de uso: crear bloques personalizados para plugins, bloques de contenido reutilizables para clientes, sustituir shortcodes legacy por bloques modernos, bloques de CPTs para mostrar contenido dinámico.
{
"$schema": "https://schemas.wp.org/trunk/block.json",
"apiVersion": 3,
"name": "mi-plugin/tarjeta",
"version": "1.0.0",
"title": "Tarjeta de Proyecto",
"category": "common",
"icon": "portfolio",
"description": "Muestra una tarjeta con imagen, título y descripción.",
"keywords": ["tarjeta", "proyecto", "card"],
"supports": {
"html": false,
"align": ["wide", "full"]
},
"attributes": {
"titulo": { "type": "string", "default": "" },
"descripcion": { "type": "string", "default": "" },
"imagen": { "type": "number", "default": 0 }
},
"editorScript": "file:./index.js",
"editorStyle": "file:./index.css",
"style": "file:./style-index.css"
}
- name — Identificador único del bloque con formato
namespace/nombre. Debe ser único en todo WordPress. - supports.html: false — Desactiva la opción de editar el HTML del bloque directamente, recomendado para bloques complejos.
- attributes — Define los datos que el bloque almacena. Cada atributo se guarda en el comentario HTML del bloque.
- editorScript vs style —
editorScriptsolo se carga en el editor;stylese carga tanto en el editor como en el frontend.
