El sitio de un equipo es un conjunto de páginas, cada una con código Blade que el equipo escribe en su espacio de trabajo. Esta guía cubre la pantalla de páginas, el editor, el layout, lo que recibe una página al mostrarse y los respaldos. Abrir cualquiera de estas pantallas requiere el complemento pages, como explica Configurar el builder, salvo Importar tema, que no lo comprueba.
La pantalla de páginas
La pantalla Páginas del equipo lista las páginas del equipo. Desde ahí el equipo:
- Crea una página con Crear Página y abre una para editarla.
- Copia una página con Clonar elemento, que le da a la copia
(copy)después de su título y una dirección nueva generada a partir de ese título. - Abre Importar tema, descrito en Importar un tema. No necesita el complemento
pages, y crea o sobrescribe páginas. - Abre Campos personalizados, cuando el equipo los encendió. Consulta Campos personalizados.
Un superadministrador del producto ve además Restaurar páginas, que vuelve a escribir en el equipo las páginas del tema por defecto. Corre en la cola, así que el mensaje de éxito aparece antes de que se escriban las páginas. El layout del equipo con la dirección layout se sobrescribe con el layout por defecto, o se crea cuando el equipo no lo tiene; un layout con otra dirección no se toca. Las demás páginas con el mismo título que una página por defecto se sobrescriben, y el resto no se toca.
Las acciones siguen los permisos de equipo Página: Ver, Página: Crear, Página: Actualizar y Página: Eliminar. Una página borrada se conserva, y solo un miembro con el rol de dueño del equipo puede restaurarla o borrarla para siempre.
La papelera de páginas
Los miembros con Página: Eliminar ven un botón con un icono de papelera junto a Crear Página en la pantalla de páginas.
- Pulsa el icono de papelera. La lista muestra ahora las páginas borradas.
- En una página borrada, pulsa el icono de restaurar para recuperarla, o el de borrar para borrarla para siempre. Los dos iconos solo aparecen para un miembro con el rol de dueño del equipo y Página: Eliminar.
- Pulsa Regresar para volver a las páginas.
Crear una página
Crear página pide lo mínimo:
| Campo | Qué hace |
|---|---|
| Título | El nombre de la página. El campo Slug no se muestra aquí: con una plantilla de categoría o de detalle se pone directamente el patrón de slug de la plantilla, y con cualquier otra plantilla, o sin ella, la dirección se genera a partir del título. |
| Código | El código Blade de la página, en un editor de código con resaltado de HTML. |
| Es diseño | Convierte la página en el marco del sitio en lugar de una página propia. Ver abajo. En una página nueva empieza apagado. |
| Está activo | Solo se sirven las páginas activas. Apágalo para sacar una página del sitio sin borrarla. En una página nueva empieza encendido. |
| Plantilla | Un tipo de plantilla, para páginas que listan o muestran registros. Consulta Tipos de plantilla y categorías. |
Al guardar, la página se abre otra vez con todo lo demás.
Editar una página
Una vez que la página existe, la pantalla de edición agrega:
| Campo | Qué hace |
|---|---|
| Slug | La dirección de la página, sin la barra inicial: about se sirve en /about, blog/news en /blog/news. Letras minúsculas, números, -, /, y las {, } y ? de un patrón de slug, hasta 100 caracteres. Es única dentro del equipo. |
| Diseño | El layout que envuelve la página. |
| Título SEO | El <title> de la página. Vacío, la página usa su título seguido de | y el nombre del equipo. |
| Descripción SEO | La meta descripción. Vacía, la página no tiene ninguna. |
| Encabezado | Código que se agrega dentro de <head> solo para esta página: un estilo, un script, una etiqueta meta. |
| Pie de página | Código que se agrega al final de <body> solo para esta página. |
El título y la descripción SEO también son Blade, así que {{ $page->title }} funciona en ellos.
La página de inicio
La página que se sirve en / es la que tiene el tipo de plantilla Inicio, sea cual sea su slug. Mantén exactamente una página activa con esa plantilla.
Layouts
Una página marcada como Es diseño es el marco del sitio: el marcado que el visitante ve alrededor de cada página —el menú, el pie, los estilos compartidos—. Indica dónde va la página con una sección:
<header>
<a href="/">{{ team()->name }}</a>
</header>
<main>
@yield('content-inside')
</main>
<footer>© {{ date('Y') }} {{ team()->name }}</footer>
Cada página que tiene ese layout seleccionado se renderiza primero y se coloca donde está @yield('content-inside'). Los bloques de encabezado y de pie tanto del layout como de la página se agregan al documento final.
Qué puede usar una página
El código de una página, de su layout y de sus campos SEO se renderiza con:
| Variable | Qué contiene |
|---|---|
$page |
La página que se está sirviendo, con su título, su slug y sus campos personalizados. |
$slug |
El slug de la página, tal como está escrito: contact, o categories/products/{?slug} para un patrón. |
team() |
El equipo dueño del sitio: su nombre, su avatar, sus ajustes del sitio. |
Una página con tipo de plantilla recibe más, como se describe en Tipos de plantilla y categorías. Todo lo que Blade puede hacer funciona, componentes incluidos, y las clases de Tailwind funcionan sin compilar nada porque el sitio carga el script de Tailwind para el navegador.
Enlaza otra página del sitio por su dirección, <a href="/contact">. Para enlazar la página que tiene cierto tipo de plantilla sin conocer su slug, usa team()->getLink('Home'). Responde el slug de la página sin la / inicial (para Home es el slug de la página de inicio, como home, no /), y # cuando ninguna página activa tiene esa plantilla.
Dejar que un visitante mande archivos
<x-site-uploader> deja que un visitante del sitio suba archivos o imágenes, con sesión o sin ella. Ponlo dentro de un formulario que envía a /form/{slug}, dale un name y agrega un botón para enviar el formulario:
<form action="/form/order" method="POST">
<input type="text" name="name" required>
<x-site-uploader name="files" folder="Orders" accept=".pdf,image/*" multiple required />
<button type="submit">Send</button>
</form>
Cuando se envía el formulario, los archivos que el visitante subió y dejó en él se conservan con el registro: cada uno aparece en el registro como un campo de archivo con el nombre del cargador, y el correo enlista cada uno por su dirección. Se quedan en la carpeta que nombra el cargador (Uploads cuando no nombra ninguna), y su tamaño se sumó al espacio del equipo cuando se subieron.
multipledeja que el visitante deje varios archivos. Sin él, solo se conserva uno.requiredrechaza el formulario hasta que el visitante haya subido al menos un archivo. El error nombra el campo del cargador y aparece en la ventana de error del sitio, no en el cargador, salvo que la página lo muestre ella misma con$errors.- Si se rechaza el formulario, por el cargador o por cualquier otro campo, no se conserva nada: la página vuelve con el cargador vacío, los archivos ya subidos se borran un día después, y el visitante tiene que subirlos otra vez antes de enviar el formulario.
- Sin formulario, o fuera del
<form>, el cargador recibe los archivos igual, pero nada los conserva y se borran un día después. Para recibir archivos sin ningún otro campo, usa un formulario con solo el cargador y un botón de enviar.
Cómo se lee el formulario y qué acepta cada campo está en Formularios y registros.
Copias de seguridad
En la pantalla de edición, Crear copia de seguridad guarda una instantánea de la página, con un nombre opcional; una copia sin nombre aparece en la lista como «Copia de seguridad – » y la fecha en que se hizo. La instantánea conserva el título, el slug, el código, la plantilla, la descripción, el layout, Es diseño, Está activo, los campos SEO, los bloques de encabezado y de pie, y los campos personalizados.
La lista de Copias de seguridad muestra cinco a la vez, la más reciente primero, y la página de la lista en la que estás se conserva en la dirección. Restaurar pide confirmación y luego reemplaza la página con la instantánea, con todos esos campos incluidos, así que restaurar puede encender o apagar la página, o convertirla en layout o dejar de serlo; la pantalla de edición se vuelve a abrir en la misma página de la lista. Eliminar borra la instantánea y no se puede deshacer; la lista se queda en la misma página, o regresa una cuando la copia borrada era la última de esa página. Haz una antes de importar un tema o de reescribir el layout.
Crear una copia pide Página: Crear, restaurarla Página: Actualizar y borrarla Página: Eliminar, y las tres piden el complemento pages. Borrar una página no borra sus copias.
Cuando el equipo no tiene páginas
Un equipo sin páginas, o sin el complemento pages, no se queda con un sitio en blanco: su dominio sirve las páginas del tema por defecto que trae el producto. En cuanto el equipo tiene páginas propias y el complemento, se sirven esas.
Para desarrolladores
- Restaurar páginas se muestra a las cuentas cuyo correo está en
config('app.sudo'). - La pantalla de páginas está en
/team/pages, y su papelera en/team/pages?trashed=1. - A un equipo sin páginas se le sirve el tema por defecto directamente de
resources/views/stubs/themes/default/.


