getPageByUrl
Obteniendo un único objeto de página con información sobre formularios, bloques y menús adjuntos a la página por URL.
Descripción
Este método recupera un único objeto de página basado en su URL (url) desde la API. Devuelve una Promesa que se resuelve en el objeto de página IPagesEntity, con el objeto específico dependiendo del tipo de página que se esté devolviendo.
Páginas.getPageByUrl(
url*,
langCode
);
Esquema de parámetros
Esquema
url(requerido): string
URL de la página
ejemplo: "about"
langCode: string
Código de idioma. Predeterminado: "en_US"
ejemplo: "en_US"
Ejemplos
Ejemplo mínimo
const response = await Pages.getPageByUrl('shop');
Ejemplo con atributos
const response = await Pages.getPageByUrl('shop', 'en_US');
Ejemplo de respuesta
{
"id": 9,
"parentId": 8,
"pageUrl": "blog1",
"depth": 1,
"localizeInfos": {
"title": "Blog 1",
"menuTitle": "Blog 1",
"htmlContent": "",
"plainContent": ""
},
"isVisible": true,
"blocks": [],
"type": "common_page",
"templateIdentifier": null,
"attributeSetIdentifier": null,
"attributeValues": {},
"moduleFormConfigs": [],
"isSync": false
}
Esquema de respuesta
Esquema: IPagesEntity
id: number
El identificador del objeto.
ejemplo: 8
parentId: number | null
El id de la página padre, si contiene null, entonces es la página de nivel superior.
ejemplo: 10
pageUrl: string
URL única de la página.
ejemplo: "blog"
depth: number
Profundidad de anidación de la página en relación con parentId.
ejemplo: 10
localizeInfos: ILocalizeInfo
El nombre de la página, teniendo en cuenta la localización.
ejemplo:
{
"title": "Blog",
"menuTitle": "Blog",
"htmlContent": "",
"plainContent": ""
}
isVisible: boolean
Un signo de visibilidad de la página.
ejemplo: true
type: PageType
Tipo de página.
ejemplo: "common_page"
templateIdentifier: string | null
ID de usuario de la plantilla vinculada.
ejemplo: "template"
attributeSetIdentifier: string | null
ID del conjunto de atributos.
ejemplo: "page"
attributeValues: IAttributeValues
Mapa de valores de atributos indexados por marcador; objeto vacío cuando no hay ninguno.
ejemplo:
{
"text": {
"type": "string",
"value": "some text",
"position": 0,
"additionalFields": []
}
}
isSync: boolean
Indicación de indexación de la página.
ejemplo: true
template: object
Objeto de plantilla.
ejemplo:
{}
position: number
Número de ítem (para ordenamiento).
ejemplo: 2
config: Record<string, number>
Configuraciones de salida para páginas de catálogo.
ejemplo:
{
"rowsPerPage": 1,
"productsPerRow": 1
}
products: number
El número de productos vinculados a la página.
ejemplo: 0
childrenCount: number
Conteo de hijos.
ejemplo: 1
blocks: IBlockEntity[] | string[]
bloques.
ejemplo:
{
"id": 4,
"attributeSetIdentifier": null,
"title": "Template",
"generalTypeId": 4,
"identifier": "template",
"version": 0,
"generalTypeName": "catalog_page",
"attributeValues": {},
"position": 1
}
blocks.attributeValues: IAttributeValues
Mapa de valores de atributos indexados por marcador; objeto vacío cuando no hay ninguno.
ejemplo:
{
"block-text": {
"type": "string",
"value": "some text",
"isIcon": false,
"position": 0,
"additionalFields": [],
"isProductPreview": false
}
}
blocks.id: number
Identificador único del bloque.
ejemplo: 1234
blocks.localizeInfos: ILocalizeInfo
Información de localización para el bloque.
ejemplo:
{
"key": "value"
}
blocks.version: number
Versión de la entidad de bloque.
ejemplo: 1
blocks.identifier: string
Identificador de cadena único para el bloque.
ejemplo: "block1"
blocks.type: BlockType
Tipo del bloque.
ejemplo: "product"
blocks.position: number
Posición del bloque para ordenamiento.
ejemplo: 1
blocks.templateIdentifier: string | null
Identificador de la plantilla utilizada por el bloque, o null si no es aplicable.
ejemplo: "template1"
blocks.isVisible: boolean
Indica si el bloque es visible.
ejemplo: true
blocks.countElementsPerRow: number
Número de elementos mostrados por fila en el bloque, si es aplicable.
ejemplo: 3
blocks.quantity: number
Cantidad de ítems en el bloque, si es aplicable.
ejemplo: 5
blocks.similarProducts: IProductsResponse
Respuesta que contiene productos similares asociados con el bloque.
ejemplo:
{
"total": 10,
"items": []
}
blocks.products: IProductsEntity[]
Array de entidades de productos asociadas con el bloque.
ejemplo:
[
{
"id": 1,
"name": "Product 1"
},
{
"id": 2,
"name": "Product 2"
}
]
moduleFormConfigs: Array<IFormConfig>
Configuraciones de formularios del módulo vinculadas a la página.
rating: IRating
Datos de calificación.
total: string
Número total de productos vinculados a la página.
ejemplo: "10"
categoryPath: string | null
Cadena de ruta de categoría; null para páginas anidadas que no tienen su propia ruta de categoría.
ejemplo: "catalog"
Ejemplos de uso
Guía paso a paso en la documentación:
- Obtener página por URL — recuperar una página de CMS por su identificador de URL.
Pruébalo en vivo
Ejecuta este método de forma interactiva en el sandbox de JS SDK — conecta tu URL de Proyecto y Token de Aplicación en la primera visita, luego abre:
- Obtener página por URL — recuperar una página de CMS por su identificador de URL.