

Editing personalization variations in the block editor
Liana with GrowthStack is a powerful WordPress plugin that brings enterprise-level marketing automation and personalization capabilities to your website. Built by Liana Technologies, it seamlessly integrates with LianaAutomation to help you optimize conversions and deliver personalized experiences to your visitors.
Available in Pro version of the plugin.
Create targeted content experiences based on:
Liana with GrowthStack is compatible with popular caching plugins and server level caching solutions. It uses client-side JavaScript to handle content personalization and A/B testing, ensuring that cached pages still deliver dynamic content based on visitor data.
Analytics data is saved to the database in an optimized manner, with data being bundled and sent asynchronously to minimize performance impact. This does add some database load but write actions are done in asynchronously with JavaScript events to minimize impact on user experience.
Liana with GrowthStack provides various filters and actions for developers to customize functionality.
Admin Capabilities
Control who can access different admin pages:
growthstack/admin/capability/view_dashboard – Capability required to view the dashboard (default: ‘edit_pages’)growthstack/admin/capability/view_analytics – Capability required to view analytics (default: ‘edit_pages’)growthstack/admin/capability/view_personalization – Capability required to view personalization (default: ‘edit_pages’)growthstack/admin/capability/view_ab_tests – Capability required to view A/B tests (default: ‘edit_pages’)growthstack/admin/capability/view_forms – Capability required to view forms (default: ‘edit_pages’)growthstack/admin/capability/view_settings – Capability required to view settings (default: ‘manage_options’)growthstack/admin/capability/view_support – Capability required to view support (default: ‘manage_options’)Admin UI
growthstack/admin/submenu_pages – Modify admin submenu pages arraygrowthstack/show_banner/upgrade – Show/hide upgrade banner in Analytics (default: true)growthstack/show_banner/ab_testing – Show/hide banner in A/B Testing page (default: true)growthstack/show_banner/audience – Show/hide banner in Dashboard (default: true)Analytics
growthstack/analytics/post_types – Modify which post types are tracked for analytics (default: public post types)Personalization
growthstack/rule_types – Register or modify available personalization rule typesgrowthstack/personalization/visited_pages/post_types – Modify post types available for “Visited Pages” personalization rule (default: [‘post’, ‘page’])LianaMailer Integration
Contact Form 7:
growthstack/lianamailer/contactform7/subscription_mailer_data – Modify mailer data before sendinggrowthstack/lianamailer/contactform7/subscription_properties – Modify contact propertiesgrowthstack/lianamailer/contactform7/subscription_lists – Modify selected mailing listsGravity Forms:
growthstack/lianamailer/gravityforms/subscription_mailer_data – Modify mailer data before sendinggrowthstack/lianamailer/gravityforms/subscription_properties – Modify contact propertiesgrowthstack/lianamailer/gravityforms/subscription_lists – Modify selected mailing listsWPForms:
growthstack/lianamailer/wpforms/get_lianamailer_api – Modify LianaMailer API instancegrowthstack/lianamailer/wpforms/subscription_mailer_data – Modify mailer data before sendinggrowthstack/lianamailer/wpforms/subscription_properties – Modify contact propertiesgrowthstack/lianamailer/wpforms/subscription_lists – Modify selected mailing listsPersonalization:
GrowthstackReplacementDone – Fired on document when personalization (or A/B testing) content replacement is completeExample usage:
javascript
document.addEventListener('GrowthstackReplacementDone', function(e) {
// Re-initialize your JavaScript after content replacement
console.log('Personalization applied');
});
Example double initialization for a hypothetical block:
`javascript
const INIT_EVENTS = {
DOMContentLoaded: document,
GrowthstackReplacementDone: document,
};
Object.entries( INIT_EVENTS ).forEach( ( [ event, element ] ) => {
element.addEventListener( event, () => {
init();
} );
} );
const init = () => {
const els = document.querySelectorAll( ‘.js-my-element-name’ );
els.forEach( ( el ) => {
if ( ‘true’ === el.dataset.init ) {
return;
}
el.dataset.init = ‘true’;
setupElement( el );
} );
};
const setupElement = ( el ) => {
// Your block JavaScript logic here
};
`
For support, feature requests, and bug reports, please visit:
* Website: https://www.lianatech.com/
* Documentation: https://www.lianatech.com/
Liana with GrowthStack is developed and maintained by Liana Technologies.