Skip to content

Instantly share code, notes, and snippets.

View yuriinalivaiko's full-sized avatar

Yurii Nalivaiko yuriinalivaiko

View GitHub Profile
<?php
/**
* Hook: um_after_email_notification_sending
*
* Type: action
*
* Description: Fires after sending an email notification.
*
* @example https://github.com/ultimatemember/ultimatemember/blob/master/includes/core/class-mail.php#L456
@yuriinalivaiko
yuriinalivaiko / um_grouped_filters.php
Last active December 8, 2025 20:02
This code adds custom filters to the member directory of the Ultimate Member plugin. These filters are grouped - one filter searches in multiple fields.
<?php
/**
* Add custom grouped filters to the member directory.
*
* Add filters you need to this array. Every filter is an array where:
* - key Filter key. Any valid string key.
* - type Filter type. Accepts: 'text', 'select'.
* - label Filter label (used as the filter placeholder).
* - fields An array of usermeta keys. Filter searches a value in these usermeta.
@yuriinalivaiko
yuriinalivaiko / my_disable_email_notification_sending.php
Last active February 27, 2026 13:45
Ultimate Member customization. Code snippets for email notifications.
<?php
/**
* Disable email notifications for specific roles.
*
* @param bool $disabled Does an email is disabled? Default: false.
* @param string $email Email address for sending.
* @param string $template Email template.
* @param array $args Arguments for sending email.
* @return bool Return true to stop mailing.
@yuriinalivaiko
yuriinalivaiko / um_activity_get_download_link_direct.php
Last active January 9, 2026 12:52
Code snippets for the "Social Activity" extension
@yuriinalivaiko
yuriinalivaiko / um_fix_selectWoo_conflict.php
Last active March 4, 2026 18:23
Code snippets for the "WooCommerce" extension
<?php
// Enqueue the "select2" script earlier to avoid a conflict with "selectWoo".
add_action( 'admin_enqueue_scripts', 'um_fix_selectWoo_conflict' );
add_action( 'wp_enqueue_scripts', 'um_fix_selectWoo_conflict' );
function um_fix_selectWoo_conflict() {
if ( wp_script_is( 'select2' ) && wp_script_is( 'selectWoo' ) ) {
$wp_scripts = wp_scripts();
if ( ! in_array( 'select2', $wp_scripts->queue, true ) && isset( $wp_scripts->registered[ 'select2' ] ) ) {
array_unshift( $wp_scripts->queue, 'select2' );
@yuriinalivaiko
yuriinalivaiko / um_on_login_before_redirect.php
Created February 21, 2024 22:09
Redirect users to a different URL the first time they log in.
<?php
// Redirect users to a different URL the first time they log in.
add_action( 'um_on_login_before_redirect', 'my_on_login_before_redirect', 9, 1 );
function my_on_login_before_redirect( $user_id ) {
$first_login = get_user_meta( $user_id, '_um_first_login', true );
if ( empty( $first_login ) ) {
update_user_meta( $user_id, '_um_first_login', current_time( 'mysql', true ) );
// Set a custom redirect URL for the first time login here.
@yuriinalivaiko
yuriinalivaiko / um_after_email_confirmation_redirect.php
Last active October 29, 2023 18:47
This code overrides the "URL redirect after e-mail activation" setting. After activation the user will be redirected to the page used for registration. This may be helpful if the registration page is placed in a popup or sidebar.
<?php
// Save the page URL on registration.
add_action( 'um_registration_set_extra_data', 'um_registration_set_extra_data_custom', 10, 3 );
function um_registration_set_extra_data_custom( $user_id, $args, $form_data ) {
if ( isset( $_SERVER['HTTP_REFERER'] ) ) {
$url = esc_url( wp_unslash( $_SERVER['HTTP_REFERER'] ) );
update_user_meta( $user_id, 'um_registration_page_url', $url );
} elseif ( isset( $_SERVER['REQUEST_URI'] ) ) {
$url = esc_url( wp_unslash( $_SERVER['REQUEST_URI'] ) );
@yuriinalivaiko
yuriinalivaiko / add_a_hidden_field_to_register.php
Last active May 17, 2025 13:21
Ultimate Member documentation. Article: Add a hidden field to your register form.
<?php
// Add hidden fields you need to this array.
$GLOBALS['um_registration_extra_data'] = array(
'field_key_1' => 'abc',
'field_key_2' => 'xyz',
);
// This code adds hidden fields to the form.
add_action( 'um_after_register_fields', 'add_a_hidden_field_to_register', 10, 1 );
@yuriinalivaiko
yuriinalivaiko / um_friends_button_shortcode.php
Last active September 19, 2023 14:03
This code adds a shortcode [um_friends_button] that displays the "Add Friend" button. This code requires the "Ultimate Member" and "Ultimate Member - Friends" plugins to be installed.
<?php
/**
* Add a shortcode [um_friends_button] that displays the "Add Friend" button.
*
* Attributes:
* - (int) post_id - The post/page ID. Optional. Default: current post/page ID.
* - (int) user_id - The user ID. Optional. Default: requested user ID or the post/page author ID.
*
* Example: [um_friends_button user_id="20"]
@yuriinalivaiko
yuriinalivaiko / um_send_registration_notification_after_updating_profile.php
Last active October 6, 2023 14:01
This code triggers sending the "New User Notification" email notification. Example 1 - after the profile update. Example 2 - after create an account during checkout (WooCommerce).
<?php
// Send the "New User Notification" email when profile is updated.
add_action( 'um_user_after_updating_profile', function( $to_update, $user_id, $args ) {
$GLOBALS['um_temp_submitted'] = isset( $args['submitted'] ) ? $args['submitted'] : $args;
function um_user_after_updating_profile_submitted( $value ) {
return $GLOBALS['um_temp_submitted'];
}
function um_user_after_updating_profile_timestamp( $value ) {