Forum Replies Created
-
Actually forget this- It seems to be working ok now without any tweaks- strange, perhaps it was my theme.
I found this code from http://www.tommywhite.com/resources/buddypress/change-buddypress-groups-starting-tab after some Google searching- does anyone know if this is a good way of doing this in the latest version of BuddyPress please?
/* Redirect for group home tab */ function redirect_group_home() { global $bp; $path = clean_url( $_SERVER['REQUEST_URI'] ); $path = apply_filters( 'bp_uri', $path ); if (bp_is_group_home() && strpos( $path, $bp->bp_options_nav[$bp->groups->current_group->slug]['home']['slug'] ) === false ) { if ($bp->groups->current_group->is_user_member || $bp->groups->current_group->status == 'public') { bp_core_redirect( $path . 'forum/' ); } } } function move_group_activity_tab() { global $bp; if (isset($bp->groups->current_group->slug) && $bp->groups->current_group->slug == $bp->current_item) { unset($bp->bp_options_nav[$bp->groups->current_group->slug]['home']); } } //The following line redirects to a group forum page rather than a group activity page add_action('bp_init', 'redirect_group_home' ); //The following line removes the group activity tab entirely //add_action('bp_init', 'move_group_activity_tab');
Have you tried the WangGuard plugin? It’s supposed to be good stopping spam registrations.
You are right the css override does not work sorry. I just remembered how I did this sorry, try this function to turn off mentions:
// remove buddypress mentions add_filter( 'bp_activity_do_mentions', '__return_false' );
Try Adding it to your theme functions file or a custom plugin.
Add a css style rule to your header.php within the <head> tags
I think it’s this to get rid of the mentions on the profile page:
<style type="text/css"> div#post-mention { display : none; } span.user-nicename { display : none; } </style>
The plugin author is this guy by the way: he wrote some plugins on wordpress.org including BuddyPress Groups Extras which is how I found him. Slava UA.
The plugin author say’s it does:
schedule forum topics in any group
schedule site-wide notices to be published
schedule group members unbanning
Everything at a time you specify!That gives you a unique ability to:
plan the traffic on your site
promote something at a certain time
notify users about any group events/news on timeI was thinking it might be useful in conjunction with BuddyPress Group Email Subscription as a task manager or event scheduler for members- but not sure really. Just thought it was interesting and letting people know.
You could try Justin Tadlocks plugin Members
I did a search for User Submitted Gallery and found this at Pippins Plugins. User Submitted Image Gallery.
Or you could use Perishable Press’s User Submitted Posts (posts and images) and then put the images in a gallery on a page.
I saw this one a while back and it seemed to work well whwn I tested it last. It might need some tweaking regarding the css though as I remember. BuddyPress Portfolio
But it would mean each user had their own gallery.
A page can be created I think showing all pictures.There is this plugin too for job board creation. WP Job Manager by Mike Jolley
Actually that Private BP Pages plugin looks pretty much ideal for what you want @mrbirl.
You could probably do it with css if you find the class that controls the display of the element you want to hide.
I developed a theme to do it. I’ve submitted it to the Depository but still waiting for response.
I’ve been developing this and submitted it to the depository, but so far no one has looked at it yet so it will be a while. Updates about this are here: Updates and news
I mis-read your question sorry. I found a solution which lets users only view other users profiles if they are a friend of that user. The admin can see all members regardless of them being his/her friend.
I put the function in my functions.php:
// BuddyPress create conditional if friend function flatportal_bp_is_friend() { global $bp; if (friends_check_friendship( bp_loggedin_user_id(), bp_displayed_user_id() ) ) return true; return false; }
and created a custom header file with this at the top:
// Global $bp variable holds all of our info
global $bp; // The user ID of the currently logged in user $current_user_id = (int) trim($bp->loggedin_user->id); // The author that we are currently viewing $author_id = (int) trim($bp->displayed_user->id); if ($current_user_id !== $author_id && !current_user_can('delete_others_pages') && !flatportal_bp_is_friend() ) { wp_redirect( home_url() ); exit(); }
Then in header php (using multiple headers)
elseif ( bp_is_user()): get_header('restrict-profile');
If they are not a friend they will be redirected to the home page or wherever you want them. I suppose you could re-direct them to a “you are not a friend of this user” page if you wanted.
Thanks for your feedback everyone.
@hnla Yes you are right, I would be responsible to support it as a premium theme. So I will have to submit it to the directory and just spend a bit more time developing it I guess.
@ubernaut thanks I hope it would be useful to people.
@henrywright I have been thinking the same thing.I will remove it from my website and develop it to go into the WordPress depository- hopefully it will one day- will take a while though unfortunately because I’m busy doing an art course now.
Chris
Anyone interested in this at all?
I use a WordPress theme I made to accomplish this. I’ve been asking on the forums if anyone wants me to release it for free but I’ve had no response/ interest from anyone yet. https://buddypress.org/support/topic/flat-portal-client-area-child-theme-of-twenty-thirteen/
It has all the functionality you want.
I made it so that only admin can see all the users and only friends can see each others profiles if not admin.
I made a video for the theme here: you tube flat portal WordPress theme.
http://youtu.be/yGfkvnv1N-Y
The theme is now available as a digital download in my shop for $25.
Flat Portal WordPress Theme.Thanks I have done-earlier today it occurred to me to do just that 🙂
My portal theme only lets admin / editor users view all members profiles or other users view other profiles if they are friends. If you want more info on how I did this let me know.
Thanks @shanebp 🙂
It basically works in this way- I have a header file with multiple headers for different page templates or conditions such as is_singular() or is_page.. e.g
if (is_front_page() || is_404() || is_page_template('public-subpages.php') || is_page_template('public.php') || is_page_template('public-full.php') || is_page_template('gallery-public.php') || is_singular('download') || bp_is_activation_page() || bp_is_register_page()) : get_header('public'); elseif (bp_is_profile_component() || bp_is_settings_component() ): get_header('restrict-profile'); else : get_header('private');
The pages are all set to private by default and depend on setting them to different page templates if you want them public or a different style.
The private pages have a header-private that re-directs non-logged in users to the log in page (which is created on theme activation and set to the log in page template)So the public page templates have a header-public without any redirect for non-logged in users.
There are also page templates that go with a header-restrict for restricting pages to editor / admin only with the conditional redirect
elseif (bp_is_current_component( 'members' ) || is_page_template('archives.php') || is_page_template('full-restrict.php') || is_search() || is_tag() || is_date() ) : get_header('restrict');
The different header files have re-directs at the top except for the public one: e.g header-restrict has:
if(!current_user_can('delete_others_pages')) { wp_redirect( home_url() ); exit; }
at the top.It’s been my pet project for a few years but to be honest you are right I’ve not had much luck promoting it and there are lots of plugins that do similar things and lots of themes, but it’s been interesting non the less 🙂 I use it for my own little project support area and it’s basic but it works.
Thanks for checking it out.
I think the Restrict Content plugin would do this.
Hi
Thanks @modemlooper I managed to figure it out after trying a few things and your conditional helped me deduce it.
if ( bp_is_current_component(‘activity’) && !bp_is_user_activity() ) {
worked for me.
(redirect if on main activity page but not own activity)