DocsOMailerSubscriber Management
Marketing Suite

Subscriber Management

OMailerorravo.com/docs/omailer/subscriber-management

Subscriber Management

OM_Subscriber handles all subscriber CRUD, querying, and bulk operations.

PHP API

php// Count all or filtered subscribers
$total = OM_Subscriber::count();
$active = OM_Subscriber::count( 'subscribed' );

// Get subscribers with filtering
$subs = OM_Subscriber::get_all([
    'status'  => 'subscribed',
    'list_id' => 3,
    'search'  => 'john',
    'orderby' => 'created_at',  // created_at|email|first_name|last_name|status
    'order'   => 'DESC',
    'per_page' => 50,
    'page'    => 1,
]);

// Get single subscriber
$sub = OM_Subscriber::get_by_id( 42 );
$sub = OM_Subscriber::get_by_email( 'user@example.com' );

// Insert a new subscriber
$id = OM_Subscriber::insert([
    'email'      => 'new@example.com',
    'first_name' => 'Jane',
    'last_name'  => 'Smith',
    'status'     => 'subscribed',  // subscribed|pending|unsubscribed|bounced
    'source'     => 'api',
    'ip_address' => '1.2.3.4',
]);
// Returns subscriber ID. Also auto-adds to "General" list.
// Fires: do_action( 'om_subscriber_inserted', $id, $data )

Global Helper

php// om_subscribe() — the recommended public API for integrations
$sub_id = om_subscribe( 'email@example.com', [
    'first_name' => 'Jane',
    'last_name'  => 'Smith',
    'list_id'    => 5,
    'source'     => 'my_plugin',
] );
// Returns subscriber ID or WP_Error.
// Handles duplicate detection: if email exists, it resubscribes the existing record.

Subscriber Statuses

StatusMeaning
subscribedActive, receives emails
pendingAwaiting double opt-in confirmation
unsubscribedOpted out, will not receive marketing
bouncedHard-bounced, permanently suppressed

Hooks

phpadd_action( 'om_subscriber_inserted',    function( int $id, array $data ) {} );
add_action( 'om_subscriber_updated',     function( int $id, array $changes ) {} );
add_action( 'om_subscriber_unsubscribed',function( int $id ) {} );
add_action( 'om_subscriber_bounced',     function( int $id, string $type ) {} );
Subscriber Management — OMailer Docs — Orravo