Skip to content

Los campos

Opciones comunes de un campo

ClavePor defectoDescripción
typeObligatorio. Tipo de campo
nameObligatorio. Clave de almacenamiento
label''Etiqueta visible
instructions''Texto de ayuda bajo la etiqueta
requiredfalseMarca el asterisco y añade required al control
default_value''Valor cuando aún no se ha guardado nada
placeholder''Texto de marcador
wrapperarray()width en porcentaje, class e id extra
conditional_logicarray()Reglas que deciden si el campo se muestra

Tipos disponibles

TipoOpciones propiasNotas
textmaxlength, prepend, append
textarearows, maxlengthConserva los saltos de línea
numbermin, max, step, prepend, appendVacío se guarda como '', no como 0
rangemin, max, step, prepend, appendDeslizador con campo numérico sincronizado
emailmaxlength, prepend, appendSe sanea con sanitize_email()
urlmaxlength, prepend, appendSe sanea con sanitize_url(); imprime con esc_url()
passwordmaxlengthSe almacena en claro; no lo uses para credenciales
selectchoices, multiple, allow_nullNativo, con opciones fijas
radiochoices, layout, allow_null
checkboxchoices, layoutGuarda un array
button_groupchoices, layout, allow_nullRadios estilizados como botones segmentados
true_falsemessage, ui, ui_on_text, ui_off_textGuarda 1 o 0; con ui pinta el interruptor
date_pickerreturn_format, min, maxControl nativo; se guarda como Ymd
time_pickerreturn_format, min, maxControl nativo; se guarda como H:i:s
date_time_pickerreturn_format, min, maxControl nativo; se guarda como Y-m-d H:i:s
color_pickerenable_opacity, paletteSelector del núcleo; hexadecimal, o rgba() con opacidad
wysiwygtabs, toolbar, rows, media_upload, tableTinyMCE; funciona también dentro de repetidores
linkreturn_formatModal de enlaces del núcleo; guarda texto, URL y destino
oembedwidth, height, return_formatGuarda la dirección; el HTML se resuelve al pintar
imagepreview_size, library, mime_types, return_formatGuarda el ID; se valida contra la mediateca
filelibrary, mime_types, return_formatGuarda el ID del adjunto
gallerypreview_size, min, max, mime_types, return_formatLista ordenada de imágenes
icon_pickercollections, return_formatBuscador sobre Iconify; guarda mdi:home
messagemessage, esc_html, new_linesSólo presentación, no guarda nada
separatorSólo presentación; la etiqueta titula la sección
tabselected, endpointAgrupa los campos que le siguen en una pestaña
accordionopen, multi_expand, endpointAnida los campos que le siguen en un panel plegable
repeatersub_fields, min, max, button_labelLista de filas; compatible con los datos de ACF
groupsub_fields, layoutSubcampos bajo un nombre común, sin repetición
flexible_contentlayouts, min, max, button_labelFilas de distinta forma, a elegir por el editor
cloneclone, display, prefix_name, prefix_label, overridesIncorpora un conjunto de campos declarado aparte
post_objectpost_type, taxonomy, post_status, multipleGuarda el ID de la entrada; busca por AJAX
page_linklas de post_objectGuarda el ID; devuelve el enlace
relationshipfilters, min, max, más las de post_objectDos paneles; conserva el orden
taxonomytaxonomy, field_type, hide_emptyCasillas, radios o desplegable
userrole, multipleGuarda el ID del usuario

Todos aceptan además readonly y disabled.

Opciones de los campos de elección

choices admite dos formas. Un array asociativo define valor y etiqueta por separado; una lista simple usa cada elemento para ambas cosas:

php
'choices' => array( 'borrador' => 'Borrador', 'publicado' => 'Publicado' ),
'choices' => array( 'norte', 'sur', 'este', 'oeste' ),

layout acepta vertical (por defecto, salvo en button_group) u horizontal.

Los valores enviados se validan contra las opciones declaradas: cualquier cosa que no esté en la lista se descarta en lugar de almacenarse.

Los tipos restantes de ACF (tab, accordion, image, repeater…) aún no están implementados. Consulta el roadmap del repositorio.

Publicado con licencia GPL-2.0 o posterior.