Skip to:
Content
Pages
Categories
Search
Top
Bottom

Search Results for 'notification user id'

Viewing 25 results - 301 through 325 (of 1,091 total)
  • Author
    Search Results
  • #258232
    Fantacular Designs
    Participant

    I placed the following code in the bp-custom.php which was found under the wp-content -> plugins.

    function bpfr_hide_tabs() {
    global $bp;
    
    	if ( bp_is_user() && !is_super_admin() ) {
    		bp_core_remove_nav_item( 'notifications', 'activity', 'groups', 'messages', 'forums', 'settings');
    	}
    	
    }
    add_action( 'bp_setup_nav', 'bpfr_hide_tabs', 15 );
    

    It breaks my site, shuts it down. From what I’ve read, I am supposed to specify what tab is open when opening a profile. Otherwise, browsers don’t know what to display since default is “Activity” and I’m removing it… Can someone please tell me where I went wrong? I appreciate the help!

    #257925
    Humiges
    Participant

    Hey @buddycore,
    thanks for your reply.
    Sorry, I’ll try 😉
    1, Well, we have users (buddypress) they post their stories from front end – using social articles plugin. Sometime, their stories have chapters… so, it would be nice to link them somehow. I didn’t find the way to do that, so I thought I would try it here — maybe a bit of brainstorming 😉

    2, In regards of the images – I know lots of site have problems with copyrights, so I would like to control the images by allowing only selection from library.

    3, allow buddypress users to follow certain blog posts – so, when it’s edited or commented they receive notification? – — I hope this one is clear 😉

    Thanks a lot 🙂

    #257869
    Antonio
    Participant

    Hi guys, I created a custom notification that is added when an user receive a like on a custom post type.

    All good unitl now, but I noticed that if the post receive 2 likes, from 2 different users, the user receive only the first notification and not the second one.

    Any help would be really appreciated.

    
    //Component declaration
    if(!function_exists('my_custom_register_wiki_notification')) {
    	function my_custom_register_wiki_notification() {
    		// Register component manually into buddypress() singleton
    		buddypress()->my_custom_wiki = new stdClass;
    		// Add notification callback function
    		buddypress()->my_custom_wiki->notification_callback = 'my_custom_wiki_like_format_notifications';
    
    		// Now register components into active components array
    		buddypress()->active_components['my_custom_wiki'] = 1;
    	}
    };
    
    //Notification format declaration
    if(!function_exists('my_custom_wiki_like_format_notifications')) {
    	function my_custom_wiki_like_format_notifications( $action, $item_id, $secondary_item_id, $total_items, $format = 'string' ) {
    
    		// New custom notifications
    		if ( 'my_custom_wiki_like' === $action ) {
    
    			$wiki_post = get_post( $item_id );
    			$post_title = get_the_title( $item_id );
    
    			$custom_title = sprintf( esc_html__( 'Your post "%1$s" received a like', 'my_custom' ), $post_title );
    			$custom_text  = sprintf( esc_html__( 'Your post "%1$s" received a like', 'my_custom' ), $post_title );
    			$custom_link  = get_permalink( $item_id );
    
    			// WordPress Toolbar
    			if ( 'string' === $format ) {
    				$return = apply_filters( 'my_custom_wiki_like_format', '<a href="' . esc_url( $custom_link ) . '" title="' . esc_attr( $custom_title ) . '">' . esc_html( $custom_text ) . '</a>', $custom_text, $custom_link );
    
    				// Deprecated BuddyBar
    			} else {
    				$return = apply_filters( 'my_custom_wiki_like_format', array(
    					'text' => $custom_text,
    					'link' => $custom_link
    				), $custom_link, (int) $total_items, $custom_text, $custom_title );
    			}
    
    			return $return;
    
    		}
    
    		return $action;
    
    	}
    }
    
    //Function that add the notification when like is triggered
    function my_custom_add_like() {
      //...
      //...
    
      if(my_custom_is_wiki_like_notification_enabled()) {
    		        bp_notifications_add_notification( array(
    			        'user_id'           => $post_object->post_author,
    			        'item_id'           => $post_id,
    			        'secondary_item_id' => get_current_user_id(),
    			        'component_name'    => 'my_custom_wiki',
    			        'component_action'  => 'my_custom_wiki_like',
    			        'date_notified'     => bp_core_current_time(),
    			        'is_new'            => 1,
    		        ) );
    	        }
      
    }
    
    #257597
    danbp
    Participant

    Don’t hack core files. (never !) Which language do you use ?

    Where have you done this ?
    I’ve took a look at the files and found out that the working ones are using __( "Foo %s", "buddypress" ) and the wrong ones are using _x( "Foo %s", "Blah blah blah", "buddypress" ).

    Actually all BP strings are working. If you need custom translation, you have to do that in po/mo and to use preferably the original strings. For example, if you build a template and want to use the notification count on it, you copy the original string to your work. If you don’t do that, you nedd 2 po/mo ! One for BP and one for your custom work. Which is certainly not the best and easiest solution.

    The notification count is defined in wp-content/plugins/buddypress/bp-notifications/classes/class-bp-notification-component.php

    The counter itself is inside a span and is defined separately.

    /* translators: %s: Unread notification count for the current user */
    _x( 'Notifications %s', 'Profile screen nav', 'buddypress' ),
    sprintf(
    	'<span class="%s">%s</span>',

    The bla bla bla part you mention is a comment for translators who indicates him the context. This comment appears in the pot file like: Notification %s [Profile screen nav]

    That’s BP’s default coding. You haven’t to modify this. Use it as is.

    If you have difficulty to translate such a string, you have to check your theme or any custom function you added (by hand or another plugin).

    The corresponding custom string should reflect the original one as gettext function wouldn’t translate a string which is not identic.

    __( "Foo %s", "buddypress" ) and _x( "Foo %s", "Blah blah blah", "buddypress" ) are both working, and do technicaly the same thing (foo = something) which let you modify “foo” in both case, but as the original string is _x( "Foo %s", "Blah blah blah", "buddypress" ), you couldn’t replace it with __( "Foo %s", "buddypress" ). It is the translation prefix (_x or __) which is the important thing here.

    Hope to be clear. And you’re right, unfortunately your changes will be overwriten at next BP update as you hacked core files.

    #257535
    ahmed3baid
    Participant

    Hi,
    I’m working on a wordpress website, and using Buddypress. I wanted to add posts notifications and it worked fine, except when I tried to filter them. First you need to know how I want to filter them.
    – I’ve a profile field named ‘Field’ which is a dropdown list with 5 options.
    – I have also 5 post categories with the exact names of the ‘Field’ values.
    – When a post is added, If it has (e.g. A,B,C) categories I want a notification for every user who has his ‘Field’ value is equal to A,B or C.

    Here is my code:

    foreach (users as $user) {
    $acc_type = xprofile_get_field_data(‘Field’, $user->ID);
    if (in_category($acc_type,$post_id)) {
    bp_notifications_add_notification( array(
    ‘user_id’ => $user->ID,
    ‘item_id’ => $post_id,
    ‘component_name’ => ‘custom’,
    ‘component_action’ => ‘custom_action’,
    ‘date_notified’ => bp_core_current_time(),
    ‘is_new’ => 1,
    ) );
    }

    }

    #257510
    mshane8
    Participant

    Hey Guys –

    I have a project where its a social community site where all the members create the site content on their own. I have 2 profiles(roles) that all users will fall under (employer & employee). Then I have 3 membership levels for each role (FREE, Standard & Premium). The idea is to pair up these users by category and control the level of access/features they have based on account type. So direct messaging is available only to premium members, push notifications only available to premium members. The more features and ability to build out your profile is based on your membership type. I would obviously add membership plugin to restrict access and capability as well as ecommerce capability for checkout.

    I know bbPress and BuddyPress are forums and social communities but will they integrate well into membership type communities where clients need to pay for additional access to social community and forum features?

    If not, is there a premium application that handles these types of projects?

    Thanks so much!

    #256722
    ah72king
    Participant

    I found a solution that can help

    
    <?php
    // For Custom Notification 
    // Registering Custom Componet 
    function custom_filter_notifications_get_registered_components( $component_names = array() ) {
     
        // Force $component_names to be an array
        if ( ! is_array( $component_names ) ) {
            $component_names = array();
        }
    
        // Add 'custom' component to registered components array
        array_push( $component_names, 'custom' );
     
        // Return component's with 'custom' appended
        return $component_names;
    }
    add_filter( 'bp_notifications_get_registered_components', 'custom_filter_notifications_get_registered_components' );
    
    // Formatting custom with respect to action
    function bp_custom_format_buddypress_notifications( $action, $item_id, $secondary_item_id, $total_items, $format = 'string' ) {
     		
     		//$item_id this your id which you can use to get your respected data
        	$data  = get_my_values_custom_function($item_id); // this is custom function it depend on your needs and data
        	$custom_title = $data->title;
        	$custom_link  = $data->link;
        	$custom_text  = $data->text;
    
        // New custom notifications
        if ( 'custom_action' === $action ) {
            
            // WordPress Toolbar
            if ( 'string' === $format ) {
                $return = apply_filters( 'custom_filter','Your custom notification for <a href="'.$custom_link.'">'.$custom_title.'</a> ', $custom_text, $custom_link );
     
            // Deprecated BuddyBar
            } else {
                $return = apply_filters( 'custom_filter', array(
                    'text' => $custom_text,
                    'link' => $custom_link
                ), $custom_link, (int) $total_items, $custom_text, $custom_title );
            }
            
            return $return;
            
        }
       
    }
    add_filter( 'bp_notifications_get_notifications_for_user', 'bp_custom_format_buddypress_notifications', 10, 5 );
    
    // Adding custom Notification in DB 
    function bp_custom_notification( $item_id, $author_id ) {
    
        if ( bp_is_active( 'notifications' ) ) {   // if notification is active from admin panel
        	// if notification is active from admin panel bp_notifications_add_notification function to add notification into database
            bp_notifications_add_notification( array(                        
                'user_id'           => $author_id, // User to whom notification has to be send
                'item_id'           => $item_id,  // Id of thing you want to show it can be item_id or post or custom post or anything
                'component_name'    => 'custom', //  component that we registered
                'component_action'  => 'custom_action', // Our Custom Action 
                'date_notified'     => bp_core_current_time(), // current time
                'is_new'            => 1, // It say that is new notification
            ) );
        }
    }
    add_action( 'custom_hooks', 'bp_custom_notification', 10, 2);
    /**
    * custom_hooks is action name which will be call by do_action() function
    * bp_custom_notification your function name
    * 10 is priority number
    * 2 is number of parameter 
    */
    
    /****
    * Now Where to call custom_hooks and how 
    */
    
    do_action('custom_hooks', $item_id, $author_id );
    
    /****
    * place it where you want to call this action and pass parameter
    */ 
    
    #256710
    ah72king
    Participant

    I have custom plugin in which i have review approved and delete functions so when i do some sort of bulk action like delete or i approved a review.
    i want to generate a bp custom notifications at that user dashboard or member page which review was approved or deleted
    i place this where i perform approved action

    do_action('review-approved');

    Then i make function below


    function bp_review_add_notification() {
    if ( bp_is_active( 'notifications' ) ) {
    bp_notifications_add_notification( array(
    'user_id' => 1, // this is one because for testing just admin now
    'component_name' => 'review',
    'component_action' => 'review_approved',
    'date_notified' => bp_core_current_time(),
    'is_new' => 1,
    ) );
    }
    }
    add_action( 'review-approved', 'bp_review_add_notification',10,5);

    Review is added in database i checked that but it is not shown on dashboard or member page
    how to do that

    or can you refer any complete guide to create a custom notification upon some action

    socialc
    Participant

    <?php echo bp_notifications_get_unread_notification_count(bp_loggedin_user_id()); ?>

    You can build your own menu using this inside to show the count.

    doubleF
    Participant

    Hello @shanebp,

    I’ve changed the secondary_item_id with : get_current_user_id()

    And it’s the same issue, notification is created but doesn’t seem to be assigned to any profile :/

    Thanks for the help.

    shanebp
    Moderator

    'secondary_item_id' should be the user id of the person creating the notification.
    That might be the problem.

    doubleF
    Participant

    Hello,

    I have a really weird issue with Buddypresss, I can create notifications but they’re not received by the user… Every components are enabled btw.

    If I do :

    
    bp_notifications_add_notification( array(
    'user_id'           => get_current_user_id(),
    'item_id'           => 630,
    'secondary_item_id' => 1080,
    'component_name'    => 'my_app',
    'component_action'  => 'my_app_action',
    'date_notified'     => bp_core_current_time(),
    'is_new'            => 1,
    ) );
    

    Where 630 and 1080 are valid WordPress posts and my_app component has been registered sooner.

    If I check my database, that’ll create a new entry as expected and I do :

    bp_notifications_get_notification(306)

    (306 is my new notification’s id) It does return the notification object.

    However, if I do :

    bp_notifications_get_notifications_for_user(3)

    (3 is the current_user_id())

    Then it returns false and bp_notifications_get_all_notifications_for_user() an empty array.

    What am I missing ?

    Thanks for the help, please let me know if you need more details.

    Cheers,

    François

    #255647

    In reply to: Confirmation Email

    Dono12
    Participant

    Thanks for your prompt response and your help but that function did not achieve the goal I was looking for. I wanted the activation Key to come from Cymi User Extra Field. I found a solution from someone with a similar problem but it is a little too extreme for me. The result you get is a Cymi User Extra Field Key/URL, Looks like This(cimy_key=88fddcb568dcf2d6). It involved editing a core Buddypress file wp-content/plugins/buddypress/bp-core/bp-core-filters.php. Can you help with a function for my functions.php or bp-custom to achieve the same goal. If it’s not too much maybe generate the Cymi-Key in the Buddypress Email Template though not a priority. I’m fully aware that editing core files is not practical, especially being that you lose it during updates.

    https://buddypress.org/support/topic/activation-email-key-doesnt-work-i-may-have-the-fix/

    function bp_core_activation_signup_user_notification( $user, $user_email, $key, $meta ) {
    
    $activate_url = bp_get_activation_page() . "key=$key";
    $activate_url = esc_url($activate_url);
    $admin_email = get_site_option( 'admin_email' );
    
    if ( empty( $admin_email ) )
    $admin_email = 'support@' . $_SERVER;
    
    // Then it ends with, on line 255
    
    add_filter( 'wpmu_signup_user_notification', 'bp_core_activation_signup_user_notification', 1, 4 );
    #255632

    Topic: Confirmation Email

    in group forum Requests & Feedback
    Dono12
    Participant

    I’m using Cymi User Extra Field, when you enable email confirmation the user gets the Buddypress email template
    with the confirmation link. when the user clicks the link it takes them to the confirmation page of the site prompting them
    to login with username and password. Problem is the user name and password doesnt work. The user gets created because they
    are visible in the users list. How can I fix this problem.
    I’ve disabled the Buddypress sign up for the default WordPress using: BP CUSTOM

    function my_disable_bp_registration() {
      remove_action( 'bp_init',    'bp_core_wpsignup_redirect' );
      remove_action( 'bp_screens', 'bp_core_screen_signup' );
    }
    add_action( 'bp_loaded', 'my_disable_bp_registration' );
    add_filter( 'bp_get_signup_page', "firmasite_redirect_bp_signup_page");
        function firmasite_redirect_bp_signup_page($page ){
            return bp_get_root_domain() . '/wp-login.php?action=register'; 
     }

    and I found this code in a Buddpress Forum:

    https://buddypress.trac.wordpress.org/ticket/3443

    // Change the text on the signup page

    add_filter( 'bp_registration_needs_activation', '__return_false' );
    
    function my_disable_activation( $user, $user_email, $key, $meta = '' ) {
    	// Activate the user
    	bp_core_activate_signup( $key );
    
    	// Return false so no email sent
    	return false;
    }
    add_filter( 'wpmu_signup_user_notification', 'my_disable_activation', 10, 4 );
    
    

    I tried it with the hope that the key would be disabled and the key fired by WordPress would take over but it still didnt work.

    I really don’t care who fires the key I just want the user to be able to login after click the key in their email.

    Mike
    Participant

    How do you position the notification counter for dropdown items? For example,

    array_splice( $items_array, 7, 0, '<li class="bubble">' . friends_get_total_friend_count( bp_loggedin_user_id() ) . '</li>' ); // 0,0 1st position, 1,0 2nd, etc

    if there was a dropdown menu below this menu item (below position 7,0), what would the position be labelled as? I’ve tried 7,1 but no luck.

    #255474
    ljmac
    Participant

    Unfortunately none of these are quite what I’m after – the following code comes close, but I don’t want a login redirect – just a standard redirect from /members/%username%/activity/mentions/ to /members/%username%/activity/. How can I modify this code to achieve my desired outcome?

    function jessicana_redirect_page( $redirect_to, $request, $user ) {
        $redirect_to = bp_core_get_user_domain($user->ID) . 'notifications/';
        return $redirect_to;
    }
    add_filter('login_redirect', 'jessicana_redirect_page', 11, 3);
    ljmac
    Participant

    Hi,

    I have a Facebook-style wall set up as the default tab for activity on users’ BuddyPress profiles. This makes some of the other subnavs redundant, so I’ve hidden them. However, when a user gets mentioned, the notification sends them to the Mentions tab (which I’ve also hidden). How can I redirect them to their wall (/members/%username%/activity/)? BuddyPress’ dynamic URLs make this much less straightforward than usual.

    #255314
    shanebp
    Moderator

    You should not change that function. You should use the hook.

    Try something like this in your theme functions.php:

    function hosam_delete_notification( $topic_id ) {
    
       // you cannot send an array
       // create individual variables
       $user_id = 386;  // etc
    
       bp_notifications_delete_notifications_by_item_id( $user_id, $item_id, $component_name, $component_action, $secondary_item_id = false );
    
    }
    add_action( 'bbp_trash_topic', 'hosam_delete_notification' );
    #255243
    sharmavishal
    Participant

    1. In BuddyPress, we by default get to see member page. I want to know how to redirect someone who is logging in/ new user after registration to News feed?

    search for login redirect plugins for buddypress

    2. I want to keep those wall, timeline and all in menu bar instead of profile tab. How to do that?

    check wp admin bar codex or associated plugins

    3. I am unable to hide admin bar/ that WordPress logo bar for non-admin user. no plugin helping me out.

    am aware of atleast 2 plugins which are working for me. u need to test/check which ones work with ur theme/setup

    4. how to make the menu such that signed in user can see log out button and other sign in/ register?

    via buddypress components in the menus. logged in and logged out menu links

    5. how to enable realtime notification and instant messaging private n groups both?

    notification is already there and its real time. i belive there is a group chat plugin for buddypress as well

    6. how to remove show dropdown menu in profile

    that would depend on ur theme which u are using

    PS:- I don’t know PHP much. moreover, I cannot afford to hire someone.

    then this would take much time and effort to customise it as per ur needs

    start from here

    Configure BuddyPress

    #255238
    kunaldas1997
    Participant

    hello there!

    I am new to BuddyPress.
    1. In BuddyPress, we by default get to see member page. I want to know how to redirect someone who is logging in/ new user after registration to News feed?
    2. I want to keep those wall, timeline and all in menu bar instead of profile tab. How to do that?
    3. I am unable to hide admin bar/ that WordPress logo bar for non-admin user. no plugin helping me out.
    4. how to make the menu such that signed in user can see log out button and other sign in/ register?
    5. how to enable realtime notification and instant messaging private n groups both?
    6. how to remove show dropdown menu in profile
    PS:- I don’t know PHP much. moreover, I cannot afford to hire someone.

    #255213
    m1000
    Participant

    After upgrade the custom loop with notifications doesn’t work anymore:

    if ( is_user_logged_in() ) {
       if ( function_exists( 'bp_is_active' ) ) {
    	if ( $notifications = bp_notifications_get_notifications_for_user( bp_loggedin_user_id(), $format = 'string' ) ) { ?>
    	<div class="notif-container">
    	<?php
    	}
    
    	if ( $notifications ) {
    		$counter = 0;
    		for ( $i = 0, $count = count( $notifications ); $i < $count; ++$i ) {
    			$alt = ( 0 == $counter % 2 ) ? ' alt' : ''; ?>
    			<div class="my-notification<?php echo $alt ?>"><?php echo $notifications[$i] ?></div>
    
    			<?php
    			 $counter++;
    			} ?>
    	</div><!-- notif-container -->
    	<?php
    	} else {}
       }
    }

    It returns ‘Array’

    #255157
    Andrew
    Participant

    I’ve been trying to work out how to get the user IDs for the notification items so I can display notification user avatars.

    Is this the best way to do it, I’ve tested this with a few users and seems to work:

    function test_notifications_avatar() {
    	
    	$bp      = buddypress();
    	$user_id = $bp->notifications->query_loop->notification->secondary_item_id;
    	
    	if ( empty( $user_id ) )
    		$user_id = $bp->notifications->query_loop->notification->item_id;
    
    	echo bp_core_fetch_avatar( array( 'item_id' => $user_id, 'type'  => 'thumb' ) );
    }
    #255156
    hosam020
    Participant

    @shanebp Thank you for the kindly reply
    Yes i am using it.
    i think you mean i have to call this action in theme funcation ourside the bp localfile.

    unction bbp_trash_topic( $topic_id = 0 ) {
    
    	// Validate topic ID
    	$topic_id = bbp_get_topic_id( $topic_id );
    
    	if ( empty( $topic_id ) || !bbp_is_topic( $topic_id ) )
    		return false;
    
    		$args = array(
    		'user_id'           => 386,
    		'item_id'           => $topic_id,
    		'secondary_item_id' => 0,
    		'component_name'    => 'forums',
    		'component_action'  => 'new_topic',
    		);
    	
    	bp_notifications_delete_notifications_by_item_id( $args );
    
    	do_action( 'bbp_trash_topic', $topic_id );

    Please ignore the args param just added a notification param to see if will delete it
    but never happend
    Sorry for my bad english i hope u understand me.

    jameshh93
    Participant

    I have been using this code to echo out a bubble for my header however it used to work flawlessly but now it just gives me ” Fatal error: Call to undefined function bp_get_total_unread_messages_count() in C:\Program Files (x86)\Ampps\www\retaggr101\wp-content\themes\twentysixteen\header.php on line 167″

    which kind of makes no sense at all.

    
    		              <?php 
    					  
    					            $count = bp_get_total_unread_messages_count( bp_loggedin_user_id() );
                                           if ( $count > 0 ) {
                                        echo '<div class="site-header-user-notifcations-bubble">'; echo $count; echo '</div>';
                                        } else {
                                       // The notif count is 0.
                                            }
    					  
    					  
    					  ?>

    espcially when this code works

     <?php 
    					  
    					            $count = bp_notifications_get_unread_notification_count( bp_loggedin_user_id() );
                                           if ( $count > 0 ) {
                                        echo '<div class="site-header-user-notifcations-bubble">'; echo $count; echo '</div>';
                                        } else {
                                       // The notif count is 0.
                                            }
    					  
    					  
    					  ?>
Viewing 25 results - 301 through 325 (of 1,091 total)
Skip to toolbar