搜尋

首頁  >  問答  >  主體

多個 JSON-LD Schema.org 標籤可以代表同一個「物件」嗎?

我有一個網站,客戶端請求 JSON-LD(不是微資料)schema.org 標籤。他們想要的其中一個是每個頁面上都有一個基本的「WebPage」標籤,其中包含有關每個頁面上的內容的一些資訊。另一個是“FAQPage”,僅添加在特定的 FAQ 頁面上。兩者都將作為內聯腳本標記直接添加到頁面上。

FAQPage繼承自WebPage,因此包含了WebPage的所有屬性。

如果我只是讓頁腳程式碼產生「WebPage」標籤,而FAQ 元件產生「FAQPage」標籤,則兩者最終都會作為單獨的JSON-LD 腳本標籤出現在頁面上- 我相信這會被解釋為兩個獨立的「網頁」 - 不是我們正在尋找的。

是否可以標記架構標籤,以便兩個 JSON-LD 標籤代表彼此的「擴充」?由於 FAQPage 繼承了 WebPage,我希望有一種方法可以設定一個標識符,以顯示兩者是正在記錄的相同頁面。

(是的,我可以使用後端的邏輯將有關 FAQPage 的資訊「傳遞」到頁腳,並讓頁腳元件動態輸出 FAQPage 或 WebPage,但這不是我在這裡要尋找的。)

P粉289775043P粉289775043263 天前599

全部回覆(1)我來回復

  • P粉207969787

    P粉2079697872024-03-31 10:39:41

    @id 關鍵字 可以用於此。它為節點物件提供一個 IRI 形式的標識符(或空白節點標識符)。

    具有相同@id值的節點物件是同一件事,無論這些事物的類型是否具有繼承關係。

    這些 IRI 不必解析為 Web 上的文件。如果他們這樣做,您應該確保區分事物和有關該事物的文件。

    但是,在您的特定情況下,該事物和有關該事物的文檔實際上表示相同。因此,您可以使用頁面的規範 IRI 作為 @id

    
    
    sssccc
    
    sssccc
    

    如果物件表示相同的事物,但具有不同的 @id 值,您可以使用屬性 owl:sameAs##。但只支持 Schema.org 的消費者不會意識到這一點。 (Schema.org 也有一個 sameAs 屬性,但它有不同的意義。)

    回覆
    0
  • 取消回覆