wearepixel / laravel-google-shopping-feed
Laravel Google Shopping Feed
Package info
github.com/wearepixel/laravel-google-shopping-feed
pkg:composer/wearepixel/laravel-google-shopping-feed
Requires
- php: >=8.4
- illuminate/support: 10.*|11.*|12.*|13.*
- spatie/array-to-xml: 2.8.*|3.*
Requires (Dev)
- laravel/pint: ^1.29
- orchestra/testbench: ^10.0
- pestphp/pest: ^4.0
README
A simple package to easily create an XML feed for Google Merchant Center to parse and retrieve your products.
We recommend adding this to an API controller and generating it on the fly so your feed is always up to date.
Requirements
- PHP 8.4+
- Laravel 10, 11, or 12
Installation
composer require wearepixel/laravel-google-shopping-feed
Usage
use Wearepixel\LaravelGoogleShoppingFeed\LaravelGoogleShoppingFeed; $feed = LaravelGoogleShoppingFeed::init( title: 'My Store', description: 'My store product feed', link: 'https://mystore.com', ); $feed->addItem([ 'id' => 'item_001', 'title' => 'Blue Nikes', 'link' => 'https://mystore.com/products/blue-nikes', 'g:price' => '29.99 AUD', 'g:image_link' => 'https://mystore.com/images/blue-nikes-001.jpg', ]); return $feed->generate();
Required item fields
| Field | Description |
|---|---|
id |
Unique product identifier |
title |
Product name |
link |
URL to the product page |
g:price |
Price including currency code (e.g. 29.99 AUD) |
g:image_link |
URL to the main product image |
Any additional fields supported by the Google Product Data Specification can be passed alongside the required fields.
Methods
LaravelGoogleShoppingFeed::init(string $title, string $description, string $link): static
Creates a new feed instance with channel metadata.
$feed->addItem(array $item): void
Adds a product to the feed. Throws MissingRequiredFieldException if any required field is absent.
$feed->toXml(): string
Returns the feed as an XML string.
$feed->generate(): Response
Returns an HTTP response with the XML content and application/rss+xml content type. Suitable for returning directly from a controller.
Testing
composer test
License
MIT