I have read the og for 6.x readme and the handbook re og and it's all completely unfathomable.
I set up og and enabled the access module, views. Added the group details block. I created a grouphome content type, as an experiment, and made it a group node (whatever that is!). Then I created a new grouphome content. I thought maybe that would create a group, and maybe it did, but all I see is a group block saying the name of my website "welcome to mywebsite" and invite friends, 0 members etc. So what? And, all of my sites' links now show what seems to be a dump of the intro to each of the articles.
It would be very helpful if someone could create a simple walkthrough for og for d6, which results in a couple of distincy og. Not all the bells and whistles but the basics...the existing instructions might be ok for d5, I don't know, but it's really not clear what to do with d6 and og.
Comments
i agree
it should create a group by default called 'sample group' restricted to teh admin...
at any rate, here's how i've done it - and this is a reasonably standard approach - and there's some stuff that is NOT clear from the module! (you've made that quite clear)
you must have a content type that is in fact a 'group' - this means that a 'story' is not a 'group node' it is just something that you might put into a group - a 'group content type' is quite literally a type of 'thing in drupal' (my preferred term) that is a 'group'
to keep it simple, go to 'content types' and add a new content type called 'community group' and make it a "group node" (important step)
go back to whatever else you did earlier and remove that group node from before - this current approach will make it easier to follow and 'see' from admin screens!
now, go to content types and look at other content types - take 'story' - do you want users to be able to write a story in a group? then go to story - edit content type - scroll down to workflow and you'll see an option to make this a 'standard group post' (or never allow it to post to groups) - repeat this for each content type for which you might want a group member to do something (like blogs, polls, etc)
if you've done this, then anybody in a group can write a story, make a poll etc BUT you've first got to have a group!
go to create content and choose the new "community group" - give it a name like "testing OG thing" and choose a permission (moderated, public, private etc)
now to go admin/blocks - you'll see some assorted blocks for OG - if you aren't sure what does what and you're on a dev site, try sticking ALL of them on the left column/sidebar for now (seriously, because the names are confusing to people new to all of the OG stuff)
now, you can create content in two ways - and this is really what OG is about at a basic level - a group is an affinitiy - like you and i both like animals, so you create a group called 'fans of zoos' and i join - i go to the group page and click on "create a story" from within teh group'sown content block - if you mouse over that little path you'll see that it's just like adding a story from the normal 'create content/story' under my user block (the main one, that has'logout and that other stuff) BUT it links the story to this affinity and so will display the story inside the affinity group (in this case, 'zoos group')
when you say you see teh dump of the intros into group and other pages, what you're actually seeing is (for example) a 'story' that is both within the group and also public - meaning it might flow to the home page, but when i click it and see the full node i realize that it's been posted into a group and simply made 'visible' to nongroup members (one configuraiton option, it could also be not visible to non-group members)
if you go to OG configuration, you'll see options to present OG membership during node creation - in case a user is a member of your group but is NOT on the group page when he or she clicks to 'create a story' - in the node creation form he'll see an option to link the node to the group and/or makeit public - in OG configuration you can get granular with this stuff (force all groups to be listed and visible, force content into groups and so on)
that's the basic idea - it needs some more simple and intuitive documentation and what i've written above isn't even half baked - does it help at all?
on my site, i'm doing this all for local community - so stories, polls, classifieds, all of it is open to be created by any registered site user AND also all of those content types can be created wtihin groups - that way a user might want to restrict a story to just the group (like a group event) and so he/she simply unchecks the 'public' box during creation and assigns the story to the group OR goes to the group page and clicks 'create story' and unchecks the same 'public' box - it's actually doing the same thing both times, just clicking to create from within OG changes the path
however you may restrict what content gets created where with additional controls - for example, polls may only be created within groups, not under the more generic 'create content' link for all users in user block
........................................................................
i love to waste time: http://twitter.com/passingnotes
Yes that's a great start
Very helpful, thanks.
Some questions.
One, how does one get to groups one is a member of? I've done it by going to "My Groups"; and clicking on the test group. But also one could create a primary link to the...group node?
So group node, when creating the 'community group', is basically the designation for a groups home page?
Would one every create more than one content type of group node? Or is the one good enough?
One thing that seems particularly weird is that whereas I'd expect a newly created group would only display content created specifically for it, it instead shows all content. The previously existing pages etc cannot be set to the audience 'test og thingy' only; it seems it's either show only in the group (which would not make sense for most content created before the group existed) or show everywhere including in the group. That exactly the opposite of what seems intuitive...older content should be disincluded from the group by default. Is there a way to adjust or fix this?
Maybe I've got the wrong idea about what OG can do? My notion was that there would be the parent site, with content common to all site members. Inside the main site would be various groups, with content just for them. I think I've seen that group content can be shared with the main site, that's a publication and probably config choice. But as it is now, unless I start using OG from day one of the site, it seems any new groups would be flooded by older, non-group postings.
There are some other things I don't get now like exactly how the membership aspect goes with groups; and that it's not all that clear when I'm "in" the group or not...somehow I thought it'd feel more like a subsite than it is, for me at least right now.
Great post, thanks again, you got me going.
some answers (inline)
okay, putting some replies inline:
---if you use views (which you probably have installed alongside OG), it creates a couple of views, one of which is default named (i believe), "my unread" - this is actually a link to unread postings in your group, a nice feature for users BUT if you go to admin/navigation/ you can edit the name of that link to say "my groups" and it basically does the same thing (links to all postings within *only* your groups and presents a tab for just the stuff you haven't read yet - a much more useful way to see this - AND the groups you belong to can also be displayed in your user profile (i forget where that option is! but if you view your own profile, do you see your 'groups' at the bottom? BTW _ to edit menu links, be sure to go to admin/modules and enable 'menu' to let admin alter the menu for users!)
--yes. it's confusing, but that's what it is - an object in drupal that is now a 'group' thing which collects other things (stories etc) and anchors them to the group thing - it's way overintellectualized, but that's drupal ;)
--i'd stick with ONLY one or else you're going to run into administrative nightmares. instead, consider using *taxonomy* to create a vocabulary that is specific to only the 'group' content type and perhaps force users to pick one (e.g. groups for sports, politics, etc) - that will open the door to creating collections of groups - for an *awesome* example of this, check out the groups at fastcompany.com (drupal site) or popsugar.com (drupal site) - both use groups extensively with a defined taxonomy...
--this is a combo of OG configuration and content type rules. you'll need to hit OG configuration and set content to be 'not public' by default so that if it's created within the group it is confined to the group (could be optional too, you may want a 'story' to appear everywhere) - as for stuff that is already around that's showing up in the group, i'm not sure why that's happening (would need to really see it to understand) - you may be able to go to the content item itself, click on 'edit' and see if it's somehow in the group, or if it's set to publish to the front page or something else...again, not sure exactly how this is happening on your site
---no, they should not be! if you're worried about this, you can browse assorted modules that set rules and permissions for assorted content workflow stuff OR if that's too complicated, you could also figure out what you want to be available to a 'group' and then create *new* content types that are basically clones of existing content types but *only* are available to groups - so you have 'blog' in drupal core, but create a new content type called 'group blog posting' and restrict access (there are a lot of ways to do this kind of thing)
---again, not sure why your old existing stuff is showing up all over groups!
--well, this is workflow - you can create things to make it all 'feel' more like that, including something simple like a login redirect that brings people directly to that "my groups/unread' etc page upon login...or you could put a block right in header specific to that same content that appears when users log in (their group unread stuff) - it's very flexible and more of a user experience and design kind of issue
--certainly. while views is awesome, OG is probably the most 'outwardly' used module for all drupal sites that involve any kind of networking...i really encourage you to check out a site like fastcompany.com that makes extensive use of OG - register, join some groups, do some stuff in the groups (not spam, maybe just comments) and then look at the page and see how they're using blocks and custom php snippets to make it all feel 'group intensive'
i just saw some full page stuff in fastcompany.com in their print magazine profiling new groups on the site and encouraging people to register and join their groups and so on and all that i could think to myself was, "wow, these guys are basically running a full page ad for the OG module at drupal.org, that's a pretty serious level of dedication to using OG"
........................................................................
i love to waste time: http://twitter.com/passingnotes
I think the issues with all
I think the issues with all old content showing up may be solved. I hand book pages also set as group node, a remnant of my first attempt at setting up og. After turning that off, I get only the content I'd expect when viewing a group. Not sure why making book page a group node might have exposed all site content in the group, since virtually none of that content was book pages...maybe a bug in OG? A bug that shows up if OG is misconfigured?
I'll check out fastcompany. I'll check out more of the things you wrote and may have more questions for you...thanks again.
One thing, I think I saw a
One thing, I think I saw a place to adjust the way group urls are handled; but I can't locate it again. Can you point me to the right spot?
i forget where that is!
i know what you're talking about, but i don't use it...using pathauto instead and just leaving OG paths alone for time being but if you do find it, let me know..
for some reason i think it's actually part of pathauto -you can use tokens in the paths for content types, so in the case of OG you would call the token that is the 'og name' or 'content type' so that when it automagically generates the paths, instead of spitting out:
yoursite.com/name-of-article
it gives you:
yoursite.com/groups/name-of-article
or
yoursite.com/groups/sportsclub/name-ofarticle
and so on - the token are all swappable...i just haven't used that custom path tool yet but now think that i will because i'd like to have all stuff in groups display a url that at the very least says mysite.com/groups/titleofarticle
........................................................................
i love to waste time: http://twitter.com/passingnotes
I wonder if I'm just wrong
I wonder if I'm just wrong about there being any path or domain url settings in OG? I've looked pretty hard and come up with nothing. It might be that I was mixing up my exposure to the language module, which took place on the same day, and does include options re path?
I've never used pathauto, only path, but that does seem to be how people managage og urls.
I will experiment more. I will need to keep groups as simple as possible for the end users. A concern I have is that a user should know if they're in the main site or the group; the theme can be changed for each group, but not the color setting for the theme? In most cases I think I'd want to keep the primary theme intact but use a different color.
The other thing that is confusing is that while the OG config page presents a checkbox that controls Audience, and which effects whether a post is automatically scoped to the group one is in, it does not apply to group admins. My group admins are not very skilled with this stuff. It'd be much better to have an option to include group admins in the automatic association of an new post and the group it's created in. Is there any kind of supplimentary module that handles this?
pathauto will handle group names in url..
so i'm like 99 percent certain that pathauto is what you need for those url's - OG creation exposes a token (via token module) that can be summoned to the url (e.g. sitename/OGname/contentname (or customized further)
as for the workflow thing, i'm not quite sure what you mean - you can set up some basic defaults, like all content type story created within a group is public by default and so on
or are you talking about editorial workflow? if you just hit OG and create a story, then any group member can use the default builtin OGmytracker view to see what's new, what's unread and so on - if you hit the views page, make sure those views are enabled and then go to the admin/blocks page to throw them into a sidebar to see if they suit your needs...
........................................................................
i love to waste time: http://twitter.com/passingnotes
you can set up some basic
How do you do this? I can't find any options anywhere to do this for an entire content type. All I want to do is make all nodes of a particular type accessible to non-group/anonymous users by default. I only see the option on the node creation form.
Thanks.
it's really a default sort of setting (@flashon)
if you go to admin/content types, click on any of your content types and scroll down the edit screen and you'll see a little collapsed section called "organic groups" - click the button that says "make this a standard group post"
what that means is that if a site user can create a (story, for example), then if he joins a group he can also create a story - but when he clicks 'create a story' from *within* the group, while logged in, it will automagically be a group posting (a group story so to speak) *and* it will also be publicly visible in any round-up of stories you've got on the site - unless you click to make it 'not public' in the node/add form when creating the story
does that make sense? there are additional options under OG configuration for setting content to public or group-only by default, and you can even 'gray' this out for the user (meaning 'force all content to be public by default' as well as appear within a group)
here's a more literal example: i've got a custom content type called 'event' - it's got cck dates, and i'm using views to show a big calendar and all of that
any registered user can create an event (it's a community town site) but within any OG group, any group member can also create an event and set it to be public or only visible to the group members (meaning it won't appear on the big main calendar, only on the custom view i've got for that group that shows group events)
i did this because there may be a local school group posting an event like a school fair - it's in the group 'group for some school' but they also want it on the big town calendar, so it is technically one node that appears as 'visible' in two forms: within a group, and within a larger content listing of any type (public) called calendar - but when you actually click through to view the event details, you are taking 'inside the group' and see an option to join if you're not already a member...
........................................................................
i love to waste time: http://twitter.com/passingnotes