Para desarrolladores
Las interfaces públicas que POM LMS ofrece a temas e integraciones: los helpers de acceso, los helpers de finalización, los helpers de vídeo, los filtros que permiten ampliar cursos y ajustes, y los hooks de plantilla.
En este capítulo
| Tema | Artículo |
|---|---|
| Cursos, lecciones y dónde viven sus datos | El modelo de contenido |
| La regla que toda integración debe seguir | El contrato de control de acceso |
| Comprobar el acceso a un curso | El helper de acceso a cursos |
| Comprobar el acceso a una lección | El helper de acceso a lecciones |
| Evaluar una regla de permiso | El helper de acceso por permisos |
| Comprobar una compra | El helper de acceso por compra |
| Leer y escribir el progreso | Helpers de finalización |
| Renderizar vídeos de lecciones | Helpers de vídeo |
| Añadir campos a cursos y lecciones | Ampliar la metabox del curso |
| Añadir secciones de ajustes | Ampliar los ajustes |
| Trabajar con el endpoint Mis cursos | Integración del endpoint Mis cursos |
| Encontrar cursos y lecciones | Consultas y helpers de URL |
| Renderizar dentro de las páginas de curso y lección | Integración de plantillas |
| Gestionar los datos de los estudiantes de forma responsable | Seguridad y gestión de datos |
Qué es estable
Las interfaces documentadas en este capítulo: las funciones helper pom_lms_* descritas aquí, los dos filtros y las acciones del tema sobre la plantilla de artículo individual.
Todo lo que no está documentado aquí —clases internas, estructura de los archivos de plantilla, handles de scripts, la forma de los valores almacenados— puede cambiar entre versiones. Si necesitas algo que no está cubierto, pregunta antes de construir sobre ello.
Requisitos
POM LMS requiere POM Theme, y sus helpers de acceso requieren la compatibilidad del tema con las reglas de permisos. El acceso basado en compras requiere WooCommerce, y las condiciones de suscripción requieren además la extensión de suscripciones de WooCommerce.
Protege tus integraciones en consecuencia:
if ( ! function_exists( 'pom_lms_user_can_access_course' ) ) {
return;
}
Una comprobación function_exists() es la forma admitida de detectar POM LMS. No existe una constante de versión sobre la que ramificar en tu propio código.
La única regla
Si tu integración renderiza contenido de cursos o lecciones en cualquier lugar —un shortcode, un widget, una respuesta REST, un correo electrónico— debe llamar primero al helper de acceso. Consulta El contrato de control de acceso.
Todo lo demás en este capítulo es conveniencia. Esa regla no lo es.