Schema.org structured data overview of Thing

Structured Data for Shopify using Schema.org: Boosting Visibility and SEO

Keith Hardisty

In the world of e-commerce, it's crucial to make your Shopify website stad out to attract and engage customers. One effective way to achieve this is by leveraging structured data, also known as schema markup. By incorporating structured data into your Shopify website's various templates, such as products, home, collections, blogs, and articles, you can enhance visibility, improve search engine rankings, and provide a seamless user experience. In this blog post, we'll delve into the process of adding structured data to these templates and highlight the specific schema.org types, including breadcrumbs, that can be utilized.

1. Structured Data for Product Templates

To optimize your product templates, incorporating structured data is essential. It allows search engines to understand key information about your products, such as name, description, price, availability, and reviews. Here's an example of structured data using Liquid template language and schema.org types for products:



<script type="application/ld+json">
{
  "@context": "https://schema.org/",
  "@type": "Product",
  "name": "{{ product.title }}",
  "description": "{{ product.description }}",
  "brand": {
    "@type": "Brand",
    "name": "{{ product.vendor }}"
  },
  "image": "{{ product.featured_image.src }}",
  "offers": {
    "@type": "Offer",
    "price": "{{ product.price }}",
    "priceCurrency": "{{ shop.currency }}",
    "availability": "https://schema.org/{{ product.available ? 'InStock' : 'OutOfStock' }}"
  },
  "aggregateRating": {
    "@type": "AggregateRating",
    "ratingValue": "{{ product.rating }}",
    "reviewCount": "{{ product.reviews_count }}"
  }
}
</script>

2. Structured Data for Home Templates

Your home page acts as the gateway to your Shopify store. Enhancing it with structured data, such as organization markup, helps search engines grasp your business's key details. Consider including elements like name, logo, contact information, and social media profiles:



<script type="application/ld+json">
{
  "@context": "https://schema.org/",
  "@type": "Organization",
  "name": "{{ shop.name }}",
  "url": "{{ shop.url }}",
  "logo": "{{ shop.logo }}",
  "contactPoint": {
    "@type": "ContactPoint",
    "telephone": "{{ shop.phone }}",
    "contactType": "customer service"
  },
  "sameAs": [
    "{{ shop.social_media.facebook }}",
    "{{ shop.social_media.twitter }}",
    "{{ shop.social_media.instagram }}"
  ]
}
</script>

3. Structured Data for Collection Templates

Collections allow you to group related products together. Adding structured data to collection templates assists search engines in understanding the theme or category of your collections. Here's an example:



<script type="application/ld+json">
{
  "@context": "https://schema.org/",
  "@type": "ItemList",
  "name": "{{ collection.title }}",
  "description": "{{ collection.description }}",
  "itemListElement": [
    {% for product in collection.products %}
    {
      "@type": "Product",
      "name": "{{ product

.title }}",
      "url": "{{ product.url }}",
      "image": "{{ product.featured_image.src }}"
    }{% unless forloop.last %},{% endunless %}
    {% endfor %}
  ]
}
</script>

4. Structured Data for Blog Templates

Blogs play a crucial role in providing valuable content to your audience. Adding structured data to your blog templates helps search engines understand the context of your blog posts, enabling better presentation in search results. Additionally, implementing breadcrumbs schema can enhance the user experience by displaying hierarchical navigation. Here's an example:



<script type="application/ld+json">
{
  "@context": "https://schema.org/",
  "@type": "BreadcrumbList",
  "itemListElement": [
    {
      "@type": "ListItem",
      "position": 1,
      "name": "Home",
      "item": "{{ shop.url }}"
    },
    {
      "@type": "ListItem",
      "position": 2,
      "name": "Blog",
      "item": "{{ blog.url }}"
    },
    {
      "@type": "ListItem",
      "position": 3,
      "name": "{{ article.title }}",
      "item": "{{ article.url }}"
    }
  ]
}
</script>

5. Structured Data for Blog Article Templates

Blog articles provide valuable information and engaging content. Incorporating structured data into your blog article templates helps search engines understand the article's title, description, author, publish date, and main content. Here's an example:



<script type="application/ld+json">
{
  "@context": "https://schema.org/",
  "@type": "BlogPosting",
  "headline": "{{ article.title }}",
  "description": "{{ article.excerpt }}",
  "image": "{{ article.featured_image.src }}",
  "author": {
    "@type": "Person",
    "name": "{{ article.author }}"
  },
  "datePublished": "{{ article.published_at }}",
  "dateModified": "{{ article.updated_at }}",
  "articleBody": "{{ article.content }}"
}
</script>

Conclusion

By integrating structured data into your Shopify website's templates, you can enhance visibility, boost search engine rankings, and improve the overall user experience. From product templates to home, collections, blogs, and articles, each template serves a unique purpose, and incorporating the appropriate schema.org types can make a significant difference. Take advantage of structured data to make your Shopify website more appealing, informative, and search engine-friendly, ultimately helping you stand out from the competition and drive better results.

Back to blog