Skip to main content

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 specific wp-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 a WP_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 );