Saltar al contenido principal

Introducción

Obtén los tipos de entidades a nivel de sistema que clasifican tus páginas, formularios, bloques y productos.

Más información sobre la interfaz de usuario del módulo: https://doc.oneentry.cloud/docs/attributes/types/#General-Type-Attributes


🎯 ¿Qué hace este módulo?

El módulo GeneralTypes te permite recuperar tipos de entidades a nivel de sistema - tipos de página, tipos de formulario, tipos de bloque y tipos de producto - que definen las categorías de contenido en tu proyecto OneEntry. OneEntry utiliza un conjunto fijo de tipos de sistema (BlockType) para clasificar páginas (common_page, catalog_page, external_page, error_page), formularios (form), bloques (common_block, product_block, slider_block, …) y productos (product, service). Este módulo es solo de lectura.

🚀 Inicio Rápido

Inicializa el módulo desde defineOneEntry:


const { GeneralTypes } = defineOneEntry(
"your-project-url", {
"token": "your-app-token"
}
);

Obtén todos los tipos y úsalos:

// Returns a combined list of types across all entities.
const types = await GeneralTypes.getAllTypes();
// e.g. [{ id: 1, type: "product" }, { id: 2, type: "common_page" }, ...]

// Filter manually - there is no built-in per-entity filter.
const pageTypes = types.filter((t) => t.type.endsWith("_page"));

console.log(pageTypes);

✨ Conceptos Clave

Sistema de Tipos

OneEntry clasifica cada entidad por un valor de BlockType:

EntidadEjemplos de Tipos (BlockType)Propósito
Páginascommon_page, catalog_page, external_page, error_pageDefinir diseños y funcionalidades de página
FormulariosformCategorizar propósitos de formularios
Bloquescommon_block, product_block, slider_blockBloques de construcción para páginas/productos
Productosproduct, serviceClasificar inventario de productos

Estructura de la Entidad de Tipo

Cada tipo devuelto por getAllTypes() es una GeneralTypeEntity:

interface GeneralTypeEntity {
id: number; // Unique numeric ID (e.g. 1, 2, 3)
type: BlockType; // Type name (e.g. "product", "common_page", "form")
}

📋 Lo Que Necesitas Saber

Los tipos son categorías de sistema predefinidas

No puedes crear tipos a través del SDK; son un conjunto fijo de categorías de sistema (BlockType) definidas por la plataforma. GeneralTypes solo recupera la lista de tipos presentes en tu proyecto. Toda la gestión de tipos ocurre en el panel de administración de OneEntry.

getAllTypes() devuelve TODOS los tipos de todas las entidades

El método devuelve una lista combinada de tipos de páginas, formularios, bloques, productos y cualquier otra entidad. No hay filtrado incorporado por categoría de entidad, así que filtra el resultado manualmente (por ejemplo, t.type.endsWith('_page')).

Tipo vs. Marcador vs. ID

IdentificadorQué EsEjemploMejor Para
TipoCategoría/clasificación de entidad"catalog_page"Filtrado y agrupamiento
MarcadorIdentificador único legible por humanos"my_about_page"Recuperar entidades específicas
IDIdentificador numérico de base de datos42Uso interno del sistema

Usa la cadena type en tu lógica de código (por ejemplo, if (page.type === 'catalog_page')) - es estable en todos los entornos, mientras que id puede diferir.


📊 Tabla de Referencia Rápida

MétodoDescripciónCaso de Uso
getAllTypes()Recupera todos los tipos generales en el sistemaPoblación de menús desplegables, validación de tipos

❓ Preguntas Comunes (FAQ)

¿Cómo creo nuevos tipos?

No puedes; los tipos son un conjunto fijo de categorías de sistema (BlockType) y el módulo es solo de lectura. Recupera los disponibles en tu proyecto con getAllTypes().


¿Cómo filtro tipos por entidad (páginas, formularios, productos)?

getAllTypes() devuelve todos los tipos de todas las entidades. Filtra el resultado manualmente, por ejemplo types.filter(t => t.type.endsWith('_page')).


¿Puedo actualizar o eliminar tipos a través del SDK?

No. El módulo GeneralTypes es solo de lectura; toda la gestión de tipos ocurre en el panel de administración de OneEntry.


¿Cuál es la diferencia entre el ID de tipo y el nombre de tipo?

Usa la cadena type para tu lógica de código y comparaciones (estable en todos los entornos). El número id es para referencias internas de la base de datos y puede cambiar entre proyectos.


¿Puedo almacenar en caché la lista de tipos?

Sí; los tipos rara vez cambian, por lo que se recomienda el almacenamiento en caché.


🎓 Mejores Prácticas

  • Recupera tipos dinámicamente - no codifiques listas de tipos.
  • Usa la cadena type, no el id - los nombres de tipo son estables en todos los entornos.
  • Filtra manualmente - getAllTypes() devuelve los tipos de cada entidad en una lista.
  • Almacena la lista en caché - rara vez cambia.
  • Maneja tipos desconocidos de manera elegante - proporciona un renderizado de respaldo.

🔗 Documentación Relacionada