Creating a Dynamic Data Feed for Adobe Target Recommendations

Video - Creating a Dynamic Data Feed for Adobe Target Recommendations

Introduction

Personalization is critical to engaging users and driving conversions in today's digital landscape. Delivering tailored content enhances user experience and builds brand loyalty. Adobe Target Recommendations offers robust personalization tools, and by integrating them with your Content Management System (CMS), you can create a dynamic content recommendation system that adapts to your user’s behaviours.

In this blog post, we’ll explore how we created a dynamic data feed for Adobe Target Recommendations using our website, albertacg.com, as an example. While our site utilizes WordPress as the CMS, the concepts and methodologies discussed are applicable to other platforms like Adobe Experience Manager (AEM), Contentful, and more.

Prerequisites

Before we begin, ensure you have the following:

  • A website powered by a CMS (e.g., WordPress, AEM, Contentful)
  • Access to Adobe Experience Cloud with Adobe Target
  • Adobe Tags (formerly Adobe Launch) set up as your tag management system
  • Basic understanding of JavaScript and your CMS’s customization capabilities

Setting Up Adobe Tags

What Is Adobe Tags?

Adobe Tags is a tag management system that simplifies the deployment and management of various analytics and marketing tags across your website.

Steps to Set Up

1. Access Adobe Tags:

  • Log in to your Adobe Experience Cloud account.
  • Navigate to Adobe Experience Cloud Data Collection.

2. Install Essential Extensions:

  • Adobe Experience Platform Web SDK:
  • Streamlines data collection for Adobe solutions.
  • Adobe Client Data Layer (ACDL):
  • Provides a standardized data layer across your site.

3. Configure the Extensions:

  • Follow Adobe’s documentation to set up the extensions according to your website’s needs.

Leveraging Your CMS API

Why Use Your CMS API?

Most modern CMS platforms offer APIs that allow you to programmatically access your site’s content and metadata. This enables you to extract and manipulate data for various purposes, including feeding it into Adobe Target.

Steps to Retrieve Content Metadata

1. Access the API Endpoint (Examples):

  • WordPress: https://yourwebsite.com/wp-json/wp/v2/posts
  • AEM: Use Sling APIs, Query Builder, or custom endpoints.
  • Contentful: Use the Content Delivery API.

2. Fetch the Data:

  • Use programming languages like JavaScript, Python, or tools like Postman to retrieve the data.
  • Authentication may be required depending on your CMS.

3. Extract Necessary Metadata:

  • Titles
  • Categories or tags
  • Publication dates
  • Images or media assets
  • URLs
  • Other metadata as needed

4. Store the Data:

  • Organize the extracted data into a structured format, such as a CSV or JSON file.

Creating the Data Feed for Adobe Target

Formatting the Data Feed

Adobe Target requires the data feed to be in a specific format with essential entity attributes.

1. Define the Data Structure (for example):

  • entity.id
  • entity.name
  • entity.categoryId
  • entity.imageUrl
  • entity.url
  • Additional custom attributes relevant to your content

2. Populate the Data:

  • Use the metadata extracted from your CMS API to fill in the data structure.

Uploading the Data Feed to Adobe Target

1. Access Adobe Target:

  • Log in to your Adobe Experience Cloud account.
  • Navigate to Adobe Target > Recommendations.

2. Create a New Data Feed:

  • Upload the data file to an FTP for Target to consume.
  • Configure the data feed settings as required.

Implementing Real-Time Data Push to Adobe Target

Overview

Implement a mechanism that pushes data in real time to ensure that new content and user interactions are immediately reflected in Adobe Target.

Steps to Implement

1. Customize Your CMS Front-End:

  • Add JavaScript code to your website that captures page and user interaction data.
  • This can be done by editing your CMS templates or using built-in customization features.

2. Push Data to Adobe Client Data Layer:

  • Use the Adobe Client Data Layer to standardize the data being sent.
  • The data layer acts as a buffer between your website and Adobe’s marketing tools.

3. Send Entity Data to Adobe Target:

  • When a user views content, push the content’s metadata to Adobe Target.
  • Update the user’s profile with this interaction data.

Sample JavaScript Code

Here’s a generalized example from the albertacg.com:

// Send entity data to Adobe Target
alloy("sendEvent", {
    "data": {
        "__adobe": {
            "target": {
                "entity.id": php_vars.pageID,
                "entity.name": php_vars.postTitle,
                "entity.categoryId": php_vars.categories.join(","),
                "entity.thumbnailUrl": php_vars.thumbnailUrl,
                "entity.pageUrl": php_vars.postURL,
                "entity.tags": php_vars.tags.join(",")
             }
         }
     }
});

CMS-Specific Implementation

  • WordPress: Use PHP within your templates to inject dynamic variables.
  • AEM: Utilize HTL (HTML Template Language) to integrate dynamic content.
  • Contentful: Use their SDKs to fetch and inject content data into your scripts.

Benefits of This Integration

  • Real-Time Personalization: New content and user interactions are immediately available for personalization.
  • Enhanced User Engagement: Personalized recommendations based on user behavior can increase engagement and retention.
  • Scalability: The system adapts automatically as your content library grows.
  • Cross-Platform Applicability: The approach works with various CMS platforms, offering flexibility.

Conclusion

By integrating your CMS with Adobe Target using Adobe Tags and client-side scripting, you can create a dynamic and personalized user experience. On albertacg.com, we’ve successfully implemented this strategy using WordPress, but the same principles apply to other CMS platforms like AEM and Contentful.

This setup allows us to automatically update our content feed and personalize user experiences in real-time, providing significant value to both our users and our business goals.

Next Steps

In our next blog post, we’ll delve into:

Setting Up Personalization Activities in Adobe Target:

  • Utilizing criteria and design layouts.
  • Creating compelling, personalized experiences.

Advanced Techniques:

  • A/B testing with personalized content.
  • Leveraging AI-powered recommendations.

Stay tuned for more insights on enhancing your website’s personalization capabilities!

Additional Resources

We’d Love to Hear From You!

Have you tried integrating Adobe Target with your CMS? Share your experiences or ask any questions in the comments below. Let’s build a community of professionals aiming to enhance user experiences through personalization.

Contact Us

Other posts you might be interested in:

'}}
How to Personalize Your Website for Black Friday
Introduction It's that time of year again! As the leaves begin to change and the weather gets chilly, businesses large and small start preparing for one of the busiest shopping days of the year: Black Friday. If your company doesn't have a plan in place yet, don't worry—we're here to help. In this blog post,… Continue reading How to Personalize Your Website for Black Friday
'}}
AEP Pt.2: Customer Journey Analytics
Introduction This is the second post in my blog series on Adobe Experience Platform (AEP). In my first post, I discussed how AEP is a comprehensive set of APIs and services that allow you to collect customer data, build customer profiles, and create unique customer experiences. Customer Journey Analytics is an integral part of AEP… Continue reading AEP Pt.2: Customer Journey Analytics
'}}
Cracking the Code of Adobe Target Profile Scripts
Adobe Target Profile Scripts. These scripts allow you to profile how different customer segments interact with your website to improve the customer experience. Adobe Target Profile Scripts can be used to segment customers by their location, device type, or purchase history.