Saltar al contenido principal

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: Types
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 ordenación).
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: string
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 ordenación.
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": []
}

similarProducts.total: number
El número total de productos encontrados.
ejemplo: 100

similarProducts.items: IProductsEntity[]
Un array de entidades de productos.
ejemplo:

[
{
"id": 12345,
"title": "Product 1"
},
{
"id": 67890,
"title": "Product 2"
}
]

items.id: number
El identificador único.
ejemplo: 12345

items.localizeInfos: ILocalizeInfo
El nombre de los productos, teniendo en cuenta la localización.
ejemplo:

items.statusIdentifier: string | null
Identificadores de estado de la página del producto (puede ser null).
ejemplo: "in_stock"

items.statusLocalizeInfos: ILocalizeInfo
Nombre de estado localizado para el producto.
ejemplo: { "title": "Sale" }

items.attributeSetIdentifier: string | null
Id del conjunto de atributos.
ejemplo: "set_12345"

items.position: number
Número de ítem (para ordenación).
ejemplo: 1

items.price: number | null
El valor del precio de la página del producto tomado del índice.
ejemplo: 150.00

items.additional: object
Valor adicional del índice.
ejemplo: { prices: { min: 5 max: 150 } }

items.sku: string | null
SKU del producto (Unidad de Mantenimiento de Stock), puede ser null.
ejemplo: "SKU_12345"

items.isSync: boolean
Indicación de indexación de la página.
ejemplo: true

items.attributeValues: AttributeType
Array de valores de atributos del índice, representados.
ejemplo:

[
{
"id": "color",
"value": "red"
}
]

items.categories: string[]
Categorías de productos.
ejemplo:

[
1,
2,
3
]

items.isVisible: boolean
Un signo de visibilidad de la página.
ejemplo: true

items.moduleFormConfigs: Array<IFormConfig>
Configuraciones de formularios del módulo (opcional).

items.rating: IRating
Datos de calificación.

items.isPositionLocked: boolean
Indicador de bloqueo de posición de ordenación (opcional).
ejemplo: false

items.relatedIds: number[]
Ids de páginas de productos relacionadas.
ejemplo:

[
12345,
67890
]

items.paymentStages: unknown
Datos de etapas de pago (puede ser null).
ejemplo: null

items.discountConfig: Record<string, unknown>
Objeto de configuración de descuento.
ejemplo:

items.templateIdentifier: string | null
Id de usuario de la plantilla vinculada.
ejemplo: "template_12345"

items.shortDescTemplateIdentifier: string | null
Id de usuario de la plantilla vinculada para una descripción corta.
ejemplo: "short_desc_template_12345"

items.signedPrice: string
Signo de precio.

items.productPages: IProductPageRef[]
Array de referencias de páginas de productos que vinculan el producto a sus páginas.
ejemplo:

[
{
"id": 16,
"pageId": 4,
"productId": 15,
"positionId": 244,
"categoryPath": "products"
}
]

productPages.id: number
Identificador único del registro de enlace producto-página.
ejemplo: 16

productPages.pageId: number
Identificador de la página a la que está vinculado el producto.
ejemplo: 4

productPages.productId: number
Identificador del producto.
ejemplo: 15

productPages.positionId: number
Identificador de posición de ordenación dentro de la página.
ejemplo: 244

productPages.categoryPath: string
Ruta de categoría de la página a la que pertenece el producto.
ejemplo: "products"

items.blocks: string[]
Array de identificadores de bloques.
ejemplo:

[
"block_12345",
"block_67890"
]

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
Cadena de ruta de categoría.
ejemplo: "catalog"