Hooks & Filters
AMS Connect adheres to WordPress's Hooks & Filters design methodology to promote customization and extensibility.
All hook names use the amsc_ prefix.
Common Filters
Authentication and Roles
amsc_default_sso_role- Change the role list applied when an SSO user is identified.amsc_login_redirect- Override redirect target after login.amsc_allowed_login_actions- Allow specificwp-login.php?action=values when front-end login redirects are enabled.amsc_impexium_role_mapping- Modify the generated role mapping configuration before it is rendered/applied.
Refresh and Data Hydration
amsc_refresh_interval_seconds- Override automatic refresh interval in seconds.amsc_refresh_payload- Adjust normalized AMS payload before it is persisted to WordPress user/meta.amsc_impexium_refresh_payload- Apply Impexium-specific payload adjustments during refresh.
Gravity Forms Integration
amsc_gf_remembers_feed_settings_fields- Extend or alter feed settings fields.amsc_gf_remembers_profile_payload- Adjust outbound profile/custom-fields payload before write-back.amsc_gf_remembers_merge_tags- Customize merge tags shown in Gravity Forms editors.amsc_gf_remembers_primary_affiliation_relationship_name- Set relationship name for affiliation sync.amsc_gf_remembers_primary_affiliation_reciprocal_name- Set reciprocal relationship name for affiliation sync.
Common Actions
amsc_user_login_identified- Fires after user identification/provisioning during SSO flow.amsc_before_refreshing_ams_data- Fires before a refresh request runs.amsc_after_refreshing_ams_data- Fires after a successful refresh and data persistence.amsc_refresh_failed- Fires when refresh fails with aWP_Error.amsc_impexium_profile_updated- Fires after Gravity Forms profile write-back succeeds.
Examples
Add a baseline role to SSO users
add_filter( 'amsc_default_sso_role', function ( $roles, $user ) {
$roles = is_array( $roles ) ? $roles : array();
$roles[] = 'association_member';
return array_unique( $roles );
}, 10, 2 );
Tune automatic refresh cadence
add_filter( 'amsc_refresh_interval_seconds', function ( $seconds, $frequency, $user_id ) {
if ( '1_day' === $frequency ) {
return 6 * HOUR_IN_SECONDS;
}
return $seconds;
}, 10, 3 );
Customize affiliation relationship labels for Gravity Forms write-back
add_filter( 'amsc_gf_remembers_primary_affiliation_relationship_name', function ( $name, $user, $payload ) {
return 'Member Of';
}, 10, 3 );
add_filter( 'amsc_gf_remembers_primary_affiliation_reciprocal_name', function ( $name, $user, $payload ) {
return 'Has Member';
}, 10, 3 );