Connecting visitors with targeted content
NOTE: The Targeted Content widget feature is part of Ektron's marketing suite.
You can personalize a site visitor's experience by providing content that matches their interests. This places your site information in the context of your users. For example, the search keywords used to find your site might determine the best offer to show a prospect. Or, site members might explicitly state their interests by adding to their user profile, or by filling out a survey.
The Targeted Content widgetA mini-application that you place on a Web page using PageBuilder; a widget provides either specific functionality (calculators, search, social bars, and so on) or areas into which you can add content (content blocks, list summaries, collections, and so on). lets you gather information from each interaction, and use that information to direct visitors to content that relates to their specific interests.
Each Targeted Content widget has 1 or more conditions, and each condition can have 1 or more criteria. For example, a condition may stipulate that the URL parameter terms contains pizza
or terms contains Italian
.
After assigning conditions to a Targeted Content widget, you assign one or more widgets to it, which appear on the page only if a condition evaluates to true. To continue the example, if the page has a URL parameter that contains "pizza," you display a Taxonomy Summary widget that shows content to which the taxonomyA content-level categorization system that uses one-to-many relationships (such as Ronald Reagan is to Actor, Governor, and President) to create a scalable organization of content. A taxonomy lets your site visitors go content independent of the folder structure. category "pizza" is assigned.
You can assign any number of conditions to the Targeted Content widget. As soon as one is true, its associated widgets appear, and any remaining conditions are ignored.
The Targeted Content widget can evaluate the following information about a site visitor.
http://www.mystore.com/product.aspx?cid=gold
. In the Targeted Content widget, set the condition URL Parameter CID contains gold. If condition = true, the Targeted Content widget displays a ContentBlock widget that promotes gold necklaces.
If condition = true, the Targeted Content widget displays a WebCalendar widget that lists upcoming NASCAR races.
If condition = true, the Targeted Content widget displays a TaxonomySummary widget that lists all couches and the discounted price.
If condition = true, the Targeted Content widget displays an Activity Stream widget, set up as follows:
ObjectID
= ID of the Engineering group FeedType
= Community GroupIf condition = true, the Targeted Content widget displays a TaxonomySummary widget that lists all content assigned to the category Restaurants > Pizza.
If condition = true, the Targeted Content widget displays a ContentBlock widget that promotes Ektron products.
Prerequisite
The Targeted Content widget must be in the list of widgets assigned to the page's template. See Adding the wireframe and widgets into Ektron.
NOTE: Global configurations are created and stored in the Workarea. If they are already created, you can click Select Global Configuration and select one for use. See Choosing a targeted content configuration and Creating a targeted content global configuration.
www.example.com
). Use this to determine the visitor 's originating site, such as a Facebook fan page.
cid=gold
.If the URL of the page that hosts the Targeted Content widget contains cid=gold
(for example, http://www.mystore.com/product.aspx?cid=gold)
, then display widgets assigned to that Targeted Content widget.
UserID—A9A3BECE0563982D
. When checking for a cookie, you complete 3 fields.Example:
Zip code is a Custom User Property. You want to display a list of stores in New Hampshire for users whose Zip Code begins with 03.
Logic operators:
Examples:
Logic operators:
Examples:
Logic operators:
Examples:
Logic operators:
Examples:
Use Contains with Free Text Fields
On fields that use free text (such as Likes), you should use the contains operator, as opposed to is or is not. Contains is more flexible and finds a partial match. For example, if the user likes U.S. Soccer and you enter the term soccer and the contains operator, a partial match is made, so the user sees the related widget. On the other hand, if the user likes U.S. Soccer and you enter the term soccer and the is operator, an exact match is not made, so the user does not see the related widget.
The Likes Field
The Likes field lets you search through users' Facebook profile Likes and Interests. Or, you can narrow it down to a specific like/interest. For example, you could display a widget promoting Red Sox merchandise if, in their Facebook profile, users like a Sports Team that contains Red Sox.
NOTE: You would typically use this criterion last, since it always evaluates to true. Any conditions below this are ignored.
A condition can have several criteria joined by and an AND operator.
In the following example, all conditions must be true for the widgets assigned to this Target Content widget to appear.
If any of these condition is not true, the next condition assigned to the widget is evaluated, if one exists.
If all conditions are true, the widgets assigned to this Targeted Content widget appear. Additional conditions assigned to this widget are ignored.
You can also specify an OR relationship among criteria in one condition. To do so, click +or below any condition, then enter the OR condition.
For example, assume you want the user's country to be only the Bahamas or Bermuda.
Each set of criteria is evaluated independently. If any criteria set is true (that is, all of its statements are true), the widgets assigned to this Targeted Content widget appear. Additional conditions assigned to this widget are not evaluated. If none of the criteria sets is true, the next condition assigned to the widget is evaluated, if one exists.
The Targeted Content widgetA mini-application that you place on a Web page using PageBuilder; a widget provides either specific functionality (calculators, search, social bars, and so on) or areas into which you can add content (content blocks, list summaries, collections, and so on). personalizes a Web page by displaying content based on information from a user-completed form. When a user submits a form, the external application connector (such as Salesforce) writes a user ID for that user's login back to Ektron. This enables the delivery of targeted content based on the user's identity. For example, if the Salesforce MQLMarketing Qualified Lead; someone who is more likely to become a customer versus others who are "browsing but not buying." MQLs can be identified through analysis of activity data.'s industry is healthcare, the page may display content of interest to healthcare professionals.
siteroot/dxhTargetingRules.config
file. The following sample shows the default portion of this file.<dxhRules> <Adapter name="Salesforce"> <AdapterObject name="Lead"> <add name="Company Name" value="Company"/> <add name="Industry" value="Industry"/> <add name="Number of Employees" value="NumberOfEmployees"/> <add name="Revenue" value="AnnualRevenue"/> <add name="Products Owned" value="Products Owned"/> <add name="Product Interest" value="ProductInterest"/> <add name="Score" value="Rating"/> </AdapterObject> </Adapter>
Tag Descriptions
<dxhRules>
. The file's root tag.<Adapter name>
. The adapter for which to display object rules, such as Salesforce
or MSDynamics
. It is not the connection name (for example, marketingSF
).<AdapterObject>
. The system name of the object within the specified adapter. For example, to enter a Salesforce lead, insert the system name Lead
(case-sensitive).<add ...>
. The field. The name
attribute contains text that the end user sees (as shown in the following image). The value
attribute contains the system name of the field.NOTE: The field's datatype is recognized and automatically surfaced into the correct rule type; numeric rule for an integer or decimal, string rule for a string, a multi-select rule for a pick list, and so on.
See also: Creating personalized Web experiences with personas.
GeoIP support lets you target your messaging to specific audiences based on current geographical location. Ektron uses a site visitor’s IP address to detect the location. For example, your website may have a special sale on snow blowers. That information is relevant to people in northern climates but of no interest to those living in the tropics. Or, a site visitor uses a cell phone to find the nearest store location, and the Ektron Map server control displays a map of nearby stores based on the user's current latitude and longitude.
Ektron maintains GeoIP information in a cookie only while a visitor uses the site. When the visitor exits, Ektron deletes the cookie. Ektron obtains the following information from the IP address of your site visitors. (The values are only examples.)
Ektron includes GeoLite data created by MaxMind. You can purchase more accurate GeoIP databases from MaxMind.
Ektron retrieves the IP address information from a site visitor's IP address via 3 databases. The databases are installed to your site root's App_data
folder and listed in your site's web.config
file.
NOTE: The tilde character (~) in the value
element represents the site root folder.
<!-- GeoIP City Database -->
<add key="GeoIpCityDatabase" value="~/App_Data/GeoLiteCity.dat"/>
Returns the following information, based on IP address:
<!-- GeoIP Organization Database -->
<add key="GeoIpOrgDatabase" value="~/App_Data/GeoIPOrg.dat"/
>
Returns the organization name, based on IP address.
- GeoIP Domain Database -->
<add key="GeoIpDomainDatabase" value="~/App_Data/GeoIPDomain.dat"/>
Returns the domain name, based on IP address.
If you want to move the databases to another folder, you must update their web.config value
elements to the new location.
Best Practice
You should keep the GeoIP databases in the App_data folder, because this folder prevents unauthorized copying of the database.
Among the Targeted Content widgetA mini-application that you place on a Web page using PageBuilder; a widget provides either specific functionality (calculators, search, social bars, and so on) or areas into which you can add content (content blocks, list summaries, collections, and so on).'s criteria is User Regional Info, which has 2 options: Country and US Regions.
If you choose US Regions, you can select from states in the United States.
User Regional Info data uses GeoIP information. See also: Specifying criteria for a Targeted Content widget.
You can center a map on a specific location by using the Map server control's latitude
and longitude
properties. You also can use GeoIP information to obtain a user's latitude and longitude, based on IP address. For example, if a site visitor searches for a chain restaurant, the map can indicate restaurants near the user.
The following code shows how to set up the Map server control to populate latitude and longitude with GeoIP information.
Sample .aspx page, showing the placement of the Map server control.
<cms:Map ID="uxMap" runat="server" />
Code-behind page in C#
Ektron.Cms.UserLocationData userLocationData = Ektron.Cms.UserContext.GetCurrentUserLocationInfo(); if(userLocationData != null) { uxMap.Latitude = userLocationData.Latitude; uxMap.Longitude = userLocationData.Longitude; }
The following APIApplication Programming Interface code demonstrates the retrieval of a user's GeoIP information. Note that Ektron.Cms.UserContext.GetCurrentUserLocationInfo()
returns the Ektron.Cms.UserLocationInfo()
object, which provides access to all elements listed in retrieving IP address information except IP address.
To obtain the IP address, use Ektron.Cms.UserContext.IP
.
Ektron.Cms.UserLocationData userLocationInfo = Ektron.Cms.UserContext.GetCurrentUserLocationInfo(); //If GeoIpCity.dat/GeoIpLiteCity.dat file is present in webconfig int AreaCode = userLocationInfo.AreaCode; string City = userLocationInfo.City; string CountryCode = userLocationInfo.CountryCode; string CountryName = userLocationInfo.CountryName; double Distance = userLocationInfo.Distance(userLocationInfo); int DMACode = userLocationInfo.DMACode; double Latitude = userLocationInfo.Latitude; double Longitude = userLocationInfo.Longitude; int MetroCode = userLocationInfo.MetroCode; string PostalCode = userLocationInfo.PostalCode; string Region = userLocationInfo.Region; string RegionName = userLocationInfo.RegionName; // If GeoIpOrg.dat file and GeoIpCity.dat/GeoIpLiteCity.dat file // is provided in web config string Organization = userLocationInfo.Organization; // If GeoIpDomain.dat and GeoIpCity.dat/GeoIpLiteCity.dat file // is provided in web config string Domain = userLocationInfo.Domain;
A Targeted Content Global Configuration is a Targeted Content widgetA mini-application that you place on a Web page using PageBuilder; a widget provides either specific functionality (calculators, search, social bars, and so on) or areas into which you can add content (content blocks, list summaries, collections, and so on). that you create and store in the Ektron Workarea. When users drop a Targeted Content widget onto a PageBuilder page, they can select any configuration defined in the Workarea. A configuration lets you reuse the same Targeted Content widget on any number of pages.
After choosing a Targeted Content Global Configuration, you cannot edit its conditions on that page. You can edit the configuration only in the Workarea. If you later change a configuration setting, all widgets using that configuration are automatically changed. See Editing a targeted content configuration.
IMPORTANT: If you apply no conditions to a configuration and reference it in a Targeted Content widget on a PageBuilder page, nothing appears on the page.
Prerequisite
To access this screen, you must be a member of the Administrators group.
If you edit a Targeted Content Configuration that is placed on one or more PageBuilder pages, the pages show the changes after you publish the page.
Prerequisite
To access this screen, you must be a member of the Administrators group.
IMPORTANT: After you delete a Targeted Content Configuration that was placed on a PageBuilder page, the page displays a blank area where the widget was dropped.
Prerequisite
To access this screen, you must be a member of the Administrators group.
To reuse a Targeted Content Configuration:
Prerequisite
The PageBuilder page must include the Targeted Content widget.
If you select Restaurants, for example, it appears in the Targeted Content widget.
NOTE: You can apply a global configuration to an existing widget. If you do, the global configuration replaces all conditions and results you previously applied.
To create a custom version of the Targeted Content widget (for example, to add rule templates):
siteroot/widgets/Edit TargetedContent.ascx.cs
file. MyRuleTemplate
), that inherits Ektron.RuleEditor.RuleTemplate
in #region Rule Templates
.private void AddAllRuleTemplates.
AddRuleTemplate(new MyRuleTemplate());