• Resolved benenoo

    (@benenoo)


    Hello, I get this from the forum and its well very.

    I just need to display on member list and online user

    This is the code :

    
    add_action( 'um_after_profile_name_inline', 'um_after_profile_name_inline_custom', 10, 1 );
    
    function um_after_profile_name_inline_custom( $args ) {
    
        if( !empty( um_user( 'profil_status' ) && um_user( 'profil_status' ) == "Professionnel" )) {
    
            $html = ob_get_contents();
            ob_end_clean();
    
            $html = str_replace( um_user( 'display_name' ), um_user( 'business_name' ), $html );
    
            ob_start();
            echo $html;
        }
    }
    

    Thanks for your help
    Yours, michel

    • This topic was modified 2 years, 5 months ago by Marius L. J.. Reason: Fix code formatting
Viewing 3 replies - 1 through 3 (of 3 total)
  • @benenoo

    For the UM Online Users plugin:

    Create a directory wp-content/themes/{active_theme}/ultimate-member/um-online/

    Upload this modified Online Users template to this directory and call the file online.php

    <?php
    /**
     * Template for the UM Online Users.
     * Used for "Ultimate Member - Online Users" widget.
     *
     * Caller: method Online_Shortcode->ultimatemember_online()
     * Shortcode: [ultimatemember_online]
     *
     * This template can be overridden by copying it to yourtheme/ultimate-member/um-online/online.php
     */
    
    if ( ! defined( 'ABSPATH' ) ) exit; ?>
    
    <div class="um-online" data-max="<?php echo $max; ?>">
    
    	<?php $previous_user_id = um_user( 'ID' );
    	foreach ( $online as $user => $last_seen ) {
    
    		um_fetch_user( $user );
    
    		$user_meta = get_userdata( $user );
    		$user_roles = $user_meta->roles;
    		if ( $roles != 'all' && count( array_intersect( $user_roles, explode( ',', $roles ) ) ) <= 0 ) {
    			continue;
    		}
    
    		$name = um_user( 'display_name' );
    		if ( empty( $name ) ) {
    			continue;
    		} ?>
    <?php	// Customization
        	if( !empty( um_user( 'profil_status' ) && um_user( 'profil_status' ) == "Professionnel" )) {
            	$name = um_user( 'business_name' );
        	}
    ?>
    		<div class="um-online-user">
    			<div class="um-online-pic">
    				<a href="<?php echo esc_url( um_user_profile_url() ); ?>" class="um-tip-n" title="<?php echo esc_attr( $name ); ?>">
    					<?php echo get_avatar( um_user( 'ID' ), 40 ); ?>
    				</a>
    			</div>
    		</div>
    
    	<?php }
    
    	if ( ! $previous_user_id ) {
    		um_reset_user();
    	} else {
    		um_fetch_user( $previous_user_id );
    	} ?>
    
    	<div class="um-clear"></div>
    </div>

    I have marked with // Customization where you will find the new code lines

    UM Template guide:

    https://docs.ultimatemember.com/article/1516-templates-map

    • This reply was modified 2 years, 5 months ago by missveronica.
    • This reply was modified 2 years, 5 months ago by missveronica.

    @benenoo

    display on member list

    You can try this code snippet, install into your active theme’s functions.php file
    or use the “Code Snippets” plugin.

    Test if this code snippet makes your first code snippet unnecessary,
    maybe also the Online Users template customization.

    add_filter( 'um_user_display_name_filter', 'um_user_display_name_filter_custom', 10, 3 );
    
    function um_user_display_name_filter_custom( $name, $user_id, $html ) {
    
        if( !empty( um_user( 'profil_status' ) && um_user( 'profil_status' ) == "Professionnel" )) {
            $name = um_user( 'business_name' );
        }
    
        return $name;
    }
    • This reply was modified 2 years, 5 months ago by missveronica.
    Thread Starter benenoo

    (@benenoo)

    Hello, thanks very much works well ??

    • This reply was modified 2 years, 5 months ago by benenoo.
Viewing 3 replies - 1 through 3 (of 3 total)
  • The topic ‘member list code’ is closed to new replies.