Skip to:
Content
Pages
Categories
Search
Top
Bottom

Search Results for 'hide login'

Viewing 25 results - 26 through 50 (of 125 total)
  • Author
    Search Results
  • #306826
    chris19731973
    Participant
    <?php
    
    /**
     * Listing detail Page.
     *
     * @link    https://pluginsware.com
     * @since   1.0.0
     *
     * @package Advanced_Classifieds_And_Directory_Pro
     */
     
    // Exit if accessed directly
    if ( ! defined( 'WPINC' ) ) {
    	die;
    }
    
    /**
     * ACADP_Public_Listing Class.
     *
     * @since 1.0.0
     */
    class ACADP_Public_Listing {
    	
    	/**
    	 * Filter the post content.
    	 *
    	 * @since  1.5.4
    	 * @param  string $html The post thumbnail HTML.
    	 * @return string $html Filtered thumbnail HTML.
    	 */
    	public function post_thumbnail_html( $html ) {	
    		if ( is_singular( 'acadp_listings' ) ) {
    			return '';
    		}
    		
    		return $html;		
    	}
    	
    	/**
    	 * Filter the post content.
    	 *
    	 * @since  1.0.0
    	 * @param  string $content Content of the current post.
    	 * @return string $content Modified Content.
    	 */
    	public function the_content( $content ) {		
    		if ( is_singular( 'acadp_listings' ) && in_the_loop() && is_main_query() ) {		
    			global $post;
    			
    			acadp_update_listing_views_count( $post->ID );
    			
    			$general_settings      = get_option( 'acadp_general_settings' );
    			$recaptcha_settings    = get_option( 'acadp_recaptcha_settings' );	
    			$registration_settings = get_option( 'acadp_registration_settings' );
    
    			$post_meta = get_post_meta( $post->ID );
    			
    			$description = $content;
    					
    			$can_show_date         = isset( $general_settings['display_options'] ) && in_array( 'date', $general_settings['display_options'] )  ? true : false;
    			$can_show_user         = isset( $general_settings['display_options'] ) && in_array( 'user', $general_settings['display_options'] )  ? true : false;
    			$can_show_views        = isset( $general_settings['display_options'] ) && in_array( 'views', $general_settings['display_options'] ) ? true : false;
    			$can_show_contact_form = empty( $general_settings['has_contact_form'] ) ? false : true;	
    			$can_add_favourites    = empty( $general_settings['has_favourites'] )   ? false : true;
    			$can_report_abuse      = empty( $general_settings['has_report_abuse'] ) ? false : true;
    			$has_widgets           = acadp_has_active_listing_widgets();
    			$has_sidebar           = ! $has_widgets;
    			
    			// $login_url
    			$current_page_url = get_permalink();
    			$login_url        = acadp_get_user_login_page_link( $current_page_url );
    			
    			// $location
    			$has_location = empty( $general_settings['has_location'] ) ? false : true;
    			$can_show_location = false;
    			
    			if ( $has_location ) {
    				$location = wp_get_object_terms( $post->ID, 'acadp_locations' );
    			
    				if ( ! empty( $location ) ) {
    					$location = $location[0];
    					$can_show_location = true;
    				}
    			}
    			
    			// $category
    			$has_category = false;
    			$can_show_category = isset( $general_settings['display_options'] ) && in_array( 'category', $general_settings['display_options'] ) ? true : false;
    			$can_show_category_desc = isset( $general_settings['display_options'] ) && in_array( 'category_desc', $general_settings['display_options'] ) ? true : false;
    			$categories = wp_get_object_terms( $post->ID, 'acadp_categories' );
    			
    			if ( empty( $categories ) ) {
    				$can_show_category = false;
    			} else {
    				$category = $categories[0];
    				$has_category = true;
    			}
    			
    			// $can_show_images
    			$has_images = empty( $general_settings['has_images'] ) ? false : true;
    			$can_show_images = false;
    			
    			if ( $has_images ) {
    				$can_show_images = isset( $post_meta['images'] ) ? true : false;
    			}
    			
    			// $can_show_video
    			$has_video = empty( $general_settings['has_video'] ) ? false : true;
    			$can_show_video = false;
    			$video_url = '';
    			
    			if ( $has_video ) {
    				if ( ! empty( $post_meta['video'][0] ) ) {
    					$video_url = acadp_parse_videos( $post_meta['video'][0] );	
    					$can_show_video = empty( $video_url ) ? false : true;				
    				}				
    			}
    			
    			// $can_show_map
    			$has_map = ! empty( $general_settings['has_map'] ) && empty( $post_meta['hide_map'][0] ) ? true : false;
    			$can_show_map = false;
    		
    			if ( $can_show_location && $has_map ) {			
    				$can_show_map = ! empty( $post_meta['latitude'][0] ) && ! empty( $post_meta['longitude'][0] ) ? true : false;
    			}
    
    			// $can_show_price
    			$has_price = empty( $general_settings['has_price'] ) ? false : true;
    			$can_show_price = false;
    		
    			if ( $has_price && isset( $post_meta['price'] ) && $post_meta['price'][0] > 0 ) {
    				$can_show_price = true;
    			}
    			
    			// Get custom fields
    			$fields = array();
    			$category_ids = array();
    
    			foreach ( $categories as $category ) {
    				$category_ids[] = $category->term_id;
    			}
    
    			$custom_field_ids = acadp_get_custom_field_ids( $category_ids );	
    					
    			if ( ! empty( $custom_field_ids ) ) {
    				$args = array(
    					'post_type' => 'acadp_fields',
    					'post_status' => 'publish',
    					'posts_per_page' => 500,	
    					'post__in' => $custom_field_ids,
    					'no_found_rows' => true,
    					'update_post_term_cache' => false,	
    					'meta_key' => 'order',
    					'orderby' => 'meta_value_num',				
    					'order' => 'ASC'
    				);
    				
    				$acadp_query = new WP_Query( $args );
    
    				if ( $acadp_query->have_posts() ) {
    					$fields = $acadp_query->posts;
    				}
    			}
    
    			// Process output
    			ob_start();
    			do_action( 'acadp_before_listing_content' );
    			include( acadp_get_template( "listing/acadp-public-listing-display.php" ) );
    			do_action( 'acadp_after_listing_content' );
    			$content = ob_get_clean();		
    		}
    		
    		return $content;		
    	}
    	
    	/**
    	 * Add or Remove favourites.
    	 *
    	 * @since 1.0.0
    	 */
    	public function ajax_callback_add_remove_favorites() {	
    		check_ajax_referer( 'acadp_ajax_nonce', 'security' );
    
    		$post_id = (int) $_POST['post_id'];
    		
    		$favourites = (array) get_user_meta( get_current_user_id(), 'acadp_favourites', true );
    		
    		if ( in_array( $post_id, $favourites ) ) {			
    			if ( ( $key = array_search( $post_id, $favourites ) ) !== false ) {
        			unset( $favourites[ $key ] );
    			}
    		} else {
    			$favourites[] = $post_id;
    		}
    		
    		$favourites = array_filter( $favourites );
    		$favourites = array_values( $favourites );
    		
    		delete_user_meta( get_current_user_id(), 'acadp_favourites' );
    		update_user_meta( get_current_user_id(), 'acadp_favourites', $favourites );
    		
    		the_acadp_favourites_link( $post_id );
    		
    		wp_die();	
    	}
    	
    	/**
    	 * Report Abuse.
    	 *
    	 * @since 1.0.0
    	 */
    	public function ajax_callback_report_abuse() {	
    		check_ajax_referer( 'acadp_ajax_nonce', 'security' );
    
    		$data = array( 'error' => 0 );
    		
    		if ( acadp_is_human('report_abuse') ) {		
    			if ( acadp_email_admin_report_abuse() ) {			
    				$data['message'] = __( 'Your message sent successfully.', 'advanced-classifieds-and-directory-pro' );				
    			} else {				
    				$data['error']   = 1;
    				$data['message'] = __( 'Sorry! Please try again.', 'advanced-classifieds-and-directory-pro' );				
    			}			
    		} else {		
    			$data['error']   = 1;
    			$data['message'] = __( 'Invalid Captcha: Please try again.', 'advanced-classifieds-and-directory-pro' );			
    		}
    				
    		echo wp_json_encode( $data );
    		wp_die();	
    	}
    	
    	/**
    	 * Send contact email.
    	 *
    	 * @since 1.0.0
    	 */
    	public function ajax_callback_send_contact_email() {	
    		check_ajax_referer( 'acadp_ajax_nonce', 'security' );
    		
    		$data = array( 'error' => 0 );
    		
    		if ( acadp_is_human('contact') ) {		
    			if ( acadp_email_listing_owner_listing_contact() ) {			
    				// Send a copy to admin( only if applicable ).
    				acadp_email_admin_listing_contact();
    				
    				$data['message'] = __( 'Your message sent successfully.', 'advanced-classifieds-and-directory-pro' );				
    			} else {				
    				$data['error']   = 1;
    				$data['message'] = __( 'Sorry! Please try again.', 'advanced-classifieds-and-directory-pro' );				
    			}			
    		} else {		
    			$data['error']   = 1;
    			$data['message'] = __( 'Invalid Captcha: Please try again.', 'advanced-classifieds-and-directory-pro' );			
    		}
    			
    		echo wp_json_encode( $data );	
    		wp_die();	
    	}
    
    }
    
    #305226
    Venutius
    Moderator

    IF you can put in PHP then you’d just need to check is_user_logged_in() and if true hide login/register and if false hide logout.

    I use Nav Menu Roles for this in WP menus, if you can’t can’t use that with menubar I suggest calling on their support.

    #305221
    naomibuch
    Participant

    @mytubepress …Unfortunately that plugin does not show under Appearance Menus….


    @venutius
    The Registration is visible when I log in so is the log out menu….there is a PHP/link option where I can add PHP code and link in the MenuBar Plugin….but when I copied the code that I already have in place in my function theme file it crashes my site….does any one have a fix for this to hide the Registration menu and login menu …WHEN LOGGED IN

    Thanks
    Naomi

    #305214
    mytubepress
    Participant

    try nav menu roles plugin, it will hide the login or register menu items if the user is logged in.

    #304950
    Venutius
    Moderator

    If you go to Appearance/Menus in WP Admin, you should be able to edit the menu and delete those links. While you are there, click on Page Options on the top right of the page and make sure BuddyPress is checked.

    Note: it looks like you have multiple menus so you will have to select the correct menu to edit.

    Then you should see the BuddyPress menu links meta-box and you will see there’s a login link you can add to the menu. That should sort out your BuddyPress login, same with Register.

    I’ve got a site buddyuser dot com, I’ve created a beginners introduction to BuddyPress, you might want to take a look at that.

    It’s possible to hide menu links that you don’t want the general public to know about. There’s a few plugins that do this but one I use is https://wordpress.org/plugins/nav-menu-roles/ this adds a handy checkbox to allow you to stipulate who can see that menu item.

    ecogpast
    Participant

    My proto website is at https://ecohydraulics.org/. I am running WordPress 5.1 and I use Easy Hide Login 1.0.6. I have installed BuddyPress 4.2 and set it up as instructed. The problem I need help with is that the “Login” top menu item that is added by BuddyPress wants to go to the wp-login.php, but this is expressly blocked by the plugin Easy Hide Login. I need to set the Login hypertext URL to go to the slug I have specified in the Easy Hide Login plugin. Please advise me how to do that or where I can find the answer.

    I have searched the BuddyPress documentation and support forum extensively as well as the internet for MANY hours. I have not found an explicit instruction how to do this, but I get the hint that I probably have to edit one or more .php files. I just don’t want to do that without being sure what to do, so it is not pure trial and error. Ideally, I would just specify the slug somewhere, but I’ll do whatever is advised. I apologize in advance if this is already answered somewhere, so I will gladly take a link to such a place, but my searches have not yielded the answer, so I am asking for help now after many days of struggle. Thanks.

    superbohne
    Participant

    Hello 🙂

    Perhaps its a simple question, but i´m unable to cope it:

    How to change the URL of wp-login.php (for a custom one) within the class-bp-core-login-widget.php, without touching the file itself.

    I think it is Line 107:

    <?php echo esc_url( site_url( ‘wp-login.php’, ‘login_post’ ) ); ?>

    An idea has been to hide the form by css and hook it with a new id. But when i try this, my site broke down. But, is it the right way to solve it?

    Looking forward for your nice support 🙂

    Thank u!

    #280377

    In reply to: Google Authenticator

    thedark52
    Participant

    I have another problem:

    I noticed that the login page keeps asking for the Google Auth verification code even if it is disabled by the settings (It still allows me to access the account without having to fill in the field). Is not there a way to hide it if Google Auth is off for that account?

    Venutius
    Moderator

    What plugin did you use to add the option to only display a menu item to logged in users? Seems like that is what is not functioning. hiding the activity link by hiding the menu item does not hide the activity page from non logged in users, if they know the url they will still be able to view it, to prevent that you should explore the security options available to you. There a number of privacy plugins for bp with a range of features, is it only the Activity page you want to hide?

    BuddyPress uses the default WordPress login page, there’s a number of customisers for this, for example: https://wordpress.org/plugins/admin-custom-login/

    #269758
    inderlovy
    Participant

    Which is best plugin to show particular pages after login from buddypress and hide rest of the pages?

    #265687
    threwthenevr
    Participant

    Tyvm for the reply.

    It seems I get redirected to a 404 page when the resend activation email link is clicked.
    Here’s the path that leads to it.
    /wp-login.php?action=bp-resend-activation&id=3586&_wpnonce=1fc8482a5b
    Most likely a plugin conflict since I hide wp pages from the public.

    I’m trying to do something similar like the code below.
    class=”bp_registration_needs_activation”>Resend Activation Email

    lalitavalon
    Participant

    I useed the same website with diffrent link on local host it is working fine there is no issue.
    But I actaully try to set up the same website again on local differnt link and try to install the buddypress plugin getting errors and not able to uninstall.
    Still if you want some information please find below:

    Theme -custom theme
    php version 7.0.9
    Install type single
    List of plugins:

    Advanced Custom Fields
    Advanced Custom Fields: Date and Time Picker
    Advanced Custom Fields: Repeater Field
    All In One SEO Pack

    Breadcrumb NavXT

    BuddyPress
    Captcha

    Contact Form 7
    Dephue Data Design Hide Update Notifications – Developer Edition
    Limit Login Attempts
    Lockdown WP Admin
    Login With Ajax
    Restrict Categories
    Visualizer: Charts and Graphs
    WP-Mail-SMTP
    WPFront User Role Editor

    Host Type: Local

    #263260
    shanebp
    Moderator

    It’s difficult to help you if we have to guess…

    >The BuddyPress Login widget that I am using

    Is it the one that comes with BP ? Or from some other plugin?

    Url? Screenshot?

    Right click on the register button and use your browser’s tools to find the css element for that button.
    Then hide the button using the same approach as used in the solution link above.

    #263151
    #261888

    In reply to: Newbie questions

    mohamedouqas
    Participant

    if you want to change the labels for you theme you can go to your theme directory and search for these words and replace them .
    go to wordpress\wp-content\themes\yourtheme
    what i do is search for each word like this ; i use CMD in that directory with this command findstr /s /n /i /p “keyword” * and it’s gonna display all files that contains that word and you can change it manually by accessing those files
    2. to make user login in a custom page use ultimate member plugin there are a lot more plugin for this you just need to search for them
    3. if you want to hide some activities all i can say is you gonna need to get your hands dirty with the code , but if there might be a way i just don’t know it

    #261098
    Venutius
    Moderator

    Trying to get a theme to support BP can be a bit of a challenge, if it were me I’d start with adding the register and login links in the menu then hide them for logged in users to keep it tidy, you can do that using WPFront User Role Editor. I run a few sites with theme’s that don’t support BP, it is possible but often you find yourself having to make css changes in order to display parts of the site correctly.

    I’ve set up a site, which is about setting up BuddyPress, you might want to take a look, it might give you some ideas. http://buddyuser.com

    #258619
    jowyds
    Participant

    hello danbp, thanks for your reply.

    I have tried the suggestion to use define('WP_DEBUG', true); in conjuction with define('WP_DEBUG_LOG', true); with a twenty theme. It works fine when buddypress is not activated. No error or logfile whatsover. Then after I tried to activate buddypress, and test again. The media library still cannot load out. I have tried to check for error log and I can’t seems to find any.

    Nevertheless I found the culprit can be my bp-custom.php in which I put it just under /wp-content/plugins/[here]

    if I remove the file and everything seems works fine again with buddypress activated.

    This is the content for my bp-custom.php

    
    <?php
    // hacks and mods will go here
    
    /**
     * Make a site Private, works with/Without BuddyPress
     * 
     * @author sbrajesh
     * @global string $pagenow
     * 
     */
     
     /*
    function buddydev_private_site() {
        
        //first exclude the wp-login.php
        //register
        //activate
        global $pagenow;
        
        //do not restrict logged in users
        if( is_user_logged_in() ) {
            return ;
        }
        //if we are here, the user is not logged in, so let us check for exclusion
        //we selectively exclude pages from the list
        
        //are we on login page?
        if( $pagenow == 'wp-login.php' ) {
            return ;
        }
        
        //let us exclude the home page
        if( is_front_page() ) {
            return ;
        }
        
        $exclude_pages = array( 'register', 'activate', 'excelportfolio' );//add the slugs here
        
        //is it one of the excluded pages, if yes, we just return and don't care
        if( is_page( $exclude_pages ) ) {
            return ;
        }
        
        $redirect_url = wp_login_url( site_url('/') );//get login url,
        
        wp_safe_redirect( $redirect_url );
        exit( 0 );
    }
    
    */
     
    //add_action( 'template_redirect', 'buddydev_private_site', 0 );
    
    ?>
    
    <style type="text/css">
    
    #wp-admin-bar-bp-login {
    	display:none; /* JOWY: hide login link for buddypress. */
    }
    
    #wp-admin-bar-bp-register {
    	display:none; /* JOWY: hide register link for buddypress. */
    }
    
    #adminloginform {
    	color: #ffffff; /* JOWY: text color on form. */
    }
    
    #wpadminbar {
    	opacity: 0.7; /* JOWY: Opacity for wpadminbar. */
    }
    
    </style>
    

    what can possible went wrong?

    #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

    danbp
    Participant

    Give this a try: (add to bp-custom.php) 1) & 2):

    function bpfr_hide_tabs() {
    global $bp;
    
    	if ( bp_is_user() && !is_super_admin() ) {
    		bp_core_remove_nav_item( 'notifications' );
    		bp_core_remove_subnav_item( 'messages', 'compose' );
    	}
    	
    }
    add_action( 'bp_setup_nav', 'bpfr_hide_tabs', 15 );

    3) With BP and xprofile component activated, a user doesn’t need access to WP dashboard. He can change his profile credentials from front-end.
    Easiest way would be to use this plugin.

    Retrieving them the possibility to change their email is anyway not a good idea. What happen when a user changed from yahoo to gmail, but can’t login because he lost his password ? Where will the new pwd be sent ?

    Perhaps you have also to remove this from the BP usermenu on toolbar ?
    Here’s how you can do it:

    function admin_bar_remove_this(){
    global $wp_admin_bar;
    	$wp_admin_bar->remove_node('my-account-messages-compose');
    }
    add_action('wp_before_admin_bar_render','admin_bar_remove_this');
    #247689
    Antipole
    Participant

    I am now using the plugin Dynamic Widgets to hide the login widget on the register page.

    This is not as good as hiding the sidebar, but does avoid the problem.

    #244254
    djsteveb
    Participant

    @nithin270 – any changes you make for search spiders is going to take weeks (at minimum) before they are reflected in the search results.

    I suggest doing some robots.txt additions (will list mine below) – however realize that long ago google made a decisions that even if your robots.txt says to disallow crawling something, if another page on the web links to your subpage that is blocked by robots.txt, it will still show the url in the search results – but have a description something like “this sites robots.txt prevents google from displaying description of this result”.

    There has been debate about that decision, but it is what it is.

    The only way to really prevent a page showing up in results is to hide it behind a password (like htpasswd) – however google does normally remove results if that page (or header info of images) includes “noindex” in the head of the page (there is a tricky way to add this to images – it was pointed out to me in the google webmaster forums)

    given that bp pages like members are kind of pseudo pages, using something like yoast (currently as far as I know) – will not give you an option to add noindex, nofollow to your member pages..

    you may be able to modify the code I got from wpmudev that checks “if is member page, then add meta description as…” –
    ( http://premium.wpmudev.org/forums/topic/bp-meta-tite-description-for-groups-and-members-pages#post-806736 )
    to… also check “if is members page” – then add “meta name=”robots” content “noindex, nofollow”..
    (something like that)

    that should remove your members pages next time google crawls your site and the crawlers send the info back to the main algo/index..

    I think there is a way to log into google webmaster tools if you have claimed /verified your site and click on urls to ask the big G to remove them as well. (I have not messed with that stuff in a while )

    I also suggest adding a robots.txt file similar to this:

    Disallow: */activity/p/*
    Disallow: /docs/
    Disallow: *send-invites*
    Disallow: */groups/*members*
    Disallow: */groups/*media*
    Disallow: *widget-title*
    Disallow: *members/*activity*
    Disallow: *members/*notifications*
    Disallow: *members/*friends*
    Disallow: *members/*groups*
    Disallow: *members/*docs*
    Disallow: *members/*media*
    Disallow: *acpage*
    Disallow: *messages*
    Disallow: *friends*
    Disallow: *settings*
    Disallow: /*/comment-page*
    Disallow: *register*
    Disallow: *login*
    Disallow: *profile*
    Disallow: *admin*
    Disallow: *includes*
    Disallow: *content*

    to prevent some other quirky indexing issues with bp.

    If your member profile stuff is sacred, then I would hunt the forums here for what others have been messing with that prevents profile info from being displayed if a user is not logged in… as there are plenty of indexing spiders that will not follow the robots.txt or robots index rules in <head> – in fact some specifically look for these things and purposely crawl and scrape stuff that is blocked –

    Disclaimer: I am not an expert, not a real coder. Research these things with other sources, your situation may vary.

    #243816
    SJS719
    Participant

    For example, I have tried the following code and tried to call it onClick but it either doesn’t register or throws an error:

    function add_featured_activity(){
    
    GLOBAL $wpdb;
    $user_id = get_current_user_id();
    $user_info = get_userdata( $user_id );
    
    $button_action = "<a href='".site_url()."/members/".$user_info->user_login."'></a>";
    
    // arguments to pass to the bp_activity_add() function
    $args = array(
    'action'            => $button_action,                     // The activity action - e.g. "Jon Doe posted an update"
    'component'         => 'profile',                  // The name/ID of the component e.g. groups, profile, mycomponent
    'type'              => 'activity_update',                  // The activity type e.g. activity_update, profile_updated
    'user_id'           => $user_id,  // Optional: The user to record the activity for, can be false if this activity is not for a user.
    'item_id'           => $user_id,                  // Optional: The ID of the specific item being recorded, e.g. a blog_id
    'recorded_time'     => bp_core_current_time(), // The GMT time that this activity was recorded
    'hide_sitewide'     => 0,                  // Should this be hidden on the sitewide activity stream?
    'is_spam'           => 0,                  // Is this activity item to be marked as spam?
    );
    
    $add_activity = bp_activity_add($args);
    
    // Update the members's last activity
    update_last_activity( $user_id );
    
    return true;
    }  
    add_action('bp_activity_add', 'add_featured_activity' );
    zoewsaldana
    Participant

    I attempted to use another similar solution I discovered on a recent thread (not 4 years old this time :-p) and still no luck. Here is that piece combined with the RSS backdoor protection:


    <?php
    function bp_guest_redirect( $name ) {

    if( ! is_user_logged_in() ) {

    if ( bp_is_activity_component() || bp_is_groups_component() || bp_is_blogs_component() || bp_is_directory() || bp_is_user() || bp_is_members_component() )
    wp_redirect( get_option('siteurl') . '/wp-login.php/' );

    }

    }
    add_action( 'get_header', 'bp_guest_redirect', 1, 1 );

    function bpfr_hide_rss_feed_to_nonreg_visitor() {

    if ( !is_user_logged_in() ) {

    remove_action( 'bp_actions', 'bp_activity_action_sitewide_feed' );
    remove_action( 'bp_actions', 'bp_activity_action_personal_feed' );
    remove_action( 'bp_actions', 'bp_activity_action_friends_feed' );
    remove_action( 'bp_actions', 'bp_activity_action_my_groups_feed' );
    remove_action( 'bp_actions', 'bp_activity_action_mentions_feed' );
    remove_action( 'bp_actions', 'bp_activity_action_favorites_feed' );
    remove_action( 'groups_action_group_feed', 'groups_action_group_feed' );
    }
    }
    add_action('init', 'bpfr_hide_rss_feed_to_nonreg_visitor');

    ?>

    #243538
    coffeywebdev
    Participant

    Take a look at this code, I think it may be helpful for you…

    I created a function vp_add_group_activity_comments() that hooks to the ‘post_comment’ action, so when a user posts a comment an activity stream item is created and added to their group’s feed.. (on my site users can only be in one group at a time)

    It’s all about what you set for the $args array….

    
    function vp_add_group_activity_comments($comment_id){
    
    $comment = get_comment( $comment_id );
    GLOBAL $wpdb;
    $user_id = get_current_user_id();
    $user_info = get_userdata( $user_id );
    
    $current_user_group_id = $wpdb->get_var("SELECT group_id FROM ".$wpdb->prefix."bp_groups_members WHERE user_id = '".(int)$user_id."'");
    
    $comment_action = "<a href='".site_url()."/members/".$user_info->user_login."'>".$user_info->first_name." ".$user_info->last_name."</a> posted a comment on <a href='".get_permalink($comment->comment_post_ID )."'>".get_the_title($comment->comment_post_ID)."</a>";
    
    // arguments to pass to the bp_activity_add() function
    $args = array(
    'action'            => $comment_action,                     // The activity action - e.g. "Jon Doe posted an update"
    'content'           => $comment->comment_content,                     // Optional: The content of the activity item e.g. "BuddyPress is awesome guys!"
    'component'         => 'groups',                  // The name/ID of the component e.g. groups, profile, mycomponent
    'type'              => 'activity_update',                  // The activity type e.g. activity_update, profile_updated
    'primary_link'      => get_permalink($comment->comment_post_ID ),                     // Optional: The primary URL for this item in RSS feeds (defaults to activity permalink)
    'user_id'           => $user_id,  // Optional: The user to record the activity for, can be false if this activity is not for a user.
    'item_id'           => $current_user_group_id,                  // Optional: The ID of the specific item being recorded, e.g. a blog_id
    'secondary_item_id' => $comment->comment_ID,                  // Optional: A second ID used to further filter e.g. a comment_id
    'recorded_time'     => bp_core_current_time(), // The GMT time that this activity was recorded
    'hide_sitewide'     => 0,                  // Should this be hidden on the sitewide activity stream?
    'is_spam'           => 0,                  // Is this activity item to be marked as spam?
    );
    
    $add_activity = bp_activity_add($args);
    
    // Update the group's last activity
    groups_update_last_activity( $current_user_group_id );
    
    return true;
    }  
    add_action('comment_post', 'vp_add_group_activity_comments' );
    
    #243537
    coffeywebdev
    Participant

    Take a look at the code below to see how I use the post_comment action to hook my function vp_add_group_activity_comments(), which creates an activity stream item when a user posts a comment and adds it to their group’s activity stream… This is just what we are doing for our site, but if you look at the code you should be able to figure out how to do it for your site….

    
    function vp_add_group_activity_comments($comment_id){
    
    $comment = get_comment( $comment_id );
    GLOBAL $wpdb;
    $user_id = get_current_user_id();
    $user_info = get_userdata( $user_id );
    
    $current_user_group_id = $wpdb->get_var("SELECT group_id FROM ".$wpdb->prefix."bp_groups_members WHERE user_id = '".(int)$user_id."'");
    
    $comment_action = "<a href='".site_url()."/members/".$user_info->user_login."'>".$user_info->first_name." ".$user_info->last_name."</a> posted a comment on <a href='".get_permalink($comment->comment_post_ID )."'>".get_the_title($comment->comment_post_ID)."</a>";
    
    // arguments to pass to the bp_activity_add() function
    $args = array(
    'action'            => $comment_action,                     // The activity action - e.g. "Jon Doe posted an update"
    'content'           => $comment->comment_content,                     // Optional: The content of the activity item e.g. "BuddyPress is awesome guys!"
    'component'         => 'groups',                  // The name/ID of the component e.g. groups, profile, mycomponent
    'type'              => 'activity_update',                  // The activity type e.g. activity_update, profile_updated
    'primary_link'      => get_permalink($comment->comment_post_ID ),                     // Optional: The primary URL for this item in RSS feeds (defaults to activity permalink)
    'user_id'           => $user_id,  // Optional: The user to record the activity for, can be false if this activity is not for a user.
    'item_id'           => $current_user_group_id,                  // Optional: The ID of the specific item being recorded, e.g. a blog_id
    'secondary_item_id' => $comment->comment_ID,                  // Optional: A second ID used to further filter e.g. a comment_id
    'recorded_time'     => bp_core_current_time(), // The GMT time that this activity was recorded
    'hide_sitewide'     => 0,                  // Should this be hidden on the sitewide activity stream?
    'is_spam'           => 0,                  // Is this activity item to be marked as spam?
    );
    
    $add_activity = bp_activity_add($args);
    
    // Update the group's last activity
    groups_update_last_activity( $current_user_group_id );
    
    return true;
    }  
    add_action('comment_post', 'vp_add_group_activity_comments' );
    
Viewing 25 results - 26 through 50 (of 125 total)
Skip to toolbar