Lütfen mikro veri sağlamak için özniteliklerle işaretlenmiş aşağıdaki kodu göz önünde bulundurun:
<!DOCTYPE html>
<html>
<head>
<title>Micro data test - Normal version</title>
</head>
<body>
<div itemscope itemtype="http://schema.org/Product">
<h1 itemprop="name">Product name</h1>
<img alt="" itemprop="image" src="http://placehold.it/200x200" />
<div itemprop="description">This is the product description.</div>
<div itemprop="offers" itemscope itemtype="http://schema.org/Offer">
<meta content="in_stock" itemprop="availability" />
<span content="GBP" itemprop="priceCurrency">£</span><span itemprop="price">100.00</span>
</div>
</div>
</body>
</html>
Google'ın Yapısal Veri Test Aracı'nı kullanmak olumlu sonuçlar verir.
Test örneğinde bu sorun değil, ancak HTML yapısı çok farklı olan çeşitli sitelere mikro veriler uygulamak istiyoruz. Nitelikleri bu şekilde uygulamak için birisinin sitelerin her birindeki HTML işaretlemesini tek tek manuel olarak düzenlemesini gerektirir.
Tercihen, tüm mikro verileri tek bir yerde paketleyen tek bir işlevi çağırabiliyoruz; teknik olarak bu, meta etiketleri aşağıdaki şekilde kullanarak mümkündür:
<!DOCTYPE html>
<html>
<head>
<title>Micro data test - Meta tag version</title>
</head>
<body>
<meta itemscope itemtype="http://schema.org/Product" itemref="microName microImage microDescription microOffer" />
<meta id="microName" itemprop="name" content="Product name" />
<link id="microImage" itemprop="image" href="http://placehold.it/200x200" />
<meta id="microDescription" itemprop="description" content="This is the product description." />
<meta id="microOffer" itemprop="offers" itemscope itemtype="http://schema.org/Offer" itemref="microCurrency microPrice microAvail" />
<meta id="microAvail" itemprop="availability" content="in_stock" />
<meta id="microCurrency" itemprop="priceCurrency" content="GBP" />
<meta id="microPrice" itemprop="price" content="100.00" />
<div>
<h1>Product name</h1>
<img alt="" src="http://placehold.it/200x200" />
<div>This is the product description.</div>
<div>£100.00</div>
</div>
</body>
</html>
Google'ın Yapısal Veri Test Aracı'nı kullanmak , ilk testle aynı olumlu sonuçları verir.
Referans olması için (bunu asla gerçek bir sitede yapmayız) CSS tarafından gizlenmiş mikro verileri geçirmeye çalışırsanız Google'ın Yapısal Veri Test Aracı bir hata döndürür.
Dolayısıyla, hem normal hem de meta etiket biçimlendirmesi aynı sonuçları üretir, ancak Google ve Schema.org'dan aşağıdaki ifadeler nedeniyle bazı endişelerim var:
https://support.google.com/webmasters/answer/146750 durumu:
Genel olarak, Google yalnızca kullanıcı tarafından görülebilen işaretlenmiş verileri kullanır. Gizli veriler yok sayılır. Bununla birlikte, birkaç durumda, içeriğinizin hem makine tarafından okunabilir hem de okunabilir bir sürümünü sağlamak yararlı olabilir. Örneğin, "Elvis'in doğum günü" metin dizesi birçok insan okuyucu için önemli olsa da, arama motorları için 1935-01-08 kadar anlamlı değildir. Benzer şekilde, insan okuyucular $ sembolünün anlamını çıkarabilir, ancak arama motorlarına fiyatlarınızın peso veya dolar cinsinden olup olmadığını özellikle söylemek yararlı olabilir.
http://schema.org/docs/gs.html durumlar (meta etiketleri kullanma ile ilgili olarak):
Bu teknik idareli kullanılmalıdır. Başka şekilde işaretlenemeyen bilgiler için yalnızca içeriğe sahip meta kullanın.
http://schema.org/docs/faq.html#13 belirtiyor:
Genel bir kural olarak, yalnızca gizli web sayfalarındaki veya diğer gizli sayfa öğelerindeki içeriği değil, yalnızca web sayfasını ziyaret edenlerin görebileceği içeriği işaretlemelisiniz.
Sorularım:
- Hiçbir hata döndürülmezken, arama motorları tarafından meta etiketlerin bu şekilde kullanılması nedeniyle cezalandırılır mıyız (örneğin, yinelenen içerik, bilgileri gizleme vb.)?
- Bu uygun değilse, mikro verileri gerçek verilerden ayırmanın herhangi bir yolunu önerebilir misiniz yoksa mermiyi ısırıp bunu duruma göre HTML'de uygulamamız gerekecek mi?