Skip to content

Integrations

Hook Reference

HookDescription
fluent_affiliate/get_integrationsFilters the array of registered integration definitions shown in Settings → Integrations.
fluent_affiliate/get_integration_config_{integration}Filters the configuration data for a specific integration.
fluent_affiliate/save_integration_config_{integration}Filters the result of saving an integration's configuration.
fluent_affiliate/migratorsFilters the list of available data migrators in the Migration Tools.
fluent_affiliate/get_migration_statisticsFilters migration statistics shown in the admin migration tools.
fluent_affiliate/get_current_data_countsFilters the current data counts displayed before a wipe operation.
fluent_affiliate/advanced_report_providersFilters the advanced report providers available in the Reports section.
fluent_affiliate/wppayform__defaultsFilters the default field values pre-filled into a Paymattic affiliate registration form.
fluent_affiliate/user_ipFilters the visitor IP address used for visit tracking.
fluent_affiliate/woo_menu_link_positionFilters the menu position integer for the FluentAffiliate link added to the WooCommerce My Account menu.
fluent_affiliate/woo_menu_labelFilters the label text for the FluentAffiliate link in the WooCommerce My Account menu.

fluent_affiliate/get_integrations

Filters the array of registered integration definitions shown in Settings → Integrations.

Parameters

ParameterTypeDescription
$integrationsarrayExisting integration definitions keyed by slug.

Source: app/Hooks/Handlers/AdminMenuHandler.php

php
add_filter('fluent_affiliate/get_integrations', function($integrations) {
    $integrations['my_plugin'] = [
        'title' => 'My Plugin',
        'slug'  => 'my_plugin',
        'logo'  => MY_PLUGIN_URL . 'logo.svg',
    ];
    return $integrations;
});

fluent_affiliate/get_integration_config_{integration}

Filters the configuration data for a specific integration. The hook suffix is the integration slug.

Parameters

ParameterTypeDescription
$configarraySaved configuration for the integration.

Source: app/Http/Controllers/IntegrationController.php

php
add_filter('fluent_affiliate/get_integration_config_my_plugin', function($config) {
    $config['api_key'] = get_option('my_plugin_api_key', '');
    return $config;
});

fluent_affiliate/save_integration_config_{integration}

Filters the result of saving an integration's configuration. Return a non-empty string to show as an error.

Parameters

ParameterTypeDescription
$messagestringError message (empty string = success).
$configarrayThe configuration data being saved.

Source: app/Http/Controllers/IntegrationController.php

php
add_filter('fluent_affiliate/save_integration_config_my_plugin', function($message, $config) {
    update_option('my_plugin_api_key', sanitize_text_field($config['api_key'] ?? ''));
    return ''; // return empty string = success
}, 10, 2);

fluent_affiliate/migrators

Filters the list of available data migrators in the Migration Tools.

Parameters

ParameterTypeDescription
$migratorsarrayMigrator class definitions keyed by slug.

Source: app/Http/Controllers/MigrationController.php

php
add_filter('fluent_affiliate/migrators', function($migrators) {
    $migrators['my_plugin'] = ['title' => 'My Plugin Importer', 'class' => MyMigrator::class];
    return $migrators;
});

fluent_affiliate/get_migration_statistics

Filters migration statistics shown in the admin migration tools.

Parameters

ParameterTypeDescription
$statsarrayStatistics array.

Source: app/Http/Controllers/MigrationController.php

php
add_filter('fluent_affiliate/get_migration_statistics', function($stats) {
    $stats['my_plugin'] = MyMigrator::getStats();
    return $stats;
});

fluent_affiliate/get_current_data_counts

Filters the current data counts displayed before a wipe operation.

Parameters

ParameterTypeDescription
$countsarrayLabel => count pairs.

Source: app/Http/Controllers/MigrationController.php

php
add_filter('fluent_affiliate/get_current_data_counts', function($counts) {
    return $counts;
});

fluent_affiliate/advanced_report_providers

Filters the advanced report providers available in the Reports section.

Parameters

ParameterTypeDescription
$providersarrayReport provider definitions.

Source: app/Http/Controllers/ReportsController.php

php
add_filter('fluent_affiliate/advanced_report_providers', function($providers) {
    $providers['my_report'] = ['title' => 'My Report', 'component' => 'MyReportComponent'];
    return $providers;
});

fluent_affiliate/wppayform__defaults

Filters the default field values pre-filled into a Paymattic affiliate registration form.

Parameters

ParameterTypeDescription
$fieldsarrayForm field defaults.
$formIdintPaymattic form ID.

Source: app/Modules/Integrations/Paymattic/BootstrapAffiliateRegister.php

php
add_filter('fluent_affiliate/wppayform__defaults', function($fields, $formId) {
    return $fields;
}, 10, 2);

fluent_affiliate/user_ip

Filters the visitor IP address used for visit tracking.

Parameters

ParameterTypeDescription
$ipstringDetected IP address.

Source: app/Services/VisitService.php

php
add_filter('fluent_affiliate/user_ip', function($ip) {
    // Return anonymised IP for GDPR compliance
    $parts = explode('.', $ip);
    $parts[3] = '0';
    return implode('.', $parts);
});

Filters the menu position integer for the FluentAffiliate link added to the WooCommerce My Account menu.

Requires FluentAffiliate Pro.

Parameters

ParameterTypeDescription
$positionintMenu priority/position. Lower = earlier in the list.

Source: ../fluent-affiliate-pro/app/Services/Integrations/WooCommerce/Bootstrap.php

php
add_filter('fluent_affiliate/woo_menu_link_position', function($position) {
    return 5; // Move to top of account menu
});

fluent_affiliate/woo_menu_label

Filters the label text for the FluentAffiliate link in the WooCommerce My Account menu.

Requires FluentAffiliate Pro.

Parameters

ParameterTypeDescription
$labelstringThe menu item label. Defaults to 'Affiliate Portal'.

Source: ../fluent-affiliate-pro/app/Services/Integrations/WooCommerce/Bootstrap.php

php
add_filter('fluent_affiliate/woo_menu_label', function($label) {
    return __('My Referrals', 'my-plugin');
});

Released under the GPL-2.0 License.