我有一個(gè)網(wǎng)站,客戶端請(qǐng)求 JSON-LD(不是微資料)schema.org 標(biāo)籤。他們想要的其中一個(gè)是每個(gè)頁面上都有一個(gè)基本的「WebPage」標(biāo)籤,其中包含有關(guān)每個(gè)頁面上的內(nèi)容的一些資訊。另一個(gè)是“FAQPage”,僅添加在特定的 FAQ 頁面上。兩者都將作為內(nèi)聯(lián)腳本標(biāo)記直接添加到頁面上。
FAQPage繼承自WebPage,因此包含了WebPage的所有屬性。
如果我只是讓頁腳程式碼產(chǎn)生「WebPage」標(biāo)籤,而FAQ 元件產(chǎn)生「FAQPage」標(biāo)籤,則兩者最終都會(huì)作為單獨(dú)的JSON-LD 腳本標(biāo)籤出現(xiàn)在頁面上- 我相信這會(huì)被解釋為兩個(gè)獨(dú)立的「網(wǎng)頁」 - 不是我們正在尋找的。 ??p>
是否可以標(biāo)記架構(gòu)標(biāo)籤,以便兩個(gè) JSON-LD 標(biāo)籤代表彼此的「擴(kuò)充」?由於 FAQPage 繼承了 WebPage,我希望有一種方法可以設(shè)定一個(gè)標(biāo)識(shí)符,以顯示兩者是正在記錄的相同頁面。
(是的,我可以使用後端的邏輯將有關(guān) FAQPage 的資訊「?jìng)鬟f」到頁腳,並讓頁腳元件動(dòng)態(tài)輸出 FAQPage 或 WebPage,但這不是我在這裡要尋找的。) p>
@id
關(guān)鍵字 可以用於此。它為節(jié)點(diǎn)物件提供一個(gè) IRI 形式的標(biāo)識(shí)符(或空白節(jié)點(diǎn)標(biāo)識(shí)符)。
具有相同@id
值的節(jié)點(diǎn)物件是同一件事,無論這些事物的類型是否具有繼承關(guān)係。
這些 IRI 不必解析為 Web 上的文件。如果他們這樣做,您應(yīng)該確保區(qū)分事物和有關(guān)該事物的文件。
但是,在您的特定情況下,該事物和有關(guān)該事物的文檔實(shí)際上表示相同。因此,您可以使用頁面的規(guī)範(fàn) IRI 作為 @id
:
sssccc sssccc
如果物件表示相同的事物,但具有不同的 @id
值,您可以使用屬性 owl:sameAs
##。但只支持 Schema.org 的消費(fèi)者不會(huì)意識(shí)到這一點(diǎn)。 (Schema.org 也有一個(gè) sameAs 屬性,但它有不同的意義。)