API REST y meta de eventos

Los eventos se exponen a través de la API REST de WordPress, junto con un conjunto definido de meta.

Endpoints

Recurso Base
Eventos event
Tipos de evento event_types
Categorías event_categories
Etiquetas El endpoint central de etiquetas, ya que post_tag se comparte

Viven bajo el espacio de nombres estándar de la API REST de WordPress y se comportan como cualquier otro tipo de contenido y taxonomía registrados: se aplican los parámetros de colección habituales, el orden y la paginación.

Meta expuesta en un evento

Registrada para REST:

Clave Tipo
_thumbnail_id string
event_start_date string
event_end_date string
event_start_datetime string
event_end_datetime string
hide_event_date string
event_all_day string
attending_users array de IDs de usuario enteros
pom object

El objeto pom expone los propios valores del panel del evento, incluidas las fechas y horas de inicio y fin, el formato de fecha, el lugar, el texto introductorio, el organizador, las etiquetas de los botones, el hashtag, el número de contacto, los enlaces adicionales, los campos de formulario opcionales y el espacio disponible. Su propiedad optional_form_fields es un array de identificadores de campo de tipo string.

Lectura de eventos

GET /wp-json/wp/v2/event?per_page=20&orderby=date

Para reproducir el orden propio del sitio y el filtro de próximos eventos, consulta sobre los valores de fecha derivados en lugar de la fecha del contenido — consulta Recetas de consulta de eventos. La colección REST no aplica por ti el filtro de próximos eventos del plugin.

Dos representaciones de fecha

event_start_date y event_end_date son valores Y-m-d normalizados, adecuados para comparar y ordenar. event_start_datetime y event_end_datetime son los valores editables, adecuados para mostrar.

Los consumidores deberían leer las fechas y horas para la presentación y las fechas para la lógica.

Datos de asistentes a través de REST

attending_users se expone. event_assistants — el mapa que contiene direcciones de correo electrónico, teléfonos, comentarios y países — no está registrado para REST.

Es deliberado. No lo añadas a una respuesta REST pública: se trata de datos personales, incluidos comentarios de texto libre que con frecuencia contienen información de salud y accesibilidad.

Si una integración interna realmente necesita los datos de los asistentes, crea tu propio endpoint autenticado con una comprobación explícita de capacidades y trata la carga útil como confidencial. Consulta Escapado, saneamiento y capacidades.

Se aplica la restricción del tema

El tipo de contenido solo se registra en el tema POM. En otro tema, los endpoints REST de eventos no existen y las solicitudes devuelven una respuesta de no encontrado.

Un consumidor debería gestionar ese caso en lugar de asumir que el endpoint es permanente.

Escritura a través de REST

Se aplican las reglas de permisos estándar: la escritura requiere un usuario autenticado con la capacidad de editar ese contenido.

Dos advertencias específicas de los eventos:

  • Escribir las fechas y horas a través de REST no recalcula los valores derivados event_start_date y event_end_date. Escribe ambos, o el evento mostrará una cosa y se consultará como otra.
  • Escribir pom reemplaza el objeto. Léelo, modifica la clave que necesites y vuelve a escribir el objeto completo.

Proteger a un consumidor

$response = wp_remote_get( $site . '/wp-json/wp/v2/event?per_page=10' );

if ( is_wp_error( $response ) || 200 !== wp_remote_retrieve_response_code( $response ) ) {
    return; // Events may not be registered on this site.
}