How to create interactive product images with AMP for Email

Up your electronic mail coding skills with this move-by-step AMP for Electronic mail tutorial. Generate your individual electronic mail that allows viewers improve the shades of a product or service picture.

In this this tutorial you will study how to develop an interactive e-commerce electronic mail concept. We’ll display a solution with various color choices. The reader will be able to press each and every shade and dynamically update the item image. Here’s what it seems like (see the whole code instance):

An example of an interactive ecommerce AMP element in an email.
As viewed in Yahoo Mail inbox

Whilst it’s a reasonably uncomplicated case in point, you will turn into acquainted with a handful of vital AMP for E mail components this kind of as:

  • amp-img an AMP replacement for the html5 img tag.
  • amp-selector a manage for selecting one particular or extra alternatives
  • amp-bind responds to user actions these kinds of as hovers, clicks, kind submissions, etc.

To give you an thought of what else can be with these elements, here’s a far more subtle instance from Google. This provides the more complexity of demonstrating different products and solutions (the 1-pack, 2-pack, and 3-pack) and allows people see these goods in different hues, but the theory of what you are going to master down below is the identical.

An example of AMP for Email that uses interactive images for different product packs.

Step 1 – Speedy Begin with the AMP Playground

We will use the formal AMP Playground for this tutorial. I have absent in advance and involved some fundamental CSS for laying out our products picture and the coloration selectors so you can focus on discovering how the AMP elements get the job done.

Go to this customized AMP Playground for a brief way to get started off.

An example of the code that generates the AMP ecommerce email element
The AMP Playground, established up just for this tutorial. Perspective code in AMP Playground

Action 2 – Increase The Item Information

Code at finish of Stage 2

Let’s start laying out the concept. We’ll commence with the products tile, description (just shade in this scenario), and the merchandise pictures. Insert the following inside the .

45 Qt Difficult Cooler

Color Amber

Observe, we’re employing [text]=colorChoice. This is a hook that we can use afterwards on in the tutorial to update the merchandise description with the preferred coloration. For illustration, when the consumer chooses “Blue”, the text will dynamically update from “COLOR Amber” to “COLOR Blue”.

Up coming let us add our 1st merchandise graphic. Let us start with our default color, Amber.

The is contained within a div with a small little bit of logic, [hidden]="!(colorChoice == 'Amber') which indicates that the Amber product or service graphic will only be found when the consumer selects the Amber shade.

Next, include the remaining product or service visuals, a single for just about every colour. Each and every of these will originally be hidden, as the Amber color will be the default item variation.


An example of the AMP email code and the image is generates.
Environment the initial product or service layout. Watch code in AMP Playground

Action 3 – Adding the Color Alternatives

It is last but not least time to add a selector for each and every of the color possibilities. We’ll use with the default, one-alternative location so that they get the job done much like a radio button. And on picking out a color decision, the amp-state will be up-to-date to replicate that coloration alternative. The change to amp-state allows the relaxation of our doc know to improve the item graphic and the coloration description. Add the subsequent under the product specifics.

The has an occasion bring about. When it is selected, it updates the colorChoice variable. This variable is made use of to show the correct item graphic and to update the color description text in the item facts.

on="find: AMP.setState(colorChoice: function.targetOption)"

At this place, go ahead and attempt selecting each individual coloration choice. You really should see your item aspects update appropriately.

What the code for the AMP email looks like later on in development
Incorporating the product or service shade selectors. See code in AMP Playground

Knowledge How it Performs

Below is a summary of the fundamental principles utilized in this illustration.

Shade Selectors: The shade selector, , has a “select” function. When the action occurs, it updates the colorChoice variable all through the doc. ( is what associates an motion with a person or far more updates to the document.)

on="select: AMP.setState(colorChoice: function.targetOption)"

Product Visuals: The merchandise photographs have basic logic to disguise or exhibit each impression centered on the worth of the colorChoice variable. Illustration: concealed = True when colorChoice is not equivalent to ‘Amber’.

[hidden]="!(colorChoice == 'Amber')"

Merchandise Description: The item description text also updates to the price of the colorChoice variable.


Demonstrate us what you developed!

Next, I recommend sending on your own a copy of the concept you developed from this tutorial. Use an electronic mail service provider that supports AMP for E-mail these as AWeber or use the Gmail AMP Playground.

If you have been motivated by this publish, I’d really like to see what you made! Share in the opinions down below or mail me an e-mail and request me to consider a look.

Leave a Reply