Skip to content
No description or website provided.
Branch: develop
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.
src Update settings.twig Jul 15, 2019
.gitignore Products feed May 16, 2019 Initial commit May 16, 2019 Return variable templates as xml May 16, 2019
composer.json Fixed readme links May 17, 2019

Google Shopping Feed for Craft CMS

Get your products or entries into Google Merchant Center with a Google Shopping feed


This plugin requires Craft CMS 3.0.0 or later, and works out of the box when you have Craft Commerce installed.

If you want to use the plugin without commerce and/or with regular entries, have a look at the Twig functions


To install the plugin, follow these instructions.

  1. Open your terminal and go to your Craft project:

     cd /path/to/project
     composer require studioespresso/craft-google-shopping-feed
     ./craft install/plugin google-shopping-feed


Out of the box, the plugin will give you 1 feed with all your Craft Commerce products, using the default variant for each product.

If you need more control over which products show up in the feed, or you want multiple feeds, have a look at the have a look at the Twig functions.

Twig function

If you want to use the plugin with regular entries, want to provide your own Element query or want to have mulitple feeds, have a look at these function:

Products - craft.googleshopping.products

Works with any Commerce Products element query, and will use the default variant for each product

   {% set query = craft.products.limit(1) %}
   {{ craft.googleshopping.products(query) }}

Entries - craft.googleshopping.entries

Works with any element query

   {% set query = craft.entries.section('books') %}
   {{ craft.googleshopping.entries(query) }}

Both function take an ElementQuery as first parameter and will use the fields mapped in the plugin settings.

An optional second parameter can be added with that contains these fixed field names and the names of the entry fields to which you want to map them.

   {{ craft.googleshopping.entries(products, {
        title: 'fieldHandle',
        id: 'fieldHandle',
        description: 'fieldHandle',
        image_link: 'fieldHandle',
        brand: 'fieldHandle',
        price: 'fieldHandle',
        currency: 'USD' // ISO code of the currency you want to use
   }) }}

If each of these fields are not pressent in the array, the feed will fail to validated and throw an expection.

Brought to you by Studio Espresso

You can’t perform that action at this time.