Technical Reference


trackEvent() Function

window.PersonalizeWP.tracking.trackEvent( eventName, eventArgs )

Parameters

eventName (string, required)

  • Event type identifier
  • Must match registered event type in PHP
  • Restricted to lowercase alphanumeric characters, dashes, and underscores
  • Processed through WordPress sanitize_key()   function
  • Examples: click  , video-play  , form-submit  

eventArgs (object, required)

  • Key-value pairs of event metadata
  • Keys follow same format restrictions as eventName (max 150 chars)
  • Values should follow WordPress Post Meta format conventions
  • Avoid deeply nested objects or binary data

Automatic Data

The following data is automatically added to all events:

  • Visitor UUID - Unique identifier for the visitor
  • Timestamp - When the event occurred
  • Current URL - Page where the event was triggered
  • Page context - Post ID and type (if available via window.pwpTrack  )

Return Value

None. Errors are logged to console if tracking fails.


register_event_type() Function

$personalizewp->register_event_type( $event_type, $args )

Parameters

$event_type (string, required)

  • Event type identifier, must match JavaScript eventName
  • Same format restrictions as JavaScript

$args (array, optional)

  • label   (string) - Display name in admin. Defaults to $event_type

Example

$personalizewp = personalizewp();
$personalizewp->register_event_type(
    'newsletter-signup',
    array(
        'label' => 'Newsletter Subscription',
    )
);

Display Filter Hook

add_filter( 
    'personalizewp_activity_table_event_value_{$event_type}',
    callable $callback,
    int $priority = 10,
    int $accepted_args = 4
)

Callback Parameters

  1. $link_title (string) - Default link title
  2. $link (string) - Default link URL
  3. $title (string) - Default title
  4. $item (array) - Complete activity item data, including:
    • ID   - Activity record ID
    • url   - Page URL where event occurred
    • visitor_id   - Associated visitor profile ID
    • Plus any other activity fields

Accessing Metadata

Use the Activity model's get_metadata()   method:

$value = PersonalizeWP\Model\Activity::get_metadata( 
    $item['ID'],  // Activity ID
    'meta-key',   // Metadata key
    true          // Single value (true) or array (false)
);

Return Value

Return a formatted HTML string for display in the "Event Value" column. HTML is allowed but will be escaped where appropriate by the admin interface.

Still need help? Contact Us Contact Us