Search Results for 'Activity Feed for members only'
-
AuthorSearch Results
-
November 13, 2010 at 4:11 pm #98166
In reply to: [New Plugin]External Member Blogs
Bowe
ParticipantMaybe @MrMaz can tell you something about the performance of the plugin in more detail, but the feeds are cached and only checked once an hour or on a direct profile visit. So far the plugin has been performing great, and I have not noticed any performance issues with it. It is a lot less heavy on resources as a dedicated RSS feed importer plugin for WordPress, that’s for sure.
You do have to remember that the posts are not stored anywhere other then the activity stream itself. You can filter the stream for external blog posts but it does not save it as a regular post or anything. Excluding them from the Stream would mean that the entries are not stored anywhere basically making the plugin useless

If you feature requests just leave a comment on the blogpost on BP-Tricks itself so we can keep track of them!
September 24, 2010 at 2:59 pm #93314Bowe
Participant“Spam!!!”
*sees the topic is about his own theme*
“Absolutely NO problem with this!”
Thanks for creating this topic Ross, I’m really glad you like the theme I’m putting up for sale. And Boone thanks for promoting my already outdated video as well
My intention with the new BP-Tricks site is not to only sell a premium theme, and offer some kind of subscription service (I’m not a big fan of subscription models for Themes).BP-Tricks will hopefully become a resource for great BuddyPress tips and tricks. Selling the theme is just a great way for me to keep BP-Tricks running, earn some money and hopefully improve the quality of BuddyPress Child Themes.. The theme is GPL and cool stuff that I add to it will all be shared in the form of Tutorials on BP-Tricks. The actual design elements and the support are what people are paying for (similar as WooThemes does this for example).
Everyone can submit code/design/inspirational Tricks through a form or the backend, and by doing so you’ll earn Awards ( @DJPaul his Achievement Plugin FTW!) and badges awarded by me. The best new trick each month earns a nice price (currently a Free theme, but I’ll try to get some sponsors) and they get listed on the frontpage in Widget of Fame

Besides that the Activity Stream is purely meant to be a source of information displaying ONLY new Tricks, external Tricks (BP-Links from @MrMaz) and external member blogs from our members (if you blog about BuddyPress or anything related to it) you can add your RSS feed to your profile and people who follow you get your updates in their stream. This plugin will be released to the community when the site launches next week.
There’s also a customized search feature which only searches the BuddyPress network (BP.org, BP-Tricks, WPMU.org, Etivite.com, BuddyDev.com, ShabuShabu.eu etc) and a bunch of other stuff which I probably forgot to tell.
All the site features remain free, and also the site will be Ad free for as long as I earn enough to keep it running without loosing money on it.
I hope this makes my intentions clear, and that it will become a place where you can enjoy great BP Tricks from not only me, but from anyone, without getting the feeling that I’m out for someone’s money.. because that is certainly not my intention
If you want to have access to the site before launch to look around and submit some Tricks for the community just let me know, and I’ll make sure you’ll have access and be a part of the cool kids
September 1, 2010 at 5:03 am #91189PJ
ParticipantThank you very much @hnla and @rogercoathup
August 30, 2010 at 12:17 pm #90952In reply to: aggregate activity stream from public groups
Roger Coathup
Participantwhere to make changes, really depends on your theme setup.
If you want a theme similar to the default, but with your own enhancements (such as the ones in this thread), you are best to create a child theme, and make the changes in there. You’ll be editing the activity-loop.php and entry.php files in your child theme.
Have a look in the documentation for the article on creating child themes.
I don’t know whether there are many examples on line of alternative activity loops. I posted one example earlier today of some amends we’d done to entry.php to access and enhance the activity template tags: https://buddypress.org/community/groups/requests-feedback/forum/topic/omit-time-stamps-from-activityfeed-so-only-date-stamps-show
And here’s an example of how we do a custom blog loop from a site I’m working on at the moment:
`
<?php $args = array (
‘action’ => ‘new_blog_post’,
‘max’ => 20); ?>-
<?php $count=0;
while (bp_activities() && ($count <
) : bp_the_activity(); ?>
<?php $blog_id = bp_get_activity_item_id();
if ((int)$blog_id == 1) continue; ?>
<li class="<?php if ($count “>
`
August 30, 2010 at 9:04 am #90924Roger Coathup
ParticipantAugust 13, 2010 at 11:27 pm #89028In reply to: Group Activity Feed
amahesh
MemberHello @r-a-y…yes all I want to do is filter the main group home activity of every group so that only updates from the admin show, not everyone and not forum posts…I looked over the link and was confused as to what to do
Thanks for taking so much time to help me out but if you could please just let me know where the AJAX $query_string is and what exactly I need to modify it I would greatly greatly appreciate it
Thanks
August 13, 2010 at 10:34 am #88962In reply to: BuddyPress Tweet Button plugin
nit3watch
Participant“nice plugin, only issue I see is that it tweets the URL of the page you are on rather than the item.”
@modemlooper This would work nice for a tweeting a group though ( and adding “facebook Recommend” ) so that all the ‘feed things/social stuff pertaining to the group’ are in a similar place.

Im trying to get the tweet button to be between the rss feed class and the activity-filter-select div, as in the image ( using
add_action('bp_before_group_body', 'bp_tweet_button_activity_filter');) its inserting it above the subnav div, ( needs to be inside subnav.. ) but I can figure out how to get it between the two. Once I can position it correctly I’ll add the Facebook one too. Maybe can be a seperate, spin-off of your plug-in?Maybe if someone knows where to find the subnav ( for groups ) code I can have a look and get it sorted.
Edit: Iv’e created a topic not to hi-jack the thread: https://buddypress.org/community/groups/creating-extending/forum/topic/inside-group-subnav/
August 10, 2010 at 7:07 pm #88666In reply to: Group Activity Feed
r-a-y
Keymaster@amahesh –
In your theme’s functions.php, make sure your code looks something like this:
http://pastebin.com/Pn1jFXG5Read the comments in the code.
Then In your duplicate of bp-activity-group-feed.php, you need to change:
if ( bp_has_activities( 'object=' . $bp->groups->id . '&primary_id=' . $bp->groups->current_group->id . '&max=50&display_comments=threaded' ) ) :to
if ( bp_has_activities( 'object=' . $bp->groups->id . '&primary_id=' . $bp->groups->current_group->id . '&secondary_item_id=' . $bp->groups->current_group->creator_id . 'max=50&display_comments=threaded' ) ) :This will filter the group activity feed so only updates from the creator of the group will be listed. If you have multiple admins, you’ll have to find a way to append their IDs (comma-delimited) to the end of the “secondary_item_id” parameter.
August 8, 2010 at 1:37 am #88399amahesh
MemberI’ve spent a few hours playing around with BP based on info in this thread but am having some trouble. Does anyone know how to make it so that only updates from the group admin appear in the “Activity” feed?
Thanks
July 18, 2010 at 4:52 am #86053In reply to: How to make a private community?
Pisanojm
ParticipantOk, spending evern more time on this… I went back to the idea of using @r-a-y ‘s modified regestered-users-only-plugin… Now it is 95% the way I want except the homepage is not re-directing to the landing page… every other page does this…. probably has something to do with the home page being the activity stream??? I’m copying the key changes I have done to the plugin below:
// This is a base array of pages that will be EXCLUDED from being blocked
if ($bp&&($bp->current_component == BP_REGISTER_SLUG ))//buddypress
return;if ( bp_is_register_page() || bp_is_activation_page() || is_feed() ||is_page(‘landing’) ) //buddypress)
return;$this->exclusions = array(
‘wp-login.php’,
‘wp-signup.php’,
‘wp-register.php’,
‘wp-activate.php’,
‘wp-cron.php’, // Just incase
‘wp-trackback.php’,
‘wp-app.php’,
‘xmlrpc.php’,
);// If the current script name is in the exclusion list, abort
if ( in_array( basename($_SERVER), apply_filters( ‘registered-users-only_exclusions’, $this->exclusions) ) ) return;// Still here? Okay, then redirect to the login form
bp_core_redirect( ‘http://musicpln.org/pln-posts/landing/’ );July 16, 2010 at 11:07 pm #85948In reply to: How to make a private community?
Pisanojm
ParticipantOk, I’m still dorking around with this… the goal is to have my site a register only site. When people go to musicpln.org they will be redirected to the landing page (http://musicpln.org/landing1) which is a BP page with a login widget. I also would like the feeds to not be blocked.
This code goes in the function.php file:
function sh_walled_garden()
{
global $bp;if( bp_is_register_page() || bp_is_activation_page() ||is_feed() || is_page(‘landing1’) )
// Where landing1 is the page slug of where I would like to redirect
return;if( ! is_user_logged_in() )
bp_core_redirect( $bp->root_domain .’/’. BP_REGISTER_SLUG );
// my activity page is the “homepage” and I don’t want to show any BLOG(s)
}add_action( ‘get_header’, ‘sh_walled_garden’ );
I would like this to redirect to the landing1 reference above (which includes the login widget) The url is http://musicpln.org/landing1
I saw that you put this code in a previous reply…
Where can I put this to make it redirect to the LoginPage above? How can I tie this altogether now?
June 25, 2010 at 12:11 am #82687In reply to: Is bp dying a slow death?
peterverkooijen
Participant@Andy Peatling (“If you want a new feature or something changed, write a patch…”)
It’s not about new features. Less is more. Buddypress needs to decide what it is and what it isn’t. At the moment it’s the kitchen sink. The problem is in the architecture and underdeveloped core features like member management and privacy/security. More community activity won’t fix that, it will only build on the confusion. Only Automattic can bring clarity.
June 23, 2010 at 1:49 am #82337In reply to: Is bp dying a slow death?
Jeff Sayre
ParticipantI’ve been watching this thread since @anointed ‘s first post and have been hesitant to jump in as most community members view moderators as part of the core team. So first let me state, as has been periodically stated in the past by other members and moderators, that I am not part of the core BuddyPress team.
The core BuddyPress team currently consists of three people: @apeatling, @johnjamesjacoby, and @MrMaz. Within that core team, only @apeatling is employed by Automattic. The other two volunteer their time and energy to the project.
My association with the BuddyPress project is as a volunteer–as a moderator on the BP.org site and as a independent BP plugin author. As a non-core volunteer and moderator, I do not have any special knowledge or an inside track to the discussions of the core team. Everyone has the same access as I do via the biweekly dev chats on IRC.
So what I post is just my personal assessment. This is not a proclamation about the project. These are solely my thoughts and observations based on informal discussions with others.
Any nascent project experiences bursts of intense activity, followed by lulls as excitement wanes for awhile and people catch their breath, preparing for the anticipated next big burst of activity. This is common at least for successful projects. BuddyPress is no exception. I have observed three or four of these bursts over the past 16 months or so. That is as long as I have been involved with the project and therefore my entire BuddyPress timeline. I would imagine that the project experienced one or two noticeable bursts farther back than 15 months.
Is the recent lull a sign of a slowly dying project? Does Andy’s apparent lack of activity in the project’s bleeding-edge version (aka Trunk) point to deeper issues concerning the future health of the project?
I can of course only speculate, using my previous experience with other Open Source projects as data points. But I will not venture a guess as some might surmise my thoughts to be the truth. Instead I will address this thread’s hypothesis with a few thoughts.
First, I will address my recent lack of activity on the BP.org site. It can be attributed to five factors:
1. I took some time off to attend a family reunion
2. When the new BP.org redesign was launched, it dramatically changed the way support topics where organized and managed. From a moderator’s standpoint, I believe it became more difficult to effectively moderator the conversations.
3. I have other projects that need my time. As I do not get paid to moderator and I have earned only $325 dollars from my BuddyPress activity (in the form of plugin donations), other projects have priority.
4. I needed a break from the community. Before the site’s redesign and relaunch, I was the moderator with the most activity and highest post count. That past history was lost (at least is not reported anymore) with the new design as the old external bbPress forum install gave way to the new internal, group-based bbPress forum install.
5. I’ve been working on the BuddyPress Privacy Component.
Now, on to more pertinent thoughts:
* I believe that the official project site of any Open Source project needs to have a strong showing (presence) by the core team members. It demonstrates the team’s commitment to the project and community. As it currently stands, there is little active involvement on BP.org by the core team members as evidenced by their forum post count.
* The community currently has a single person as project gatekeeper. Andy has ultimate control over the BP.org site, Trac, and the overall project codebase. It is difficult for an Open Source project to thrive in the long term when that is the case. Of course, this is Andy’s creation and he was hired by Automattic to continue the build out of BuddyPress. I’m not sure whether Automattic now owns the copyright to BuddyPress or in fact who owns the copyright. But, keep in mind, that BuddyPress is another Automattic project and Automattic is a for-profit corporation that has graciously provided Andy’s services to keep the project going. BuddyPress is not an Open Source project that is created by, run by, and owned by the community. It is not an Open Source project managed by a not-for-profit entity. What does this mean? Ultimately, it is up to Automattic, and not the community, to decide what happens to BuddyPress and the BuddyPress brand.
* BuddyPress needs to have more active, core developers with commit access.
* Andy needs to communicate with the community on a regular basis, responding to inquires in a more timely manner. Of course Andy deserves rest and time off from the project, especially since over the past two years (or more) he has put in yeoman’s duty. But proactive communication from him would go a long way as to keeping the community informed. It may help bring back the excitement that once seemed to permeate the overall community.
* Finally, we all owe Andy a great deal of gratitude for creating a wonderful alternative to the current social networking platform morass. He is responsible for the vast majority of the codebase and has been very open to feedback and new ideas. If he chooses to move on to another project or company (and I am not saying that is the case as I have absolutely zero inside knowledge), we should simply wish him good luck and thank him for his hard work on BuddyPress.
I will end with a link to an article I wrote on my website six months ago pertaining to project management and leadership. Whereas it is not an article about Open Source projects, there are a few key points that apply to projects of any type.
June 21, 2010 at 7:43 pm #82175In reply to: users complaining
gregfielding
Participant“Anyway, BuddyPress just seems a little confused when it comes to it’s ideas around Friends, Followers and Members. It feels like an odd mix of Twitter (wide open) and Facebook (walled off).”
I’ve had an active BP Site of about 400 real-world members for 6+ months or so now and I can report back that very few people are actually using the BP functions. It’s not clear exactly what they are supposed to do and how it would benefit them. Twitter is intuitive, Facebook is semi-intuitive. BP, not so much.
Considering that wordpress is first and foremost a blogging platform, core BP should do three things well:1) Enhance members’ blogs (vs. an mu-only environment) and 2) Encourage interaction between members, and 3) Make members and their activities easy to find. BP is struggling with these basic objectives.
Regarding blogs, it is intuitive that members should be able to post from the front-end (One Quick Post is nearly ready). It is critical that sub-blog posts would show up in search results, but they don’t. And, it’s intuitive that you should be able to easily find relevant blogs (link tumblr), but you can’t. BP should make members’ blogs more visible, but it really doesn’t…at least not in an intuitive way. As a result, my members that joined primarily to blog (which is most of them), have little or no use for BP.
SOLUTIONS: Make sub-blog posts show up in search results. Apply xprofile fields to blogs and make them sortable. Create a front-end dashboard – I don’t think users should have to go to a dashboard with BP. Create a core-function to showcase sub-blog posts (then let the plugin devs apply slideshows, etc.)
Regarding interaction between members, BP tries a lot of things, misses the mark on some critical elements. Group-only forums are simply not intuitive. Regardless of where you stand on the issue, the fact that it’s been such a hot topic since 1.2 came out proves this point. The activity stream has merit, but is confusing for a lot of users. I have people posting “updates” who think they are posting blog posts or starting forum threads (perhaps is should be read-only?). Friending is fine, but doesn’t provide many obvious benefits beyond sorting your stream. Same with following. Groups are great, but without a solid core of features, groups don’t do much. (even here, they aren’t used much beyond forced-joining for forums). There should be an “events” element in the core.
Most importantly, it’s very difficult to keep track of things…try and find an old discussion thread on this site!…I’ve added a trac ticket to make anything (blogs, comments, members, discussions, etc.) “Followable”, allowing you to keep track of stuff. There should be a simple “Stuff I’m Following” button where you can keep organized.
SOLUTIONS: Enable a read-only option for the activity stream. Add hooks to “Follow” anything and make a “Stuff I’m Following” button. Allow forums without groups. Build Events into the core. Build more basic group functions (like group blogs, group email subscriptions, and invitations) into the core.
Lastly, I’m getting complaints and feedback about the ability for members to be found. Searchable, sortable, xprofile fields are a critial core component that is just plain absent. I run a real estate community. People intuitively-expect to be able to find a real estate expert in their geography…good luck. It’s virtually-impossible. Moreover, this is how, in more other communities, you can find people to network with. How can this basic element be missing?
SOLUTIONS: get xprofile fields working for members, groups, blogs, etc. Consider creating sub-fields as well.
If you can’t find or be found, your blog doesn’t get any extra exposure (actually it gets penalized for posts not being found in search results), friends and following provide no great benefit, and forums are too confusing to use, then it’s hard to justify joining the community.
I can’t say for sure that an MU blogging community is better with BP. I can’t say that a bbpress community is better with BP. And without these basic intuitive basic functions working right, it’s hard to make a case that BP is a great “community” platform.
I’m using it and hoping for the best, but my 400 members so far aren’t too impressed.
June 21, 2010 at 12:46 pm #82139In reply to: users complaining
David Lewis
ParticipantRe: Forum vs. Activity – I have no doubt that it is harder than is seems, but that’s not relevant to the discussion. The issues being discussed are usability. Any good and usable design begins and ends with users… not programmers.
Re: Autocomplete (my pet peeve) – Sorry, doesn’t make sense to me. I’m free to message any member I want but I’m only given help and feedback when typing in friends names. Huh? If I compose a message to a non-friend by putting their username in “Send to” – I have no indication that I’ve gotten it right until after clicking send. And even then, the feedback is not that clear. An error message could be a wrong username or something else. I know you can more easily message non-friends by visiting their profile (instead of having to remember their username and type it without error) and clicking “Send Private Message”… but that only allows for one recipient. As for the spam issue – that’s a technical issue. We’re talking about usability.
And yes… I have tried to create a plugin and I got 99% there – but I’m not a programmer and I got stuck on how to remove / override the existing autocomplete ajax functions. I asked for help here but didn’t get a response. So I had to hack the core
Oh well. And for some reason it stopped working the other day. Odd.Anyway, BuddyPress just seems a little confused when it comes to it’s ideas around Friends, Followers and Members. It feels like an odd mix of Twitter (wide open) and Facebook (walled off).
June 4, 2010 at 9:28 am #80619In reply to: Making a Networking site for Creatives
foxly
ParticipantI think it’s time you tried the latest BP Album+ beta…

https://buddypress.org/community/groups/bp-album/forum/
With regards to the concerns in your blog post, the reason the BP Album+ team appears to be making “slow” progress isn’t because we’re working on it part-time. Indeed, between our members in Canada, Italy, and our other contributors, the plugin is literally being coded 24 hours per day.
It’s because we’re designing something that runs solidly and can do what people want it to do.
Take for example group image galleries for forums. Sure, we could do a crappy job and have that added sometime in the next 8 hours. Like certain other developers. But if we’re adding that functionality, I think it needs to handle cases like:
-Users that are members of the group, but cannot upload images.
-Limiting number of photos a group member can upload based on role.
-Hiding uploaded images until an administrator approves them
-Sorting images within the group album by member that uploaded them
-Handling images contributed to the group by members that are suspended / kicked out of the group / deleted from the site
-Pushing group images to the latest images and latest group feeds, and then having them properly link back to the gallery.
-Hooks for monetization options. Only the small version of image is uploaded to group album. Full version costs money.And so on.
But you see, if you don’t plan this stuff ahead of time you can’t add a lot of those features in the future because you’ve jammed yourself into a corner. Because the permalinks to the images are in the activity streams and if you move the images you’ll break the links. We’ve spent a huge amount of effort building a plugin core that solves these problems.
Anyways, go download the beta and post some feedback in the BP Album+ forum.
Thanks!
^F^
May 13, 2010 at 1:08 pm #77985geekoftodd
MemberMy error log (I deleted info that I believe to be private.
File does not exist: public_html/robots.txt
File does not exist: public_html/feed
File does not exist: public_html/wp-content/themes/unplugged/_inc/css/reset.css, referer: http://geekoftodd.com/
File does not exist: public_html/members, referer: http://geekoftodd.com/members/
File does not exist: public_html/favicon.ico, referer: http://geekoftodd.com/
File does not exist: public_html/activity, referer: http://geekoftodd.com/
I’m guessing that I need to move some buddypress files so hostgator can find them or is this like in certain programs where I have to locate them manually for them to be recognized? Thanks any help would be great.
May 8, 2010 at 11:58 pm #77273In reply to: Here come the spammers!!!
foxly
ParticipantPART 2 – DEFEATING SPAMMERS
In the last post I covered why and how spammers attack BP installations. This post will cover how I propose to counter them.
Fast Attacks -vs- Slow Attacks
There are two basic kinds of spam attacks that get run on social networks: “fast” or “flood” attacks, and “slow” attacks.
In a fast attack, the spammer signs up for an account on the site, then sends thousands of messages as quickly as possible.
Obviously, the site admin will be deluged with complaints about the spam user and quickly delete their account …but in the hours (or days) it takes the admin to respond, hundreds and hundreds of people will read the spam messages. Then the spammer signs up for another account, and repeats the process.
In a “slow” attack, the spammer signs up for *hundreds* of accounts on the system, often over a period of many months, and only sends out spam messages one at a time …often days, weeks, or months apart.
“Slow” attacks are very difficult to counter using automation …at least without annoying legitimate users.
The best way people have come up with so far is just a “report spam” button which, when clicked, reports the member to an admin so they can investigate it and if necessary delete the account. This will be implemented as part of @francescolaffi ‘s BP content moderation plugin in a couple of months.
Unfortunately, a “report spam” button doesn’t work well against “fast” attacks.
This is because:
a) There is a delay while the admin responds to manually submitted spam reports, or,
b) When a consensus scheme is used (if X users report a member their account gets suspended), there is a delay while enough votes are accumulated to flag the member as a spammer.During that time, people are reading the spam messages and the spammer is winning.
Goals of Proposed BP Core Anti-Spam Mods
The goal of the proposed core modifications is to counter “fast” attacks by the following means:
1) To make it difficult for a spammer to create large numbers of member accounts using automated means.
2) To make it difficult for a spammer that already has a member account to use automated means to:
a) send large volumes of PM’s
b) send large numbers of friend requests
c) create large numbers of groups
d) create large numbers of group posts
e) post large numbers of comments
f) post large numbers of status updates3) To accomplish 1) and 2) without being annoying to legitimate users.
4) To make the system configurable, so it can be adapted to the needs of the site …for example: visually impaired users, or display on mobile phones.
5) To make the system “on by default” and “secure by default”
How We Can Accomplish This
1) New User Sign-up
a) Add a captcha on the new account sign-up screen.
b) If the “user” gets the captcha wrong on the first try, require *TWO* captchas to be solved before they can proceed. (If the odds of a bot solving ONE captcha with OCR are 1 in 100, the odds of the bot solving TWO captchas with OCR are 1 in 10,000. This is a technique Gmail uses.)…set X to be a random number on each installation between 3 and 7…
c) If the user gets X captchas wrong in a row, block their IP for a random amount of time (15 minutes to 2 hours). (This is what Craigslist does)
d) If the user fails X captchas *again* after being blocked, permanently ban their IP and post it to akismet.
e) If a locally banned IP tries to sign-up, don’t throw an “error page”. Completely ignore the request and don’t send anything.
f) If an akismet banned IP tries to sign up, require *TWO* captchas to be solved on the first try, and if they get X captchas wrong in a row, permanently ban their IP and repost it to akismet.
g) Add an option field to the admin menu that limits the number of accounts that can be created per IP address. By default, set it at 2.2) Existing User Sign-In
a) Use a “normal” password box on first sign-in attempt.
b) If the member gets their password wrong on the first try, require them to solve a captcha on the second try. Offer password recovery option.
c) If the member gets their password wrong on the second try, require *TWO* captchas to be solved before they can proceed. Offer password recovery option.…set X to be a random number on each installation between 3 and 7…
d) If the user gets X logins / captchas wrong in a row, block the visitor’s IP for a random amount of time (15 minutes to 2 hours).
3) Private Messages
a) Add a field to the user table that allows PM limiting to be bypassed or set to a unique value on a user-per-user basis.
b) Add three option fields on the admin menu: allow “X” messages to be sent every 24 hours, averaged over the past “Y” hours with “Z” hysteresis
…when BP is installed, randomly set X, Y, and Z to allow a daily maximum of between 18 and 24 messages, averaged over between 2 and 24 hours, +/- 3 messages.
c) If the maximum is exceeded, require the member to solve a captcha before they can send another PM.
d) If they get the first captcha wrong, require them to solve two captchas before they can send another PM.…set R to be a random number on each installation between 3 and 7…
e) If the user gets R captchas wrong in a row, block their IP for a random amount of time (15 minutes to 2 hours). (This is what Craigslist does)
f) If the user fails R captchas *again* after being blocked, permanently ban their IP and post it to akismet.
g) If a locally banned IP tries to visit the site, don’t throw an “error page”. Completely ignore the request and don’t send anything.Consider how difficult the algorithm above makes it to send automated messages. A spammer can’t just send “12 messages a day” or “1 message an hour” and avoid triggering the system. Every BP installation will have a unique combination that will cause it to trip. Yet for a “normal” user, the system will hardly ever trip, and if it does, it takes all of 5 seconds to enter a captcha and continue. And the system can be bypassed entirely for edge cases, like paid advertisers or site news.
3) Friend Requests
a) Create a config option in BuddyPress that allows the admin to remove the member’s directory with one click. Disable the member directory by “default” on new installs. In my experience, the only people that use the member’s directory (in its default state, on a socially oriented site) are Spammers, Marketers, and Competitors. There’s a reason Facebook, MySpace, LinkedIn, and Twitter do not have “global” member directories.
b) Implement same scheme as private messages.4) Group Creation
a) Add a field to the user table that allows Group limiting to be bypassed or set to a unique value on a user-per-user basis.
b) Add an option field on the admin menu that sets a maximum number of groups that can be created by a user. By default, set it at 5.5) Group Posts
a) Add a field to the user table that allows group post limiting to be bypassed or set to a unique value on a user-per-user basis.
b) Create a “whitelist” field on the admin page that allows “trusted” media sharing URL’s like YouTube, Revver, Flickr, etc to be bypassed in spam protection.
c) Create an option that automatically “scrubs” URL’s and email addresses from group posts if they are not on the whitelist. Not just “nofollow” …complete removal. This will stop 90% of abuse dead in its tracks, because most spammers are just trying to get traffic to a site or replies to an email.
d) If the system detects a URL or email address embedded in a message, and it’s not on the whitelist, require a captcha to be solved before allowing the post.
e) If they get the first captcha wrong, require them to solve two captchas before approving the post.…set R to be a random number on each installation between 3 and 7…
f) If the user gets R captchas wrong in a row, block their IP for a random amount of time (15 minutes to 2 hours).
g) If the user fails R captchas *again* after being blocked, permanently ban their IP and post it to akismet.
h) If a locally banned IP tries to visit the site, don’t throw an “error page”. Completely ignore the request and don’t send anything.i) For posts that do not contain a URL or email address, run the post through akismet. If it passes, approve the post. If it fails, require a captcha to be solved before allowing the post.
j) If they get the first captcha wrong, require them to solve two captchas before approving the post.
k) If the user gets R captchas wrong in a row, block their IP for a random amount of time (15 minutes to 2 hours).
l) If the user fails R captchas *again* after being blocked, permanently ban their IP and post it to akismet.
m) If a locally banned IP tries to visit the site, don’t throw an “error page”. Completely ignore the request and don’t send anything.6) Comments
a) Create an admin option that only allows users to comment on their *friend’s* items. Activate it by default on new BP installations.
7) Status Updates
a) Add a field to the user table that allows status update limiting to be bypassed or set to a unique value on a user-per-user basis.
b) Create a “whitelist” field on the admin page that allows “trusted” media sharing URL’s like YouTube, Revver, Flickr, etc to be bypassed in spam protection.
c) Create an option that automatically “scrubs” URL’s and email addresses from status updates if they are not on the whitelist. Not just “nofollow” …complete removal. This will stop 90% of abuse dead in its tracks, because most spammers are just trying to get traffic to a site or replies to an email.
d) If the system detects a URL or email address embedded in a message, and it’s not on the whitelist, require a captcha to be solved before allowing the activity stream post.
e) If they get the first captcha wrong, require them to solve two captchas before approving the activity stream post.…set R to be a random number on each installation between 3 and 7…
f) If the user gets R captchas wrong in a row, block their IP for a random amount of time (15 minutes to 2 hours).
g) If the user fails R captchas *again* after being blocked, permanently ban their IP and post it to akismet.
h) If a locally banned IP tries to visit the site, don’t throw an “error page”. Completely ignore the request and don’t send anything.i) For activity stream posts that do not contain a URL or email address, run the post through akismet. If it passes, approve the post. If it fails, require a captcha to be solved before allowing the post.
j) If they get the first captcha wrong, require them to solve two captchas before approving the post.
k) If the user gets R captchas wrong in a row, block their IP for a random amount of time (15 minutes to 2 hours).
l) If the user fails R captchas *again* after being blocked, permanently ban their IP and post it to akismet.
m) If a locally banned IP tries to visit the site, don’t throw an “error page”. Completely ignore the request and don’t send anything.8 ) In All Cases
a) When a member account is banned, or repeatedly triggers spam protection measures, send an alert to the site administrator.
b) Allow admin alerts to be disabled if necessary, example: DDOS attack against the site.9) CONCLUSION
While the list of modifications above may look incredibly complicated, really, it’s not.
I’d say “worst case” it’s about a week of work to research and make these modifications. Then we can push it out into beta testing with all the other new code to give it a proper shakedown.
I’m sure there are plenty of ways the algorithms above could be improved, so please go ahead and post your feedback!
Thanks!
^F^
April 22, 2010 at 2:30 am #74699In reply to: BP Album+ || New Features Requests and Discussion
foxly
ParticipantFrom our mailbox…
Not a big deal as this is a dev env but I thought I’d show you something I am observing in case it happens to others.
bp-album v 0.1.9, bp v 1.2.3, wpmu 2.9.2
You can see it in action at http://[redacted]
You’ll notice my test user ‘Sam Witwicky’ uploaded a pic yesterday (note time since) but somehow the action grabbed a reply from last week. If the streams got crossed and I have a corrupt activity table that’s fine. It keeps happening as I load test images though. Happy to delete entries in tables but i can’t figure out why this is occurring. Just started with 0.1.9.
Also notice that the urls for the images and title in the activity stream are wrong.
for ex http://[redacted]/members/test19/photos/single-media/7/ instead of
http://[redacted]/members/test19/photos/single-album/3/single-media/7/O/
so clicking does a redirect back to the root
I’m guessing it’s all related.
On a side note, I really appreciate your work on this and willingness to work with everyone. I’m pretty much ready to release my site to prod once bp-album is ready for prime time. I have held off doing any major styling to bp-album areas until you give the go ahead that core html tags and arrangements are all set.
===========================
You are experiencing two known defects in the BP Album+ 0.1.9.2 beta.
The first problem is happening because the “Album Item” and the “Media Item” classes do not yet generate globally unique ID’s for activity stream posts, so occasionally they collide, causing the plugin to retrieve the wrong media item.
The second problem is happening because we haven’t finished updating the URL generation code that creates the thumbnail link to activity stream items. WordPress then catches the resulting 404 error and throws the browser back to the home page.
Fear not!
All of this will be fixed in the next beta. We thought it was more important to demonstrate albums capability than to have everything working perfectly. You should NEVER install one of these “community feedback” betas on a live site. They are only intended to get the community’s feedback on how we are implementing features.
Thanks!
^F^
April 20, 2010 at 12:12 am #74328In reply to: Group-Rights Plugin
3sixty
ParticipantHmm, RSS… that is a little complicated. Also another implication I did not think of is the activity stream. If the idea is to restrict access to content, then both the RSS, the activity stream (and the activity stream RSS) have to be considered.
Before we go down the route of considering another plugin, have you already tried this one?
https://wordpress.org/extend/plugins/bp-groupblog/
BuddyPress Groupblog
Description Installation Screenshots Other Notes Changelog Stats
Author: Rodney Blevins & Marius Ooms
The BuddyPress Groupblog plugin extends the group functionality by enabling each group to have a single blog associated with it. Group members are automatically added to the blog and will have blog roles as set by the groupblog admin settings.
Features:
Full blog theme integration. The included bp-groupblog theme mimics the group pages.
WP Admin option to set default blog for groups plus bonus options.
Automated blog registration at group creation stage.
Bypass default blog validation to allow dashes, underscores, numeral only and minimum character count.
Blog privacy settings are initially inherited from group privacy settings.
Group members are automatically added to the blog.
Blog roles match group roles as set by the group admin.
Solid error checking that the blog follows validation.
Group admin tab to access the group-blog settings.
Recent posts are displayed on the group home page, much like the forum topics.
A menu tab is added to display the latest blog activity and blog page links.
Blog themes will have the ability to pull in group info and create a theme that could resemble the group exactly.
Leaving the group will downgrade the member role to ‘subscriber’.
Allow the group admin to select one of his/her existing blogs.
Known Issues: * Group blog post do currently not show up in the group activity stream. Therefore as a short term solution we are including a custom activity loop on the blog page. This should be fixed in the future.
Roadmap:
Allow the admin to let group admins choose the blog name, instead of following the group name.
Frontend posting from the blog home page.
Redirect options to integrate deeper with the blog.
Include an RSS icon for easy access to the Blog’s RSS feed.
March 21, 2010 at 7:20 pm #69576In reply to: BP GroupBlog, P2 ready (with bugs)! Please review…
Mariusooms
ParticipantThanks for giving it a look guys…it is so helpful to get another set of eyes on there as I was looking at completely different things. Here goes:
will the tags show up on the main page tags widget?
On the blog pages they show in relation to the blogs’ tags. For the main page you would need a sitewide tags widget. Look here: http://wpmututorials.com/plugins/sitewide-tags-0-4/
The magazine theme layout looks cool, but I feel it’s bit overwhelming for certain users. especially on lower resolutions I feels a bit crammed
I agree, it needs some testing and wiggling. I noticed the colums are not behaving how I want them to as well. I like your comp, it is in between a Microblog and Magazine layout. I might just include that unless there are other suggestions.
To avoid confusion I would probably rename Status Update in the groupblog to something like News Update or Blog Update, so that it does not get mixed up with a status/activity update in BuddyPress.
Yes, it seems posting updates is not needed and we should encourage users to post media from this point. I think Ideally the update form from buddypress would exist in a top screen dropdown (not sure how you call those web 2.0 things). So you could post updates at any time and doesn’t take away real estate.
Maybe allow the user to switch to a full markup mode or tiny editor to have more control over longer posts.
This functionality would have to be born at the P2 theme. We just use there functionality. Whatever they develop, we inherit. I already hacked the main P2 a tiny bit to include the allowed categories and ajax feedback. Since it is a theme created by Automattic I think it is a safe horse to bet on.
preview blog post before posting it
Yes, I was surprissed to by this when using P2 the first time. I didn’t expect img code in the post form, but it makes sense. A preview screen would be very nice. Again, this is something that would needed to be developed by the P2 theme. Unless anybody can supply some code we code integrate.
ability to edit the post after it’s posted.
There are actually a bunch of P2 features I omissed. Like keyboard shortcuts and inline editing. I’m going through the P2 theme and comb through what is still missing, inline editing is one of them. Thanks for mentioning that.
preview and edit functions are musts
As mentioned previous
Basicly inline editing is a core feature so no problem. The preview of posts I’m not sure. I wonder if there’s a feature request section for the P2 developer crew.clicking any category tag displays the archive for that tag on a page that has no group header.
You are absolutely right. I’m only including the group header in single, but this is something I can add in with a few lines. Just didn’t get to it yet, but was already to excited to share what the development was.
if you have â€Disable activity stream commenting on blog and forum posts?†set to â€Yes†in the BP admin area, I’m guessing this wouldn’t work
Ha, yes you are right. I want prioritize buddypress activity comments since they are more sitewide than individual blog comments. This helps prevent forking of discussions and the discussion can take place at multiple stages. We could do an easy conditional to check if activity comments are disabled and then include the regular comment form instead.
I guess for backward compatibility for old blog comments we should show those on the blog posts as well.
Agree with Bowe about blog status updates.
yes…
I must be daft, but I couldn’t find the alternate layout options screen
Currently this is controlled by the site-admin. So one layout rules them all. We quickly realized that it would be much better for the site-admin to allow group creators to choose a layout. This way you can have diverse groupblog expressions. We just did not get around coding that yet.
There is still a bunch of stuff we need to add and fix. Pitfalls also include group admins to change the theme of their blog (I just of that) as well as we need to see if we can omit the featured category from the backend for group members who are not admin or mod. An many other stuff.
So it is a bold task to include P2 support and does add some dependency, but at the end I do think it adds to the overall value. We just need to smooth out what and who the plugin is used. Your feedback help us with that.
Come WP3.0 I hope P2 changes to post-types rather than categories, but we will see.
March 18, 2010 at 10:50 pm #69123In reply to: BP Album+ || New Features Requests and Discussion
foxly
Participant@Andy Peatling – Thanks for joining the discussion!
Here’s our feedback on your requests:
1) – Allow the creation of albums, add/move/delete photos in albums and albums themselves.
Most of this functionality will be included in the 0.1.7 Monday release. The only feature that may or may not be in this release is to re-order images within an album.
An important thing to understand is that our data model is fully tag-based. So in the database, both images and albums are essentially the same data type. To assign an image to an album we just add a tag to the image, and to create a new album we just say to the database “find me all the images with @tag”. This allows a single image file instance to be shared amongst thousands of albums if desired, saving tremendous amounts of disk space.
2) – Allow commenting on photos or albums (use the activity stream commenting system so it ties back to the stream and visa-versa).
We currently have this functionality working 100% in the current release.
3) – Add single photo uploads to the activity stream. If a batch has been uploaded or a new album created, show a gallery of thumbnails on one activity stream entry.
Single photo to activity stream works 100% in current release. Album post to activity stream will show the album’s lead photo. We cannot post multiple thumbs to the activity stream because BP’s activity stream format only supports a single image attachment, and we think generating a composite JPG or PNG of multiple uploads would seem strange to users.
4) – Add meta data to an image – title, description, date, geo? – perhaps just read the exif data too.
Meta data is added to the image using “System Tags” as described in our 0.1.7 features update. This means that not only does the image object contain all the standard data, template and plugin developers can add any other fields they want.
The function in pseudocode (not final version, we are still deciding on syntax) works like this: bp_album_add_system_tag(‘image_id’, ‘tag_name’, ‘tag_value’);
And then to read it back: $string_variable = bp_album_get_system_tag(‘image_id’, ‘EXIF_shutter_speed’);
*I will add EXIF data capability today, as two core developers have now requested it*
5) – Upload one or multiple images in one go.
We will try this out using the built-in WP flash uploader, but solving this problem properly for “photo sharing” communities is going to require considerable coding muscle. We need a “fault tolerant” uploader that can handle all sorts of network problems and ideally resize images on the *user’s* computer *before* sending them to the site.
6) – Tag members in a photo – add a “tagged in” sub tab to the albums tab that lists all the photos the user has been tagged in.
The function in pseudocode (not final version, we are still deciding on syntax) works like this:
bp_album_get_user_tagged(‘user_name’, ‘order_by’, ‘number_to_return’)
while (has tagged photos, the photo)
paginator, photo object data
(end loop)
7) – Allow photo attachments on activity stream posts – extend the activity stream posting interface.
This is the only one we don’t know how to do yet…

Thanks again Andy for giving your feedback on the plugin!
^F^
March 13, 2010 at 7:55 pm #68156In reply to: New Plugin: Friends-Only Activity Stream
gregfielding
ParticipantMike,
Yeah…after playing around with this, it doesn’t do what i was hoping. It would be handy to have a plugin that simply auto-selects the “my friends” tab when a user logs is…but where they could still click on the “all members” tab to see everything.
But this plugin effectively turn makes the “my friends” and “all members” tabs show the same info.
That’s my feedback anyway…
March 4, 2010 at 1:22 am #66615In reply to: template compatibility
barrymonster
ParticipantI’ve read the instructions and done what step three has told me yet nothing works. I’ve copied and pasted until my lil fingers bled.
Here is my page.php file ;
<?php get_header(); ?>
<div id=”content”>
<div id=”contentleft”>
<div class=”postarea”>
<?php include(TEMPLATEPATH . ‘/includes/breadcrumb.php’);?>
<?php if (have_posts()) : while (have_posts()) : the_post(); ?>
<h1><?php the_title(); ?></h1>
<?php the_content(__(‘Read more’, ‘studiopress’));?>
<div class=”clear”></div>
<?php edit_post_link(‘(‘.__(‘Edit’, ‘studiopress’).’)’, ”, ”); ?>
<?php endwhile; else: ?>
<?php require(TEMPLATEPATH . ‘/includes/post-nav-block.php’); ?>
<?php endif; ?>
</div>
</div>
<?php include(TEMPLATEPATH.”/sidebar.php”);?>
</div>
<?php get_footer(); ?>
and here is the activity index.php;
<?php get_header() ?>
<div id=”container”>
<div id=”content”>
<?php if ( !is_user_logged_in() ) : ?>
<h3><?php _e( ‘Site Activity’, ‘buddypress’ ) ?></h3>
<?php endif; ?>
<?php do_action( ‘bp_before_directory_activity_content’ ) ?>
<?php if ( is_user_logged_in() ) : ?>
<?php locate_template( array( ‘activity/post-form.php’), true ) ?>
<?php endif; ?>
<?php do_action( ‘template_notices’ ) ?>
<div class=”item-list-tabs activity-type-tabs”>
-
<?php do_action( ‘bp_before_activity_type_tab_all’ ) ?>
<li class=”selected” id=”activity-all”>” title=”<?php _e( ‘The public activity for everyone on this site.’, ‘buddypress’ ) ?>”><?php printf( __( ‘All Members (%s)’, ‘buddypress’ ), bp_get_total_site_member_count() ) ?>
<?php if ( is_user_logged_in() ) : ?>
<?php do_action( ‘bp_before_activity_type_tab_friends’ ) ?>
<?php if ( function_exists( ‘bp_get_total_friend_count’ ) ) : ?>
<?php if ( bp_get_total_friend_count( bp_loggedin_user_id() ) ) : ?>
<li id=”activity-friends”>” title=”<?php _e( ‘The activity of my friends only.’, ‘buddypress’ ) ?>”><?php printf( __( ‘My Friends (%s)’, ‘buddypress’ ), bp_get_total_friend_count( bp_loggedin_user_id() ) ) ?>
<?php endif; ?>
<?php endif; ?>
<?php do_action( ‘bp_before_activity_type_tab_groups’ ) ?>
<?php if ( function_exists( ‘bp_get_total_group_count_for_user’ ) ) : ?>
<?php if ( bp_get_total_group_count_for_user( bp_loggedin_user_id() ) ) : ?>
<li id=”activity-groups”>” title=”<?php _e( ‘The activity of groups I am a member of.’, ‘buddypress’ ) ?>”><?php printf( __( ‘My Groups (%s)’, ‘buddypress’ ), bp_get_total_group_count_for_user( bp_loggedin_user_id() ) ) ?>
<?php endif; ?>
<?php endif; ?>
<?php do_action( ‘bp_before_activity_type_tab_favorites’ ) ?>
<?php if ( bp_get_total_favorite_count_for_user( bp_loggedin_user_id() ) ) : ?>
<li id=”activity-favorites”>” title=”<?php _e( “The activity I’ve marked as a favorite.”, ‘buddypress’ ) ?>”><?php printf( __( ‘My Favorites (<span>%s</span>)’, ‘buddypress’ ), bp_get_total_favorite_count_for_user( bp_loggedin_user_id() ) ) ?>
<?php endif; ?>
<?php do_action( ‘bp_before_activity_type_tab_mentions’ ) ?>
<?php endif; ?>
<?php do_action( ‘bp_activity_type_tabs’ ) ?>
</div><!– .item-list-tabs –>
<div class=”item-list-tabs no-ajax” id=”subnav”>
-
<li class=”feed”>” title=”RSS Feed”><?php _e( ‘RSS’, ‘buddypress’ ) ?>
<?php do_action( ‘bp_activity_syndication_options’ ) ?>
<li id=”activity-filter-select” class=”last”>
<select>
<option value=”-1″><?php _e( ‘No Filter’, ‘buddypress’ ) ?></option>
<option value=”activity_update”><?php _e( ‘Show Updates’, ‘buddypress’ ) ?></option>
<option value=”new_blog_post”><?php _e( ‘Show Blog Posts’, ‘buddypress’ ) ?></option>
<option value=”new_blog_comment”><?php _e( ‘Show Blog Comments’, ‘buddypress’ ) ?></option>
<?php if ( bp_is_active( ‘forums’ ) ) : ?>
<option value=”new_forum_topic”><?php _e( ‘Show New Forum Topics’, ‘buddypress’ ) ?></option>
<option value=”new_forum_post”><?php _e( ‘Show Forum Replies’, ‘buddypress’ ) ?></option>
<?php endif; ?>
<?php if ( bp_is_active( ‘groups’ ) ) : ?>
<option value=”created_group”><?php _e( ‘Show New Groups’, ‘buddypress’ ) ?></option>
<option value=”joined_group”><?php _e( ‘Show New Group Memberships’, ‘buddypress’ ) ?></option>
<?php endif; ?>
<?php if ( bp_is_active( ‘friends’ ) ) : ?>
<option value=”friendship_accepted,friendship_created”><?php _e( ‘Show Friendship Connections’, ‘buddypress’ ) ?></option>
<?php endif; ?>
<option value=”new_member”><?php _e( ‘Show New Members’, ‘buddypress’ ) ?></option>
<?php do_action( ‘bp_activity_filter_options’ ) ?>
</select>
</div><!– .item-list-tabs –>
<div class=”activity”>
<?php locate_template( array( ‘activity/activity-loop.php’ ), true ) ?>
</div><!– .activity –>
<?php do_action( ‘bp_after_directory_activity_content’ ) ?>
</div><!– #content –>
</div><!– #container –>
<?php locate_template( array( ‘sidebar.php’ ), true ) ?>
<?php get_footer() ?>
To the best of my knowledge I have tried every possible placement I could think of but nothing is working. Am I missing something ?
March 4, 2010 at 1:20 am #66614In reply to: template compatibility
barrymonster
ParticipantI’ve read the instructions and done what step three has told me yet nothing works. I’ve copied and pasted until my lil fingers bled.
Here is my page.php file ;
<?php get_header(); ?>
<div id=”content”>
<div id=”contentleft”>
<div class=”postarea”>
<?php include(TEMPLATEPATH . ‘/includes/breadcrumb.php’);?>
<?php if (have_posts()) : while (have_posts()) : the_post(); ?>
<h1><?php the_title(); ?></h1>
<?php the_content(__(‘Read more’, ‘studiopress’));?>
<div class=”clear”></div>
<?php edit_post_link(‘(‘.__(‘Edit’, ‘studiopress’).’)’, ”, ”); ?>
<?php endwhile; else: ?>
<?php require(TEMPLATEPATH . ‘/includes/post-nav-block.php’); ?>
<?php endif; ?>
</div>
</div>
<?php include(TEMPLATEPATH.”/sidebar.php”);?>
</div>
<?php get_footer(); ?>
and here is the activity index.php;
<?php get_header() ?>
<div id=”container”>
<div id=”content”>
<?php if ( !is_user_logged_in() ) : ?>
<h3><?php _e( ‘Site Activity’, ‘buddypress’ ) ?></h3>
<?php endif; ?>
<?php do_action( ‘bp_before_directory_activity_content’ ) ?>
<?php if ( is_user_logged_in() ) : ?>
<?php locate_template( array( ‘activity/post-form.php’), true ) ?>
<?php endif; ?>
<?php do_action( ‘template_notices’ ) ?>
<div class=”item-list-tabs activity-type-tabs”>
-
<?php do_action( ‘bp_before_activity_type_tab_all’ ) ?>
<li class=”selected” id=”activity-all”>” title=”<?php _e( ‘The public activity for everyone on this site.’, ‘buddypress’ ) ?>”><?php printf( __( ‘All Members (%s)’, ‘buddypress’ ), bp_get_total_site_member_count() ) ?>
<?php if ( is_user_logged_in() ) : ?>
<?php do_action( ‘bp_before_activity_type_tab_friends’ ) ?>
<?php if ( function_exists( ‘bp_get_total_friend_count’ ) ) : ?>
<?php if ( bp_get_total_friend_count( bp_loggedin_user_id() ) ) : ?>
<li id=”activity-friends”>” title=”<?php _e( ‘The activity of my friends only.’, ‘buddypress’ ) ?>”><?php printf( __( ‘My Friends (%s)’, ‘buddypress’ ), bp_get_total_friend_count( bp_loggedin_user_id() ) ) ?>
<?php endif; ?>
<?php endif; ?>
<?php do_action( ‘bp_before_activity_type_tab_groups’ ) ?>
<?php if ( function_exists( ‘bp_get_total_group_count_for_user’ ) ) : ?>
<?php if ( bp_get_total_group_count_for_user( bp_loggedin_user_id() ) ) : ?>
<li id=”activity-groups”>” title=”<?php _e( ‘The activity of groups I am a member of.’, ‘buddypress’ ) ?>”><?php printf( __( ‘My Groups (%s)’, ‘buddypress’ ), bp_get_total_group_count_for_user( bp_loggedin_user_id() ) ) ?>
<?php endif; ?>
<?php endif; ?>
<?php do_action( ‘bp_before_activity_type_tab_favorites’ ) ?>
<?php if ( bp_get_total_favorite_count_for_user( bp_loggedin_user_id() ) ) : ?>
<li id=”activity-favorites”>” title=”<?php _e( “The activity I’ve marked as a favorite.”, ‘buddypress’ ) ?>”><?php printf( __( ‘My Favorites (<span>%s</span>)’, ‘buddypress’ ), bp_get_total_favorite_count_for_user( bp_loggedin_user_id() ) ) ?>
<?php endif; ?>
<?php do_action( ‘bp_before_activity_type_tab_mentions’ ) ?>
<?php endif; ?>
<?php do_action( ‘bp_activity_type_tabs’ ) ?>
</div><!– .item-list-tabs –>
<div class=”item-list-tabs no-ajax” id=”subnav”>
-
<li class=”feed”>” title=”RSS Feed”><?php _e( ‘RSS’, ‘buddypress’ ) ?>
<?php do_action( ‘bp_activity_syndication_options’ ) ?>
<li id=”activity-filter-select” class=”last”>
<select>
<option value=”-1″><?php _e( ‘No Filter’, ‘buddypress’ ) ?></option>
<option value=”activity_update”><?php _e( ‘Show Updates’, ‘buddypress’ ) ?></option>
<option value=”new_blog_post”><?php _e( ‘Show Blog Posts’, ‘buddypress’ ) ?></option>
<option value=”new_blog_comment”><?php _e( ‘Show Blog Comments’, ‘buddypress’ ) ?></option>
<?php if ( bp_is_active( ‘forums’ ) ) : ?>
<option value=”new_forum_topic”><?php _e( ‘Show New Forum Topics’, ‘buddypress’ ) ?></option>
<option value=”new_forum_post”><?php _e( ‘Show Forum Replies’, ‘buddypress’ ) ?></option>
<?php endif; ?>
<?php if ( bp_is_active( ‘groups’ ) ) : ?>
<option value=”created_group”><?php _e( ‘Show New Groups’, ‘buddypress’ ) ?></option>
<option value=”joined_group”><?php _e( ‘Show New Group Memberships’, ‘buddypress’ ) ?></option>
<?php endif; ?>
<?php if ( bp_is_active( ‘friends’ ) ) : ?>
<option value=”friendship_accepted,friendship_created”><?php _e( ‘Show Friendship Connections’, ‘buddypress’ ) ?></option>
<?php endif; ?>
<option value=”new_member”><?php _e( ‘Show New Members’, ‘buddypress’ ) ?></option>
<?php do_action( ‘bp_activity_filter_options’ ) ?>
</select>
</div><!– .item-list-tabs –>
<div class=”activity”>
<?php locate_template( array( ‘activity/activity-loop.php’ ), true ) ?>
</div><!– .activity –>
<?php do_action( ‘bp_after_directory_activity_content’ ) ?>
</div><!– #content –>
</div><!– #container –>
<?php locate_template( array( ‘sidebar.php’ ), true ) ?>
<?php get_footer() ?>
To the best of my knowledge I have tried every possible placement I could think of but nothing is working. Am I missing something ?
-
AuthorSearch Results
