2011-11-07 23 views
12

Tôi đang làm việc với Microdata và tôi muốn sử dụng keywords của Schema.org cho CreativeWork.Làm cách nào để định dạng từ khóa trong Microdata cho CreativeWork?

Giản đồ chỉ định rằng văn bản phải là văn bản nhưng tôi có đặt mỗi từ khóa trong một phần tử riêng biệt với itemprop="keywords" hoặc tôi đặt tất cả trong một thành phần keywords không? Nếu tôi đặt tất cả trong một phần tử, tôi có sử dụng dấu phẩy làm dấu phân cách không?

Trả lời

9

Bạn nên tạo một yếu tố itemprop cho mỗi từ khóa như sau:

<div itemscope itemtype="http://schema.org/CreativeWork"> 
    <span itemprop="name">Resistance 3: Fall of Man</span> 
    by <span itemprop="author">Sony</span>. 
    Keywords: 
    <a href="/tags/game/"><span itemprop="keywords">Game</span></a>, 
    <a href="/tags/adult/"><span itemprop="keywords">Adult</span></a> 
</div> 
+0

Có thực sự là câu trả lời đúng không? Dường như với tôi rằng bạn có thể chỉ có một thuộc tính itemprop cho mỗi thuộc tính. –

+1

@fwuensche: Bạn có thể có [cùng một thuộc tính nhiều lần cho một mục] (http://stackoverflow.com/a/22337572/1591669). – unor

+0

Tôi sẽ thêm itemprop = "url" vào cả hai liên kết href. – Jonadabe

3

đọc của tôi về các đặc điểm kỹ thuật dẫn tôi đến kết luận rằng bạn có thể chỉ có một thuộc tính itemprop mỗi tài sản.

Nói cách khác, tôi không nghĩ rằng việc tạo phần tử itemprop cho mỗi từ khóa sẽ tạo cú pháp microdata chính xác.

tôi sẽ đặt mỗi từ khóa trong một danh sách không gian tách ra, và sử dụng một itemprop duy nhất:

<span itemprop="keywords"> 
    <a href="/tags/game/">Game</a>, 
    <a href="/tags/adult/">Adult</a> 
    </span> 

or 

<meta itemprop="keywords" content="Game Adult"/> 

tôi không chắc chắn những gì nên được thực hiện trong trường hợp một từ khóa chứa nhiều lời, vì không có gì trong các đặc điểm kỹ thuật mà nói cách từ khóa nên được tách ra trong văn bản (tôi giả sử bởi dấu cách và. dấu chấm câu như dấu phẩy).

@Lawrence Woodman: bạn có thể chỉ ra nơi bạn đọc, trong đặc tả, rằng nó được phép có nhiều phần tử itemprop cho cùng một thuộc tính không?

+1

Tôi không thể theo dõi nơi bạn nhận được thông tin có giới hạn cho 'chỉ một thuộc tính itemprop cho mỗi thuộc tính' trong bản nháp Microdata hiện tại http://www.w3.org/html/wg/drafts/microdata/master/#property-names Bạn đang đề cập đến tên thuộc tính hoặc giá trị thuộc tính? Ví dụ mã nói rằng thuộc tính 'the" a "có giá trị" 1 "và" 2 "'. Hơn nữa bản nháp chỉ định nếu phần tử là 'a' giá trị là URL từ thuộc tính' href' của nó, vì vậy ví dụ đầu tiên của bạn sẽ có 'từ khóa: ['/ tags/game /', '/ tags/adult/'] 'như cặp giá trị tên trong bài đọc của tôi. –

2

Bằng cách đọc tài liệu, tôi muốn nói bạn có thể sử dụng thẻ meta để phân tích nội dung bị ẩn hoặc ở định dạng không đúng. Đó là trường hợp của priceCurrencydatePublished trong mã bên dưới, được lấy từ schema.org documentation.

<div itemprop="offers" itemscope itemtype="http://schema.org/Offer"> 
    Price: <span itemprop="price">$6.99</span> 
    <meta itemprop="priceCurrency" content="USD" /> 
    <link itemprop="availability" href="http://schema.org/InStock">In Stock 
</div> 

Product details 
<span itemprop="numberOfPages">224</span> pages 
Publisher: <span itemprop="publisher">Little, Brown, and Company</span> - 
<meta itemprop="datePublished" content="1991-05-01">May 1, 1991 
Language: <span itemprop="inLanguage">English</span> 
ISBN-10: <span itemprop="isbn">0316769487</span> 

Giả sử tôi đúng, tôi đã thay đổi mã của mình thành những điều sau đây.

<div itemscope itemtype="http://schema.org/CreativeWork"> 
    <!-- way too many content --> 
    <h5>Keywords</h5> 
    <meta itemprop="keywords" content="Rio de Janeiro, Brazil"> 
    <a href="/tags/rio/" rel="nofollow">Rio de Janeiro</a> 
    <a href="/tags/brazil/" rel="nofollow">Brazil</a> 
</div> 

Tôi sẽ triển khai trong vài ngày, vì vậy xin lỗi tôi không thể biết liệu nó có hoạt động ngay bây giờ hay không.

CẬP NHẬT: Sau khi triển khai mã, nó hoạt động như một nét duyên dáng. Bạn có thể xem kết quả qua số Google Data Testing Tool và so sánh với đoạn mã chi tiết được sử dụng trên the real product.

7

Định nghĩa về số keywords property của Schema.org đã thay đổi. Bây giờ nó đọc:

Từ khóa hoặc thẻ được sử dụng để mô tả nội dung này. Nhiều mục nhập trong danh sách từ khóa thường được phân tách bằng dấu phẩy.

Vì vậy, nó có thể nhìn như thế này trong Microdata:

<article itemscope itemtype="http://schema.org/BlogPosting"> 

    <footer> 
    <ul itemprop="keywords"> 
     <li><a href="/tags/foo" rel="tag">foo</a>,</li> 
     <li><a href="/tags/bar" rel="tag">bar</a></li> 
    </ul> 
    </footer> 

</article> 

(Ví dụ lấy từ câu trả lời liên quan của tôi về semantic markup for tags.)

Nếu bạn không muốn có dấu phẩy hiển thị trên trang, bạn có thể sử dụng một yếu tố meta ngoài đánh dấu bình thường của bạn cho các thẻ:

<meta itemprop="keywords" content="foo, bar" /> 

(Đó là allowed để đặt yếu tố meta này trong 'body'.)

+0

đây phải là câu trả lời đúng – xorinzor

Các vấn đề liên quan