Pular para o conteúdo principal

getPageByUrl

Obtendo um único objeto de página com informações sobre formulários, blocos e menus anexados à página por URL.

Descrição

Este método recupera um único objeto de página com base em sua URL (url) da API. Ele retorna uma Promise que resolve para o objeto de página IPagesEntity, com o objeto específico dependendo do tipo de página que está sendo retornada.

Páginas.getPageByUrl(

url*, langCode

);

Esquema de parâmetros

Esquema

url(obrigatório): string
URL da página
exemplo: "about"

langCode: string
Código do idioma. Padrão: "en_US"
exemplo: "en_US"

Exemplos

Exemplo mínimo

const response = await Pages.getPageByUrl('shop');

Exemplo com atributos

const response = await Pages.getPageByUrl('shop', 'en_US');

Exemplo de resposta

{
"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 resposta

Esquema: IPagesEntity

id: number
O identificador do objeto.
exemplo: 8

parentId: number | null
O id da página pai, se contiver null, então é a página de nível superior.
exemplo: 10

pageUrl: string
URL única da página.
exemplo: "blog"

depth: number
Profundidade de aninhamento da página em relação ao parentId.
exemplo: 10

localizeInfos: ILocalizeInfo
O nome da página, levando em consideração a localização.
exemplo:

{
"title": "Blog",
"menuTitle": "Blog",
"htmlContent": "",
"plainContent": ""
}

isVisible: boolean
Um sinal de visibilidade da página.
exemplo: true

type: PageType
Tipo de página.
exemplo: "common_page"

templateIdentifier: string | null
ID do usuário do template vinculado.
exemplo: "template"

attributeSetIdentifier: string | null
ID do conjunto de atributos.
exemplo: "page"

attributeValues: IAttributeValues
Mapa de valores de atributos indexados por marcador; objeto vazio quando não houver.
exemplo:

{
"text": {
"type": "string",
"value": "some text",
"position": 0,
"additionalFields": []
}
}

isSync: boolean
Indicação de indexação da página.
exemplo: true

template: object
Objeto de template.
exemplo:

{}

position: number
Número do item (para ordenação).
exemplo: 2

config: Record<string, number>
Configurações de saída para páginas de catálogo.
exemplo:

{
"rowsPerPage": 1,
"productsPerRow": 1
}

products: number
O número de produtos vinculados à página.
exemplo: 0

childrenCount: number
Contagem de filhos.
exemplo: 1

blocks: IBlockEntity[] | string[]
blocos.
exemplo:

{
"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 vazio quando não houver.
exemplo:

{
"block-text": {
"type": "string",
"value": "some text",
"isIcon": false,
"position": 0,
"additionalFields": [],
"isProductPreview": false
}
}

blocks.id: number
Identificador único do bloco.
exemplo: 1234

blocks.localizeInfos: ILocalizeInfo
Informações de localização para o bloco.
exemplo:

{
"key": "value"
}

blocks.version: number
Versão da entidade do bloco.
exemplo: 1

blocks.identifier: string
Identificador de string único para o bloco.
exemplo: "block1"

blocks.type: BlockType
Tipo do bloco.
exemplo: "product"

blocks.position: number
Posição do bloco para ordenação.
exemplo: 1

blocks.templateIdentifier: string | null
Identificador do template usado pelo bloco, ou null se não aplicável.
exemplo: "template1"

blocks.isVisible: boolean
Indica se o bloco é visível.
exemplo: true

blocks.countElementsPerRow: number
Número de elementos exibidos por linha no bloco, se aplicável.
exemplo: 3

blocks.quantity: number
Quantidade de itens no bloco, se aplicável.
exemplo: 5

blocks.similarProducts: IProductsResponse
Resposta contendo produtos semelhantes associados ao bloco.
exemplo:

{
"total": 10,
"items": []
}

blocks.products: IProductsEntity[]
Array de entidades de produtos associadas ao bloco.
exemplo:

[
{
"id": 1,
"name": "Product 1"
},
{
"id": 2,
"name": "Product 2"
}
]

moduleFormConfigs: Array<IFormConfig>
Configurações de formulários do módulo vinculadas à página.

rating: IRating
Dados de avaliação.

total: string
Número total de produtos vinculados à página.
exemplo: "10"

categoryPath: string | null
String do caminho da categoria; null para páginas aninhadas que não têm seu próprio caminho de categoria.
exemplo: "catalog"


Exemplos de uso

Passo a passo na documentação:

Experimente ao vivo

Execute este método interativamente no sandbox do JS SDK — conecte sua URL do Projeto e Token do App na primeira visita, depois abra: