Accelerate Documentation
Your all-in-one suite for leveraging tomorrow's marketing technologies, directly inside of WordPress itself.
Getting Started
Installation
WordPress.org Install
- Go to https://wordpress.org/plugins/altis-accelerate/ or use the plugin directory inside your site to install Accelerate.
- Once installed, navigate to Accelerate → Settings, there you will want to "Create your account now"
- This will take you to our application to link your site to our analytics solution (required to power A/B testing, personalization and more). Fill out these minimal details we require, and your site will be connected — this portal will allow you to manage multiple sites.
- Once registered, you will be taken back to your site and receive confirmation. At this point, you can use the full suite of tools Accelerate provides 🎉
Composer Install
The Accelerate plugin is available via Composer if you use Composer to manage dependencies. This can reduce conflicts / dependency duplication too. Simply composer require altis/accelerate
to add it to your site.
First Steps
At this point, you'll be greeted with a very empty dashboard. That's normal as we need a few days to collect data and start ranking content. Allow for these few days to pass, at which point you'll have a nice flow of traffic and insights — and a living dashboard 🎉
Your first day using Accelerate, or using it on a staging/dev site will simply look very empty. Give it a few days to come to life with fresh data. 🔥 Tip — We generate thumbnails for all content. For pages, we use the featured image, and for Global Blocks we have our own rendering engine. This way you can more easily find your blocks as you scan through the dashboard.
Managing Sites
To manage your account, you can login here. This will allow you to manage your site add additional sites.
You can then monitor all your sites from here.
Features
A/B Testing
See how to create A/B tests in this overview video:
Run sophisticated A/B tests directly within the WordPress block editor. Test different versions of your content to optimize conversion rates and user engagement.
Key Features
- • Native integration with WordPress block editor
- • Real-time performance tracking
- • Statistical significance reporting
- • Easy variant creation and management
Analytics
See how Accelerate's analytics work in this overview video:
Audiences
See how to create and manage audiences in this overview video:
Create and manage targeted audiences to deliver personalized content experiences.
Audience Types
- • Geographic targeting
- • Behavioral segmentation
- • UTM parameter based audiences
- • Custom audience rules
Broadcast
See how Broadcasts work in this overview video:
What is a Broadcast?
Broadcasts are dynamic areas capable of holding multiple other blocks in rotation, for the purpose of internal advertising. These broadcast areas can be added via the editor as Broadcast Blocks, or via code.
With Broadcasts, you can show a different block in your marketing or campaign rotation on each page view, maximising exposure without cluttering your site up.
This not only easily allows you to rotate through more than one block at a time, but also to distribute any new block to many different broadcasting areas in one go.
Terminology
- • A Broadcast is a dynamic block that rotates through a collection of nested Global Blocks (blocks that can be used on more than one page). It is a standalone container.
- • A Broadcast Block is a block-representation of an existing Broadcast, very similar to how Global blocks work.
Using Broadcast in GUI
Using Broadcast in PHP templates
In some cases, you might need to display a Broadcast in a PHP template. So Accelerate provides a handy helper function to help you do that. You can use the following function:
if ( function_exists( 'Altis\Accelerate\Broadcast\render' ) ) {
echo Altis\Accelerate\Broadcast\render( $broadcast_id = 120, $client_id = 'footer-hero-broadcast' );
}
- •
$broadcast_id
is the ID of the Broadcast to target. - •
$client_id
is an optional unique identifier for that instance of the Broadcast, for later Analytics analysis and reporting.
Personalization
See how personalization works in this overview video:
Deliver the right content automatically by targeting users based on geography, UTM parameters, and behavior.
Personalization Options
- • Geographic targeting
- • UTM parameter based content
- • Behavioral targeting
- • User role-based personalization
Synced Patterns / Global Blocks
What are blockviews?
Blockviews are when the synced pattern scrolls into view within the browser viewport.
What is engagement & conversion rate?
"Engagement" is click on any link or button, or a form submission inside the block, whereby "Click on any link" is specific to HTML links only. Conversion rate is the number of events divided by the total amount of views.
Developer Documentation
Analytics Integration
Client Side API
The functions are available on the client side in JavaScript to allow extending the default behaviour of Altis Accelerate beyond recording page views.
Setup Functions
Altis.Analytics.onReady( callback <function> )
Use this function to ensure analytics has loaded before making calls to Altis.Analytics.registerAttribute()
or Altis.Analytics.record()
for example.
Tracking Functions
Altis.Analytics.record( eventType <string> [, data <object>] )
Records an event of eventType
. This can be any string. The optional data passed in should be an object with either or both an attributes
object and metrics
object:
{
attributes: {
name: 'value' // <string>
// ...
},
metrics: {
name: 1 // <number>
// ...
},
}
Those attributes and metrics can be later used in custom queries.
Endpoint Functions
In Altis Accelerate an "Endpoint" refers to a visitor's browser or device they are using to access your website.
- Altis.Analytics.updateEndpoint( data <object> ) Updates the data associated with the current Endpoint. You can use this to provide updated custom user attributes and metrics, a user ID to connect multiple Endpoints, and demographic data. This data is used to define Audiences. Some data is collected and updated automatically:
- • UTM parameters,
utm_campaign
,utm_source
,utm_content
,utm_medium
,utm_term
- • Operating System
- • Device Brand e.g. Apple
- • Browser
- • Location, Country and Region
- • Number of page views
- • Number of sessions
- • UTM parameters,
The data is merged with all new event records associated with that Endpoint. The accepted data shape is as follows: { "Attributes": { "key": string[], ... }, "Metrics": { "key": number, ... }, "User": { "UserAttributes": { "key": string[], ...
Integrating with WP Consent API
Accelerate has support for the WP Consent API. Any cookie / compliance plugins that support the API will be compatible with Accelerate. This includes but is not limited to:
- • Beautiful Cookie Consent Banner
- • Clickio Consent
- • Complianz GDPR/CCPA
- • Consent Studio
- • consentmanager
- • Conzent
- • Cookiebot
- • CookieFirst
- • CookieHub
- • CookieYes – Cookie Banner for Cookie Consent
- • GDPR Cookie Compliance
- • GDPR Cookie Consent Plugin – CCPA Ready
- • iubenda | All-in-one Compliance
- • Pressidium Cookie Consent
- • TrustArc Cookie Consent Manager
By default Accelerate will detect if WP Cookie Consent is enabled, which can be overridden via the altis.analytics.consent_enable
filter.
Accelerate will load & process web statistics analytics when WP Cookie Consent has allowed the statistics or statistics-anonymous categories.
In addition, Accelerate will default to setting the following categories to allowed:
- •
functional
- •
statistics-anonymous
This can be overridden via the altis.consent.always_allow_categories
filter.
Personalization for Logged-in Users
Scenario:
In situations when you want to create audiences or use personalized synced patterns for WordPress logged-in users, such as an audience "WordPress Users who have a meta key is_subscribed_to_newsletter
".
Accelerate provides the ability to create "audiences" which are certain facets / criteria against the "endpoint data". The Endpoint Data is stored in the viewer's browser (in Local Storage). This design allows for personalization features to work for all users (including new users) and doesn't have an adverse performance impact on WordPress by storing data on-device rather than in the WordPress backend / database.
In situations when you want to include data from the WordPress database, or data on logged in users, additional steps are needed to register the fields and inject the data accordingly.
Register Attributes with Accelerate
The first step for any custom data tracking or targeting in Accelerate is to register a new "data attribute" so it can be used to creating / targeting audiences.
<?php
Audiences\register_field(
'endpoint.User.UserAttributes.IsSubscribedToNewsletter', 'Is Subscribed to Newsletter',
[
'options' => [
'yes' => 'Yes',
'no' => 'No',
]
]
);
This will add a new field for targeting in the audience builder:
Filter the Endpoint data
Once a new field is registered for the new attribute, we must now inject the backend data (the is_subscribed_to_newsletter
user meta key) into the Endpoint Data. Remember: Audience criteria is always matched against the endpoint data. We need to populate the endpoint data from our WordPress data storage (user meta) by injecting our value into the endpoint data. This could be done in PHP via the altis.analytics.data.attributes
WordPress filter, or on the frontend via the JavaScript function Altis.Analytics.updateEndpoint
.
Depending on whether the value is readily available via PHP or via JavaScript should dictate your approach. In our example, let's assume the PHP backend is the easiest way to inject the data:
<?php
add_filter( 'altis.analytics.data', function ( array $endpoint ) : array {
$endpoint['User']['UserAttributes']['IsSubscribedToNewsletter'] = get_user_meta( get_current_user_id(), 'is_subscribed_to_newsletter', true ) ? 'yes' : 'no';
return $endpoint;
} );
Now whenever a user's meta key for is_subscribed_to_newsletter
is changed, the endpoint data that is stored in the viewer's browser will update. Any update to the Endpoint Data on the frontend will potentially change the matched audience.