Organizing/categorizing many groups with group tags plugin
I have a programming question about how to implement this. I’m about to build a medium size BP install for an existing community where their groups are semi-structured. I was thinking the best way to provide them the ability to organize their groups would be with group tags. Just like is done regular wp with tag clouds and on this forum as well.
My question is should I use the skeleton component to create a new BP groups class and do everything in there? During group creation I would have a separate ‘Tags’ panel. OR should I simply extend the existing group class and put the tag creation code under the current place for Group Description.
I’m guessing the first is the way to go, but I’m looking for some advice about how to do this. In the end it will be a plugin an hopefully helpful to others with many groups.
Although I have no answer on how to implement this (I’m not a programmer) a similar option to tags would be to use a custom taxonomy. It’s a new feature that was added in 2.8. That way your group taxonomy is not mixed in with normal tags. Only caveat might be that the documentation for taxonomies isn’t great right now.
Thanks for the comment David. I agree for a very robust solution a custom taxonomy would fit the bill. However a bare bones implementation might just use the group meta table.
I checked out this older plugin: BuddyPress Contents (https://wordpress.org/extend/plugins/bpcontents/installation/) which has serious tag and category support however it is no longer in development. But maybe i’ll dig in the code and see how he implemented it and try to salvage the parts i need.
OK, I’ve written the code that allows the user to enter the tags, edit the tags, and creates a tag cloud on the main group page. I did this by just using groupmeta fields. simple.
But I’m at a loss as to how to display specific list of groups (the ones for that tag). Should I be filtering bp_has_groups or should I create my own loop using while ( bp_groups() ) : bp_the_group(); ?
well I got it to work, but it’s a bit of a hack, and I had to add an extra action in the default template to get it to work. but if anyone wants it, let me know. If someone were to help clean it up and make it more standardized, then it could be released as a plugin.
when I get it cleaned up I’ll send publish it. Right now it is not using ajax like all other group directory controls. I just hacked it to pass the variable in the url. I’m tinkering with the ajax now, to see how it can work.
Definitely interested. As we’ve discussed before, member and group types are something I need for my implementation.
Yeah, thx for this work i’m interested too ! I need to find a way to categorize groups and can’t wait the possible implementation in bp 1.3
I also wonder if someone can make the bp content plugin work with bp 1.2 … ? it was a good plugin.
sounds good. I’ll put some more effort into refining it and post a link to the code here. Then once it is more refined, I’ll post it as a plugin.
Anyone out there know much about how the ajax works in the groups listing screen. Where and how it is being called, and examples of how to insert my own ajax calls. this would make the plugin much better.
I’ll point MrMaz and Brajesh to this thread.. they seems to know a lot about the AJAX stuff
OK, I’ve worked out some of the issues, and have something to share:
the eventual url will be here: https://wordpress.org/extend/plugins/buddypress-group-tags/
but for now it is : http://bluemandala.com/bp-group-tags.zip
any and all feedback is appreciated.
This plugin will allow you assign tags to groups. You can then show a clickable tag cloud above the group listings or use the Group Tags widget.
This plugin does not integrate with the ajax group Search, Order By or My Groups functionality.
Everything works fine, however the url from the group tag remains in the browser.
I have no idea how this works with paginated groups.
TODO: look into making this work with ajax calls to fix url display
ensure the do_action hook is added to default theme *request has been made*
show common tags in the tag adding interface
create links for tags when displayed under group description
IMPORTANT INSTALLATION INSTRUCTIONS
For this plugin to work, you need to edit /bp-themes/bp-default/groups/groups-loop.php in the buddypress folder
on the 6th line, right below this code:
<?php if ( bp_has_groups( bp_dtheme_ajax_querystring( ‘groups’ ) ) ) : ?>
ADD this line:
<?php do_action( ‘bp_after_groups_query’ ) ?>
If it is already there, then ignore this note.
Future versions of the buddypress default theme hopefully will include this line.
the lastest version of the plugin is available at https://wordpress.org/extend/plugins/buddypress-group-tags/
if anyone knows much about how to integrate this withe the groups ajax (order by, search, my groups) then help me out. adding this functionality to the plugin would take it from a slight hack to something that could eventually be incorporated into core.
Looks cool, and I’ll try to test it asap!
Thanks for creating this, and I hope that you get the ajax stuff working Maybe someone in the BuddyPress Dev. chat can help you out!
Thanks. If someone hasn’t solved the ajax thing, I’ll work on it when I get to that stage in my project.
all the rest of the code is clean and conforms to how buddypress is coded. The only funky part is the lack of ajax integration. (However there is a small upside to the current implementation in that it can easily be bookmarked.)
The lack of ajax is OK for my project, but if anyone can help, I’ll dive in again and fix it. all i need are some pointers as to where to begin and how it flows in the code.
- The topic ‘Organizing/categorizing many groups with group tags plugin’ is closed to new replies.