Desarrolladores
Este capítulo documenta la superficie pública y estable de POM Events: el modelo de contenido, las meta claves, la exposición REST, los shortcodes, los filtros y las acciones, y las convenciones que las integraciones deben seguir.
En este capítulo
| Tema | Artículo |
|---|---|
| Tipo de publicación, taxonomías y meta | Modelo de contenido |
| Qué se expone a través de REST | API REST y meta del evento |
| Añadir a la pantalla de ajustes | Extensión de ajustes |
| Añadir campos al panel del evento | Extensión del metabox del evento |
| Añadir columnas a la tabla de asistentes | Columnas de la tabla de asistentes |
| Reaccionar ante un registro | Hooks del ciclo de vida del registro |
| Reaccionar ante un cambio de estado | Hooks de estado del asistente |
| La ruta de WooCommerce | Hooks de integración de WooCommerce |
| Los shortcodes públicos | Shortcodes |
| Personalizar las plantillas | Integración de plantillas |
| Consultar eventos correctamente | Recetas de consulta de eventos |
| Escribir código de integración seguro | Escapado, saneamiento y capacidades |
| Con qué puedes contar | Contrato de compatibilidad |
Las tres suposiciones sobre las que construir
El tema controla el tiempo de ejecución. POM Events solo registra su tipo de contenido, sus plantillas y sus shortcodes cuando la plantilla del tema activo es pom. El código que asume que el tipo de publicación de evento existe debe comprobarlo, porque en otro tema no existe.
Las fechas existen dos veces. Las fechas y horas editables viven en la matriz de meta del evento; los valores ordenables Y-m-d se derivan y se almacenan por separado al guardar. Consulta sobre los valores derivados; lee las fechas y horas para mostrarlas.
Los asistentes son una matriz de meta. Los registros se almacenan en el evento como un mapa con clave por ID de usuario, no en una tabla personalizada. Por eso registrarse crea un usuario de WordPress.
Identificadores estables
Seguros para depender de ellos:
- el tipo de publicación
event; - las taxonomías
event_typeyevent_category, además de la compartidapost_tag; - el precio de admisión para las consultas:
event_start_dateyevent_end_date; - las meta claves
event_assistantsyattending_users; - los shortcodes documentados;
- los filtros y las acciones documentados.
No es estable
Los nombres de clase internos, el marcado del área de administración, los nombres de las acciones AJAX, las rutas de los activos generados y la forma interna del almacenamiento de los ajustes. Construye sobre lo que se documenta aquí.
Una nota sobre la dependencia del tema
Protege cada integración:
add_action( 'init', function () {
if ( ! post_type_exists( 'event' ) ) {
return;
}
// Safe to integrate.
}, 20 );
Esa única comprobación cubre tanto el control del tema como el orden de carga, y es el patrón que se usa en todo este capítulo.