Running an eCard platform that helps people stay emotionally connected, whether it’s for a birthday, anniversary, holiday, or a heartfelt moment, means you deal with a lot of visual content. From static images to animated cards and video eCards, every piece matters.
One such platform, Ozami, offers users a variety of digital greeting cards they can send by email or share via WhatsApp or social media. Users can even schedule cards ahead of time, a lifesaver for remembering birthdays, holidays, or corporate celebrations.
Despite the feature-rich nature of the platform, a behind-the-scenes issue was discovered that threatened search engine visibility:
“Google indexing errors related to missing structured data.”
Initially, these warnings appeared minor, but they had the potential to significantly affect how Google interpreted and ranked the platform’s content.
This case study explains how Temi.co.uk identified and resolved the problem and improved the platform’s SEO and search appearance using a free WordPress plugin, without touching a single line of code.
What the Platform Offers
Before diving into the technical solution, here’s an overview of the platform’s features:
Wide Range of eCards
- Valentine’s Day, Easter, Love, and more
- Available as static images, animated GIFs, or video eCards
Smart Delivery Options
- Schedule an eCard to send later
- Send instantly via email
- Generate a link to share via WhatsApp or social media
What Is Structured Data?
Structured data is extra information added to your web page’s code to help search engines understand your content better. Think of it as the metadata you feed to Google so it can display rich results, like video previews, recipe cards, reviews, and more.
This data follows a standardized format using Schema.org vocabulary, and it helps Google interpret:
- What kind of content the page has (a video? a product? an event?)
- Key details like titles, dates, descriptions, images, and more
For eCards, especially ones that are videos or interactive, the relevant schema type is often VideoObject.
The Problem We Faced: Google Indexing Errors
When reviewing the platform in Google Search Console, recurring warnings appeared:
Either “thumbnailUrl”, “contentUrl”, or “embedUrl” should be specified.
These were flagged across many eCard pages, such as:
- Birthday eCards (static or video)
- Animated cards for Mother’s Day, Father’s Day, etc.
- Video eCards we hosted directly on our server
While not always critical, the absence of these structured data fields meant:
- pages were missing out on rich results
- Google was having a hard time understanding and classifying our content
- Reduced visibility in video carousels or image-enhanced results
Why It Was Hard to Fix (Initially)
The platform runs on WordPress using the Divi theme, and while Divi is fantastic for designing beautiful pages visually, it doesn’t offer native support for structured data.
Even if you have:
- A featured image
- A hosted video
- A great page layout
…none of that translates into searchable schema markup.
So by default:
- WordPress doesn’t output structured data for custom post types like ecards
- Divi doesn’t provide a way to inject schema into the <head>
- Elementor doesn’t either (for those wondering)
That’s why there was a need for a dedicated solution.
The Plugin That Solved It All
After evaluating several tools, the plugin selected was:
Schema & Structured Data for WP & AMP
This plugin enabled the setup of a custom schema template for the VideoObject type, specifically targeting the ecards custom post type. Key capabilities included:
- Automatically populate:
thumbnailUrl – from the post’s featured image contentUrl – from a custom field called Featured Video -
Set schema output per post, right from the editor
How We Set It Up (Step-by-Step)
1. Install the Plugin
From your WordPress dashboard:
Plugins > Add New > Search for “Schema & Structured Data for WP” > Install & Activate
2. Create a Schema Template
Go to:
Schema & Structured Data > Schema Types > Add New
- Schema Type: VideoObject
- Schema Name: e.g., eCard Video Schema
2b. Setting the Right Placement: Post Type Condition Matters
Before you move on, you need to tell the plugin where to apply this schema. This is one of the most important steps, otherwise, your structured data could show up on the wrong pages or not show up at all.
Inside the Schema & Structured Data plugin, there’s a section called “Placement”. This is where you define the conditions for when and where your schema will be applied.
Here’s how to handle it:
If You’re Working with eCards (which are a Custom Post Type)
Set the placement condition like this:
- Post Type > Equals to > ecards
This tells the plugin:
“Only apply this structured data template to posts that belong to the custom post type ‘ecards’.”
Perfect for your eCard categories like Birthday, Anniversary, Mother’s Day, Father’s Day, Valentine’s Day, and more.
If You’re Using a Regular Page or Blog Post
Let’s say:
- You’re using a static image or video on a regular WordPress page
- Or you’ve written a blog post that features a video or animated graphic
Then you would instead use:
- Page > Equals to > (select the specific page)
- OR
- Post > Equals to > (select the blog post)
And yes, you can use multiple placement rules at once, like:
- Post Type = ecards
- OR Page = About Us
- OR Post = Happy Birthday Blog
This way, the schema is only injected where it’s relevant.
Why Placement Matters
This step helps you:
- Prevent schema validation errors from being applied on irrelevant pages
- Avoid overwhelming Google with unrelated structured data
- Ensure that each card or post gets the correct markup for its type
This smart targeting is one of the reasons the plugin works so well, it doesn’t just apply schema everywhere blindly. You stay in control.
3. Add Key Properties (and What They Actually Do)
After setting up the schema type (in our case, VideoObject), you’re not done just yet. The plugin doesn’t automatically fill in everything for you, it simply unlocks a panel that allows you to manually or semi-automatically add the required structured data when creating or editing an eCard post.
Here are the key properties you’ll need to pay attention to and how they work:
- Name: This typically comes from the post title (@post_title). It’s what will appear as the card name in search results.
- Description: You can either allow it to pull from the post excerpt or write a custom one. We often prefer writing a short, meaningful summary manually.
- Upload Date: This is automatically derived from the post’s publish date (@post_date), so you don’t need to manually enter it unless you want to override it.
- Thumbnail URL: This is where you’ll need to take action. You have to click the “Upload” button inside the schema panel and select the eCard image (usually your featured image or another relevant one). This tells Google what to show as the preview for your eCard, which is especially important for visual appeal in search results.
- Content URL: This is where things get a bit tricky. It refers to the actual URL of the page where your eCard (image, animation, or video) is located, it’s the content Google will index and possibly display.
4. Use the Schema on Each eCard Post
Once your schema template is created, here’s what happens:
When you upload or edit an eCard, you’ll notice a new section in the editor labeled:
“Schema & Structured Data on this post”
This is where all the action happens. Within this panel, you can:
- Manually add or verify the content URL
- Upload the right thumbnail image (which should match the eCard being featured)
- Enter a custom title or description
- Ensure the upload date is accurate
- Review and fine-tune the automatically generated structured data
This works seamlessly for static images, animated eCards (like GIFs), and video eCards alike.
Important Notes From My Workflow
Here are some important things I learned from using the plugin in a real production workflow:
Thumbnail Upload Must Be Manual
Even though your post might already have a featured image, you still have to click the “Upload” button inside the schema panel and manually choose the image again. This is what assigns it to the thumbnailUrl in the schema. Just having a featured image on the post isn’t enough.
Content URL Behavior Depends on Publish Status
The plugin tries to auto-populate the contentUrl with the post link, but this link is only accurate if the post has already been published.
If the eCard post is still a draft or unpublished, the content URL may appear broken, or look something like:
https://ozami.com/?post_type=ecards&p=123456
Which is not ideal for structured data and won’t help with indexing.
That’s why, I always follow this two-step process:
- First publish the eCard post: whether it’s a video, static card, or animated GIF.
- Then go back and edit the post again: now that it’s live, the system will usually generate the correct content URL.
However, I don’t just trust that. I always:
- Copy the correct live URL of the page (the one users actually visit)
- Delete the auto-filled URL in the contentUrl field
- Paste the correct one manually
That way, I’m 100% sure that Google gets the right link as the contentUrl.
Why All This Matters
It may seem like a lot of little steps, but they’re crucial. Without structured data:
- Google doesn’t know how to classify your eCards
- Your cards may not show up in image/video carousels
- Indexing takes longer or happens incorrectly
- You miss out on rich snippets that can boost visibility and click-through rates
And since WordPress + Divi doesn’t handle this automatically, this plugin is a game-changer, because it bridges that gap while giving us total control over each eCard.
The Results:
After implementing the plugin and schema template:
- Google indexing errors stopped showing up
- Pages became eligible for image and video-rich results
- Schema output is now clean, dynamic, and scalable
Most importantly, this setup is scalable: every new eCard added automatically benefits from the structured data system.
Final Thoughts
Whether you’re running a blog, a business site, or an emotional connection platform like ours, don’t let technical limitations stand in your way. Structured data is a quiet powerhouse that boosts SEO, enhances visibility, and builds trust with search engines.
And tools like Schema & Structured Data for WP make it accessible, even if you’re using visual builders like Divi or Elementor.
Temi.co.uk’s structured data solution ensures that digital content like eCards is not only beautifully presented but also properly indexed and discoverable in search engines. For any business relying on visual media to engage users, structured data can be the silent SEO boost working behind the scenes.