Skip to main content
Practical Tips for Implementing Acquia Personalization
January 13, 2020 |

As a leading Acquia partner, Phase2 helps many of our clients integrate and operationalize Acquia Personalization.

Intuitive and powerful, Acquia Personalization tracks, segments, and automatically serves personalized content to users based on their browsing history, and other relevant information.

Over the course of our work, we’ve devised several novel ways to make using such a great tool even easier. In one recent example, we simplified how site editors tell Acquia Personalization what to target on a page, eliminating potential errors that, in the most extreme cases, can cause sites to display incorrectly.

Building Blocks

At Phase2, we use component-based design principles to build websites. As such, we construct pages and sites from a library of reusable components (or blocks) that can then be configured and arranged by editors. Once the blocks are assembled into a page, we then personalize the experience by telling Acquia Personalization's Experience Builder tool to target individual blocks, creating (in its terminology) a ‘slot’.

The Problem

Slots can be defined in one of two ways:

1. Point & Click CSS Picker

This option allows the editor to define a slot by hovering over a specific section of the page.

Point and Clicks CSS Picker

However, while this approach is intuitive for more tech-savvy editors, we’ve noticed that some of our clients have trouble selecting the correct div (or element on the page) for the enclosing block. This is especially dangerous because-- if the right CSS selector isn’t chosen-- the editor could be replacing the wrong portion of the page, and end up with a page that doesn’t display properly.

2. Embedded Divs

This option allows an editor to define a slot by embedding a special div somewhere on the page, creating an empty block, and placing the Acquia Personalization embed code inside. While there is nothing wrong with this approach, it means that we’re no longer able to have default content in that block, unless a default segment is created within Experience Builder and a default block added there.


Embed Code

A Simple Solution

We created a simple hybrid approach to solve these two potential issues.

First, we added a new field to all of our blocks in Drupal called “Data Lift Slot”.


Data Lift Slot

Next, we added some logic to render this field as an attribute on the div.


Code on black screen

Now, when we add data to that field, save the block, and inspect it in the editor we see the following:


  • Image
    Code on White Screen

While this looks very similar to the embed code mentioned previously, it differs in one crucial way; the default content is rendered in the block as well. 

With this solution all editors have to do is:

  • Define a slot using the embed code method
  • Copy the data-lift-slot attribute
  • Paste it into the Data Lift Slot field of the block in Drupal they would like to replace

You're result: No more broken pages or mistargeted slots!

Have other questions on how to get the most out of Acquia Personalization? Reach out to our team and we'll be happy to discuss.


Jonathan is an Acquia Certified Senior Full Stack Developer with over 12 years of development experience. He has designed and implemented enterprise level applications for a variety of industries, including The US Department of Energy, Estee Lauder, and Memorial Sloan Kettering. He enjoys working with new and exciting APIs and recently released the Druminate module, a Drupal module that simplifies the process of calling the Luminate API.

Jump back to top