searchPage
Sayfa nesneleri için sınırlı çıktı ile hızlı arama.
Açıklama
Bu yöntem, bir metin sorgusuna (isim) dayalı olarak sayfa nesneleri için hızlı bir arama gerçekleştirir. Bir Promise döndürür ve bu Promise, IPagesEntity nesnelerinin bir dizisine veya boş bir diziye [] çözülür.
Sayfalar.searchPage(
isim*,
url,
langCode
);
Parametreler şeması
Şema
isim(zorunlu): string
Sayfa nesnelerini aramak için metin (arama, yerelleştirme bilgileri nesnesinin başlık alanında gerçekleştirilir ve dil dikkate alınır)
örnek: "Hakkımızda"
url: string
Sayfa URL'si
örnek: "katalog"
langCode: string
Dil kodu. Varsayılan: "en_US"
örnek: "en_US"
Örnekler
Minimal örnek
const response = await Pages.searchPage('cup');
Özelliklerle örnek
const response = await Pages.searchPage('cup', 'en_US');
Örnek yanıt
[
{
"id": 10,
"parentId": null,
"pageUrl": "catalog",
"depth": 0,
"localizeInfos": {
"title": "Catalog",
"menuTitle": "Catalog",
"htmlContent": "",
"plainContent": ""
},
"isVisible": true,
"blocks": [
"product_block",
"test",
"freq_ordered"
],
"type": "catalog_page",
"templateIdentifier": "template",
"attributeSetIdentifier": "page",
"attributeValues": {
"text": {
"type": "string",
"value": "catalog text",
"position": 0,
"additionalFields": {}
},
"number": {
"type": "integer",
"value": 0,
"position": 1,
"additionalFields": {}
},
"real": {
"type": "real",
"value": "",
"position": 2,
"additionalFields": {}
},
"float": {
"type": "float",
"value": 0,
"position": 3,
"additionalFields": {}
}
},
"moduleFormConfigs": [],
"isSync": true,
"template": {
"id": 4,
"attributeSetIdentifier": null,
"title": "Template",
"generalTypeId": 4,
"identifier": "template",
"version": 0,
"generalTypeName": "catalog_page",
"attributeValues": {},
"position": 1
}
}
]
Yanıt şeması
Şema: IPagesEntity[]
id: number
Nesnenin tanımlayıcısı.
örnek: 8
parentId: number | null
Üst 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ştirme dikkate alınarak 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: "sayfa"
attributeValues: IAttributeValues
Anahtarları işaretleyici olan ö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
Anahtarları işaretleyici olan ö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 bilgileri.
ö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 blokun pozisyonu.
örnek: 1
blocks.templateIdentifier: string | null
Blok tarafından kullanılan şablonun tanımlayıcısı veya 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ştirme dikkate alınarak.
örnek:
items.statusIdentifier: string | null
Ürün sayfası durum tanımlayıcıları (null olabilir).
örnek: "stokta_var"
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[]
İlgili ü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: "ürünler"
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: "katalog"