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ódigos de 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: Types
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 nenhum.
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 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: string
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 nenhum.
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 similares associados ao bloco.
exemplo:
{
"total": 10,
"items": []
}
similarProducts.total: number
O número total de produtos encontrados.
exemplo: 100
similarProducts.items: IProductsEntity[]
Um array de entidades de produtos.
exemplo:
[
{
"id": 12345,
"title": "Product 1"
},
{
"id": 67890,
"title": "Product 2"
}
]
items.id: number
O identificador único.
exemplo: 12345
items.localizeInfos: ILocalizeInfo
O nome dos produtos, levando em consideração a localização.
exemplo:
items.statusIdentifier: string | null
Identificadores de status da página do produto (podem ser null).
exemplo: "in_stock"
items.statusLocalizeInfos: ILocalizeInfo
Nome de status localizado para o produto.
exemplo: { "title": "Sale" }
items.attributeSetIdentifier: string | null
ID do conjunto de atributos.
exemplo: "set_12345"
items.position: number
Número do item (para ordenação).
exemplo: 1
items.price: number | null
O valor do preço da página do produto retirado do índice.
exemplo: 150.00
items.additional: object
Valor adicional do índice.
exemplo: { prices: { min: 5 max: 150 } }
items.sku: string | null
SKU do produto (Stock Keeping Unit), pode ser null.
exemplo: "SKU_12345"
items.isSync: boolean
Indicação de indexação da página.
exemplo: true
items.attributeValues: AttributeType
Array de valores de atributos do índice, representados.
exemplo:
[
{
"id": "color",
"value": "red"
}
]
items.categories: string[]
Categorias de produtos.
exemplo:
[
1,
2,
3
]
items.isVisible: boolean
Um sinal de visibilidade da página.
exemplo: true
items.moduleFormConfigs: Array<IFormConfig>
Configurações de formulários do módulo (opcional).
items.rating: IRating
Dados de avaliação.
items.isPositionLocked: boolean
Indicador de bloqueio da posição de ordenação (opcional).
exemplo: false
items.relatedIds: number[]
IDs de páginas de produtos relacionadas.
exemplo:
[
12345,
67890
]
items.paymentStages: unknown
Dados das etapas de pagamento (podem ser null).
exemplo: null
items.discountConfig: Record<string, unknown>
Objeto de configuração de desconto.
exemplo:
items.templateIdentifier: string | null
ID do usuário do template vinculado.
exemplo: "template_12345"
items.shortDescTemplateIdentifier: string | null
ID do usuário do template vinculado para uma descrição curta.
exemplo: "short_desc_template_12345"
items.signedPrice: string
Símbolo do preço.
items.productPages: IProductPageRef[]
Array de referências de páginas de produtos vinculando o produto às suas páginas.
exemplo:
[
{
"id": 16,
"pageId": 4,
"productId": 15,
"positionId": 244,
"categoryPath": "products"
}
]
productPages.id: number
Identificador único do registro de link produto-página.
exemplo: 16
productPages.pageId: number
Identificador da página à qual o produto está vinculado.
exemplo: 4
productPages.productId: number
Identificador do produto.
exemplo: 15
productPages.positionId: number
Identificador da posição de ordenação dentro da página.
exemplo: 244
productPages.categoryPath: string
Caminho da categoria da página à qual o produto pertence.
exemplo: "products"
items.blocks: string[]
Array de identificadores de blocos.
exemplo:
[
"block_12345",
"block_67890"
]
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
String do caminho da categoria.
exemplo: "catalog"