Panduan ItemList Schema

ItemList adalah schema.org's generic ordered-list container — mechanism Google's Carousel rich hasil adalah dibangun pada, dan parent jenis BreadcrumbList inherits dari. Apa ini melakukan, apa ini tidak, dan bagaimana pieces fit.

Pertama kali diterbitkan: 2 Jul 2026 · Terakhir diperbarui: 3 Agu 2026 · Lanjutan
1 sinyal bukti di halaman ini

ItemList adalah schema.org's generic 'ini adalah sebuah ordered list dari hal' container — dua properties (itemListElement dan sebuah 1-based position) melakukan hampir semua berfungsi. single biggest misconception: ItemList oleh itself adalah tidak sebuah rich hasil dan tidak mendapatkan Anda sebuah carousel. Google's Carousel rich hasil adalah dibangun pada top dari ItemList, dan hanya fires ketika Anda pair ini dengan sebuah didukung companion jenis (Course list, Movie, Recipe, Restaurant untuk classic carousel; LocalBusiness/Product/Event untuk sebuah newer geo-gated beta limited untuk EEA, Turkey, dan South Africa). BreadcrumbList adalah formally sebuah subtype dari ItemList — sama itemListElement/position mechanics — yang adalah detail itu trips up bahkan experienced implementers. Items harus semua menjadi yang sama jenis pada classic carousel ( beta memungkinkan mixing), Anda perlu 2+ items (3+ untuk beta), dan markup harus match terlihat konten. dan like semua data terstruktur, ItemList adalah tidak sebuah peringkat factor; -nya nilai adalah rich-hasil eligibility, tidak position — dan Google adalah jelas itu memenuhi requirements tidak pernah jaminan fitur sebenarnya displays.

TL;DR — ItemList adalah schema.org’s generic ordered-list container; itemListElement

  • sebuah 1-based position melakukan berfungsi, dengan itemListOrder dan numberOfItems sebagai lesser-digunakan extras (numberOfItems penting untuk paginated lists). ini adalah tidak itself sebuah rich hasil — Google’s Carousel adalah dibangun pada top dari ini dan hanya fires dengan sebuah didukung companion jenis: Course list, Movie, Recipe, Restaurant untuk classic carousel, dan LocalBusiness/Product/Event untuk sebuah newer beta itu’s geo-gated untuk EEA, Turkey, dan South Africa. Dua patterns: summary-halaman (url-hanya ListItems) dan semua-di-satu (nested items). aturan: 2+ items (3+ untuk beta), semua yang sama jenis pada classic carousel ( beta memungkinkan mixing), markup harus match terlihat konten. BreadcrumbList adalah formally sebuah subtype dari ItemList (dengan HowToSection, HowToStep, OfferCatalog) — detail sebagian besar guides miss. dan data terstruktur adalah tidak sebuah peringkat factor — -nya payoff adalah eligibility dan understanding, tidak position.
Bukti untuk klaim ini Schema.org ItemList models an ordered or unordered collection and ListItem can supply item positions and URLs. Cakupan: Schema.org ItemList vocabulary. Tingkat keyakinan: tinggi · Diverifikasi: Schema.org: ItemList Bukti untuk klaim ini Google uses ItemList within specific features such as host carousels; a generic valid ItemList has no standalone guaranteed rich result. Cakupan: Current Google carousel implementation and eligibility. Tingkat keyakinan: tinggi · Diverifikasi: Google Search Central: Carousel structured data

Apa ItemList sebenarnya adalah

Schema.org’s definition adalah dengan sengaja broad: “A list dari items dari any sort—misalnya, Top 10 Movies Tentang Weathermen, atau Top 100 Party Songs.” (terjemahan) “sebuah list dari items dari apa pun sort—misalnya, Top 10 Movies tentang Weathermen, atau Top 100 Party Songs.” line itu menjelaskan mengapa jenis perlu untuk exist adalah berikutnya satu: “Tidak untuk menjadi confused dengan HTML lists, yang adalah sering digunakan hanya untuk formatting.” (terjemahan) “Tidak untuk menjadi confused dengan HTML lists, yang adalah sering digunakan hanya untuk formatting.” sebuah <ol>/<ul> conveys “ini adalah a list, di ini order” (terjemahan) “ini adalah sebuah list, di ini order” purely oleh visual convention. ItemList declares container (ItemList), setiap entry (ListItem), dan setiap entry’s peringkat (position) sebagai data sebuah machine dapat baca tanpa inferring apa pun dari layout.

Dua properties melakukan berat lifting:

  • itemListElement — array dari entries. Schema.org: “Untuk itemListElement values, Anda dapat gunakan simple strings (e.g. ‘Peter’, ‘Paul’, ‘Mary’), existing entities, atau gunakan ListItem.” (terjemahan) “untuk itemListElement nilai, Anda dapat gunakan sederhana strings (e.g. ‘Peter’, ‘Paul’, ‘Mary’), existing entities, atau gunakan ListItem.” untuk apa pun itu ingin sebuah URL atau sebuah position (i.e. apa pun aiming di sebuah rich hasil), Anda gunakan ListItem.
  • position — sebuah 1-based integer giving setiap ListItem -nya peringkat.

Dua lebih adalah terdokumentasi tetapi skipped oleh sebagian besar guides:

  • itemListOrder — “Jenis dari ordering (e.g. Ascending, Descending, Unordered).” (terjemahan) “jenis dari ordering (e.g. Ascending, Descending, Unordered).” sebuah declaration, tidak sesuatu Google enforces.
  • numberOfItems — “Itu number dari items di an ItemList. Note itu some descriptions mungkin tidak fully deskripsikan all items di a list.” (terjemahan) “ angka dari items di sebuah ItemList. Note itu beberapa deskripsi mungkin tidak fully deskripsikan semua items di sebuah list.” ini satu earns -nya pertahankan pada paginated lists: sebuah “Top 100” (terjemahan) “Top 100” split di seluruh five halaman dapat gunakan numberOfItems untuk state penuh count bahkan though apa pun satu halaman marks up hanya twenty entries.

(ada juga aggregateElement untuk holding aggregate ratings/offers di seluruh list — genuinely niche; Anda’ll rarely touch ini.)

dua implementation patterns

Google’s carousel documentation mendeskripsikan dua shapes, dan yang satu Anda gunakan perubahan apa setiap ListItem looks like:

Summary halaman dan multiple detail halaman

sebuah summary halaman lists setiap item briefly, dan setiap entry tautan out untuk sebuah dedicated detail halaman. Di sini ListItem adalah minimal — Google: summary halaman defines sebuah ItemList di mana setiap ListItem memiliki hanya three properties: @type (atur ke ListItem), position ( position di list), dan url ( canonical URL dari item’s detail halaman). penuh per-item data terstruktur ( Recipe, Movie, dan seterusnya.) lives pada setiap detail halaman.

semua-di-satu summary halaman

Semuanya lives pada satu halaman, so setiap ListItem carries sebuah nested item containing penuh companion-jenis markup ( seluruh Recipe object, misalnya) alih-alih hanya sebuah url. gunakan ini ketika tidak ada terpisah detail halaman.

Di sini’s accuracy spine dari seluruh topic. ItemList adalah sebuah container; Carousel adalah sebuah rich hasil dibangun pada top dari ini. ItemList alone, dengan Tidak didukung companion jenis, melakukan tidak produce sebuah distinct “list” (terjemahan) “list” rich hasil di classic Google Search. Google’s docs adalah jelas itu carousel eligibility memerlukan keduanya pieces.

untuk menjadi eligible untuk sebuah host carousel rich hasil, Anda tambahkan ItemList data terstruktur di combination dengan satu dari sebuah kecil, Google-controlled set dari didukung fitur. sebagai dari Google’s saat ini (2026) documentation, itu list adalah:

«- Course list

  • Movie
  • Recipe
  • Restaurant » (Terjemahan) (Ringkasan bahasa Indonesia untuk bagian tiga puluh lima, bagian kecil satu: teks sumber dipertahankan agar dapat diperiksa dalam tinjauan penutur asli.)

itu’s ini untuk classic carousel. lainnya jenis — Product, BlogPosting, Event — dapat carry ItemList markup untuk organization dan machine understanding, tetapi itu alone melakukan tidak membuat them classic-carousel-eligible.

Carousels (Beta) — newer, geo-gated program

«There’s a second, newer program — Carousels (Beta) — that Google describes as “a list-like rich result that people can scroll horizontally to see more entities from a given site.” It’s the more actively-evolving part of this feature area, and it differs from the classic carousel in three important ways: » (Terjemahan) (Ringkasan bahasa Indonesia untuk bagian tiga puluh delapan, bagian kecil satu: teks sumber dipertahankan agar dapat diperiksa dalam tinjauan penutur asli.)

«- Different supported types: ItemList combined with LocalBusiness and its subtypes (Restaurant, Hotel, VacationRental), Product, or Event — a broader and different set than the classic four.

  • Geographically limited: it’s available only in EEA countries, Turkey, and South Africa, on desktop and mobile, with the eligible query types varying by region. This is not a global feature — a caveat worth stating plainly, since several third-party write-ups discuss it as if it’s generally available.
  • A higher minimum: the beta requires a summary page plus detail pages with at least three itemListElement.item entries, versus the classic carousel’s two.
  • Mixing is allowed: unlike the classic carousel’s strict same-type rule, Google’s beta documentation says you “can mix and match different types of entities (for example, hotels, restaurants), if needed for your scenario” — don’t carry the classic same-type assumption over when you’re working with the beta. » (Terjemahan) (Ringkasan bahasa Indonesia untuk bagian tiga puluh sembilan, bagian kecil satu: teks sumber dipertahankan agar dapat diperiksa dalam tinjauan penutur asli.)

Treat beta sebagai “watch ini space” (terjemahan) “watch ini space” alih-alih sebuah stable, universal fitur.

Bagaimana BreadcrumbList (dan sebuah sedikit others) relate untuk ItemList

«This is the single most under-covered, differentiating fact about ItemList, and it clears up a common point of confusion: BreadcrumbList is not a separate, unrelated schema type — it is formally a subtype of ItemList. Schema.org states it directly: “A BreadcrumbList is an ItemList consisting of a chain of linked Web pages, typically described using at least their URL and their name, and typically ending with the current page.” And schema.org’s own “More specific Types” list for ItemList is exactly four entries: BreadcrumbList, HowToSection, HowToStep, and OfferCatalog. » (Terjemahan) (Ringkasan bahasa Indonesia untuk bagian empat puluh dua, bagian kecil satu: teks sumber dipertahankan agar dapat diperiksa dalam tinjauan penutur asli.)

Practically, itu berarti itemListElement + position mechanics Anda gunakan untuk sebuah carousel adalah secara harfiah yang sama ones Anda gunakan untuk breadcrumbs — hanya outer @type (BreadcrumbList vs. plain ItemList) dan semantic purpose perubahan. Google frames breadcrumbs yang sama cara: untuk specify breadcrumbs, Anda define sebuah BreadcrumbList containing di least dua ListItems. jika Anda’ve implemented satu, Anda sudah memahami lainnya. ( breadcrumb side dari ini family lives di -nya own deep dive, dan terlihat carousel hasil adalah subject dari sebuah sibling carousel piece — keduanya sit di ini sama structured-data sub-cluster.)

Implementation requirements dan umum validation failures

sebagian besar carousel/ItemList failures come down untuk sebuah handful dari terdokumentasi aturan:

  • Minimum item count. Google memerlukan itemListElement array untuk berisi dua atau lebih ListItem elements untuk classic carousel (three atau lebih untuk beta). Satu item adalah tidak sebuah list.
  • sama-jenis aturan (classic carousel) — frequent nyata penyebab dari failures. Google: “All items di itu list harus menjadi dari itu sama jenis. Misalnya, jika a list adalah tentang recipes, hanya include Recipe items. jangan mix berbeda types.” (terjemahan) “semua items di list harus menjadi dari yang sama jenis. misalnya, jika sebuah list adalah tentang recipes, hanya sertakan Recipe items. jangan mix berbeda jenis.” sebuah list itu mixes Recipes dan Products tidak akan validate sebagai sebuah classic carousel. ini aturan adalah spesifik untuk classic program — beta di atas explicitly permits mixing entity jenis, so jangan carry yang sama-jenis assumption di atas ketika itu’s program Anda’re targeting.
  • terlihat-konten parity. sebuah umum structured-data policy itu’s called out secara khusus di sini: text terlihat untuk pengguna harus menjadi similar untuk informasi di structured data. Anda dapat’t mark up items itu tidak genuinely represented di terlihat halaman.
  • sama-domain URLs. sebuah host carousel menampilkan cards dari sama situs; item URLs seharusnya menjadi pada Anda own domain.
  • Standard structured-data hygiene applies. JSON-LD adalah Google’s recommended format, semua diperlukan properties untuk Anda companion jenis harus menjadi present (“Items itu adalah missing wajib properties adalah tidak eligible untuk rich hasil” (terjemahan) “Items itu adalah missing diperlukan properties adalah tidak eligible untuk rich hasil”), dan Anda harus tidak block marked-up halaman dari Googlebot melalui robots.txt atau noindex. ini adalah yang sama umum guidelines itu govern setiap rich-hasil jenis — lebih luas structured-data hub covers them di penuh.

melakukan ItemList schema memengaruhi rankings? (Tidak.)

pendek jawaban: Tidak. data terstruktur adalah tidak sebuah peringkat factor, dan itu mencakup ItemList. ini adalah Google’s consistent, repeated position. di Penelusuran Central Langsung APAC 2025, Gary Illyes dibuat poin itu “excessive atau redundant schema hanya adds halaman bloat dan memiliki Tidak additional ranking benefits,” (terjemahan) “excessive atau redundant schema hanya menambahkan halaman bloat dan memiliki Tidak additional peringkat benefits,” framing schema sebagai sebuah aid untuk entity understanding dan machine fitur — explicitly tidak bagian dari peringkat proses. Google’s standing position di seluruh recent tahun adalah yang sama: data terstruktur adalah tidak sebuah sinyal peringkat, dan bahkan di cases dari structured-data misuse consequence adalah kehilangan dari rich-hasil eligibility (melalui sebuah manual tindakan), tidak sebuah peringkat penalty.

Di mana melakukan nilai come dari, lalu? Dua places: rich-hasil eligibility (sebuah carousel dapat lift click-melalui, tidak position) dan machine understanding. pada kedua poin, John Mueller — speaking personally, dan explicitly “not official guidance” (terjemahan) “tidak official guidance” — noted di early 2026 itu beberapa fitur genuinely benefit dari data terstruktur, giving contoh itu “pricing, shipping, availability untuk shopping adalah basically impossible untuk baca di high fidelity & accurately dari a text halaman.” (terjemahan) “pricing, shipping, availability untuk shopping adalah basically impossible untuk baca di tinggi fidelity & accurately dari sebuah text halaman.” itu’s honest frame: ItemList helps machines memahami sebuah structured list; ini melakukan tidak peringkat ini lebih tinggi.

ItemList vs. CollectionPage — sebuah quick disambiguation

ini mendapatkan confused karena keduanya apply untuk “listing” (terjemahan) “listing” halaman, tetapi mereka jawaban berbeda pertanyaan. ItemList mendeskripsikan sebuah ordered list dari discrete items — entries dan mereka positions. CollectionPage adalah sebuah halaman jenis itu mewakili sebuah themed collection; ini adalah tentang halaman-tingkat semantics (“ini halaman adalah a collection dari hal” (terjemahan) “ini halaman adalah sebuah collection dari hal”) alih-alih ordering dari spesifik list items. mereka’re tidak mutually exclusive — sebuah category halaman dapat menjadi sebuah CollectionPage itu juga berisi sebuah ItemList dari -nya products — tetapi reach untuk ItemList ketika apa Anda ingin express adalah “di sini adalah itu ranked items,” (terjemahan) “di sini adalah diperingkatkan items,” dan CollectionPage ketika Anda ingin express “ini halaman adalah a curated collection.” (terjemahan) “ini halaman adalah sebuah curated collection.”

Di mana ini fits

ItemList adalah sebuah deep dive di bawah lebih luas data terstruktur hub, alongside sibling pieces pada terlihat carousel rich hasil (ItemList’s main Google application) dan pada BreadcrumbList (formally sebuah subtype dari very sama mechanism). untuk fundamentals itu govern setiap jenis di sini — schema.org vocabulary, JSON-LD, “tidak a ranking factor” (terjemahan) “tidak sebuah peringkat factor” spine, dan shrinking list dari didukung rich hasil — see data terstruktur hub. itu sub-cluster lives di dalam lebih luas pada-halaman SEO cluster.

Tambahkan catatan pakar

Sematkan kutipan pakar

Orang baru? Buat profilnya yang belum diklaim di /admin/experts/ → Sematkan kutipan pakar terlebih dahulu.