getPageByUrl
Bir sayfa nesnesini, sayfaya URL ile eklenmiş formlar, bloklar, menüler hakkında bilgi ile almak.
Açıklama
Bu yöntem, API'den URL'sine (url) göre bir sayfa nesnesi alır. Sayfa nesnesi IPagesEntity olarak döner ve dönen sayfanın türüne bağlı olarak belirli bir nesne içerir.
Sayfalar.getPageByUrl(
url*,
langCode
);
Parametreler şeması
Şema
url(gerekli): string
Sayfa URL'si
örnek: "about"
langCode: string
Dil kodu. Varsayılan: "en_US"
örnek: "en_US"
Örnekler
Minimal örnek
const response = await Pages.getPageByUrl('shop');
Özelliklerle örnek
const response = await Pages.getPageByUrl('shop', 'en_US');
Örnek yanıt
{
"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
}
Yanıt şeması
Şema: IPagesEntity
id: number
Nesnenin tanımlayıcısı.
örnek: 8
parentId: number | null
Ebeveyn sayfanın id'si, eğer null içeriyorsa, o zaman üst düzey sayfadır.
örnek: 10
pageUrl: string
Benzersiz sayfa URL'si.
örnek: "blog"
depth: number
parentId'ye göre sayfa iç içe geçme derinliği.
örnek: 10
localizeInfos: ILocalizeInfo
Yerelleştirmeyi dikkate alarak sayfanın adı.
örnek:
{
"title": "Blog",
"menuTitle": "Blog",
"htmlContent": "",
"plainContent": ""
}
isVisible: boolean
Sayfa görünürlüğü belirtisi.
örnek: true
type: Types
Sayfa türü.
örnek: "common_page"
templateIdentifier: string | null
Bağlı şablonun kullanıcı id'si.
örnek: "template"
attributeSetIdentifier: string | null
Özellikler setinin id'si.
örnek: "page"
attributeValues: IAttributeValues
İşaretleyiciye göre anahtarlanan özellik değerleri haritası; yoksa boş nesne.
örnek:
{
"text": {
"type": "string",
"value": "some text",
"position": 0,
"additionalFields": []
}
}
isSync: boolean
Sayfa dizinleme belirtisi.
örnek: true
template: object
Şablon nesnesi.
örnek:
position: number
Sıralama için öğe numarası.
örnek: 2
config: Record<string, number>
Katalog sayfaları için çıktı ayarları.
örnek:
{
"rowsPerPage": 1,
"productsPerRow": 1
}
products: number
Sayfaya bağlı ürün sayısı.
örnek: 0
childrenCount: string
Çocuk sayısı.
örnek: 1
blocks: IBlockEntity[] | string[]
bloklar.
örnek:
{
"id": 4,
"attributeSetIdentifier": null,
"title": "Template",
"generalTypeId": 4,
"identifier": "template",
"version": 0,
"generalTypeName": "catalog_page",
"attributeValues": {},
"position": 1
}
blocks.attributeValues: IAttributeValues
İşaretleyiciye göre anahtarlanan özellik değerleri haritası; yoksa boş nesne.
örnek:
{
"block-text": {
"type": "string",
"value": "some text",
"isIcon": false,
"position": 0,
"additionalFields": [],
"isProductPreview": false
}
}
blocks.id: number
Blokun benzersiz tanımlayıcısı.
örnek: 1234
blocks.localizeInfos: ILocalizeInfo
Blok için yerelleştirme bilgisi.
örnek:
{
"key": "value"
}
blocks.version: number
Blok varlığının versiyonu.
örnek: 1
blocks.identifier: string
Blok için benzersiz dize tanımlayıcısı.
örnek: "block1"
blocks.type: BlockType
Blok türü.
örnek: "product"
blocks.position: number
Sıralama için blok pozisyonu.
örnek: 1
blocks.templateIdentifier: string | null
Blok tarafından kullanılan şablonun tanımlayıcısı, geçerli değilse null.
örnek: "template1"
blocks.isVisible: boolean
Blokun görünür olup olmadığını belirtir.
örnek: true
blocks.countElementsPerRow: number
Blokta her satırda görüntülenen öğe sayısı, geçerliyse.
örnek: 3
blocks.quantity: number
Blokta bulunan öğe sayısı, geçerliyse.
örnek: 5
blocks.similarProducts: IProductsResponse
Blok ile ilişkili benzer ürünleri içeren yanıt.
örnek:
{
"total": 10,
"items": []
}
similarProducts.total: number
Bulunan toplam ürün sayısı.
örnek: 100
similarProducts.items: IProductsEntity[]
Ürün varlıklarının bir dizisi.
örnek:
[
{
"id": 12345,
"title": "Product 1"
},
{
"id": 67890,
"title": "Product 2"
}
]
items.id: number
Benzersiz tanımlayıcı.
örnek: 12345
items.localizeInfos: ILocalizeInfo
Ürünlerin adı, yerelleştirmeyi dikkate alarak.
örnek:
items.statusIdentifier: string | null
Ürün sayfası durum tanımlayıcıları (null olabilir).
örnek: "in_stock"
items.statusLocalizeInfos: ILocalizeInfo
Ürün için yerelleştirilmiş durum adı.
örnek: { "title": "İndirim" }
items.attributeSetIdentifier: string | null
Özellikler setinin id'si.
örnek: "set_12345"
items.position: number
Sıralama için öğe numarası.
örnek: 1
items.price: number | null
Dizinden alınan ürün sayfası fiyatının değeri.
örnek: 150.00
items.additional: object
Dizinden alınan ek değer.
örnek: { prices: { min: 5 max: 150 } }
items.sku: string | null
Ürün SKU'su (Stok Tutma Birimi), null olabilir.
örnek: "SKU_12345"
items.isSync: boolean
Sayfa dizinleme belirtisi.
örnek: true
items.attributeValues: AttributeType
Dizinden alınan özellik değerlerinin dizisi, temsil edilen.
örnek:
[
{
"id": "color",
"value": "red"
}
]
items.categories: string[]
Ürün kategorileri.
örnek:
[
1,
2,
3
]
items.isVisible: boolean
Sayfa görünürlüğü belirtisi.
örnek: true
items.moduleFormConfigs: Array<IFormConfig>
Modül form yapılandırmaları (isteğe bağlı).
items.rating: IRating
Değerlendirme verileri.
items.isPositionLocked: boolean
Sıralama pozisyonu kilit belirtisi (isteğe bağlı).
örnek: false
items.relatedIds: number[]
İlişkili ürün sayfalarının id'leri.
örnek:
[
12345,
67890
]
items.paymentStages: unknown
Ödeme aşamaları verileri (null olabilir).
örnek: null
items.discountConfig: Record<string, unknown>
İndirim yapılandırma nesnesi.
örnek:
items.templateIdentifier: string | null
Bağlı şablonun kullanıcı id'si.
örnek: "template_12345"
items.shortDescTemplateIdentifier: string | null
Kısa açıklama için bağlı şablonun kullanıcı id'si.
örnek: "short_desc_template_12345"
items.signedPrice: string
Fiyat işareti.
items.productPages: IProductPageRef[]
Ürünü sayfalarına bağlayan ürün sayfası referanslarının dizisi.
örnek:
[
{
"id": 16,
"pageId": 4,
"productId": 15,
"positionId": 244,
"categoryPath": "products"
}
]
productPages.id: number
Ürün-sayfa bağlantı kaydının benzersiz tanımlayıcısı.
örnek: 16
productPages.pageId: number
Ürünün bağlı olduğu sayfanın tanımlayıcısı.
örnek: 4
productPages.productId: number
Ürünün tanımlayıcısı.
örnek: 15
productPages.positionId: number
Sayfa içindeki sıralama pozisyonu tanımlayıcısı.
örnek: 244
productPages.categoryPath: string
Ürünün ait olduğu sayfanın kategori yolu.
örnek: "products"
items.blocks: string[]
Blok tanımlayıcılarının dizisi.
örnek:
[
"block_12345",
"block_67890"
]
blocks.products: IProductsEntity[]
Blok ile ilişkili ürün varlıklarının dizisi.
örnek:
[
{
"id": 1,
"name": "Product 1"
},
{
"id": 2,
"name": "Product 2"
}
]
moduleFormConfigs: Array<IFormConfig>
Sayfaya bağlı modül form yapılandırmaları.
rating: IRating
Değerlendirme verileri.
total: string
Sayfaya bağlı toplam ürün sayısı.
örnek: "10"
categoryPath: string
Kategori yolu dizesi.
örnek: "catalog"