Feature - Catalogo de Cursos, Ciclos e Turmas
Objetivo
Expor estrutura de oferta (curso -> ciclo -> turma) para consumo de portal e operacao interna.
Endpoints principais
/api/dhedalos/v1/courses/api/dhedalos/v1/courses/sidebar/api/dhedalos/v1/course/{slug}/api/dhedalos/v1/course/{slug}/next-cycle/api/dhedalos/v1/courses/{class_id}/meeting-type/api/dhedalos/v1/cycles/api/dhedalos/v1/cycles/{cycle_id}/classes/api/dhedalos/v1/cycles/{year}/api/dhedalos/v1/cycles/pcd-upcoming
Entidades envolvidas
cursocicloclasses- taxonomias
course_categoriesecourse_supervisors
Regras de acesso
- Misto entre sessao WordPress + role e token de servico.
- Parte das rotas de
courses.phpnao declarapermission_callbackexplicito.
Regras de negocio observadas
- filtros por role no sidebar e listagens de cursos/ciclos,
- calculo de proximo ciclo com suporte a bypass de cache (
no-cache), - endpoint dedicado para PCD em ciclos proximos.
Cache associado
course_slug_id_<slug>course_cycles_<slug>re_enroll_status_<slug>- invalidacao em update de
cursoeciclo.
Dependencias
- Persistencia em
wp_posts/wp_postmeta. - Configuracoes ACF para campos de curso/ciclo.
Pendencias
- Formalizar contrato de permissao das rotas sem
permission_callbackexplicito.