Take the 2-minute tour ×
WordPress Development Stack Exchange is a question and answer site for WordPress developers and administrators. It's 100% free, no registration required.

I'm building a site for a intranet that display data about people (totally legal!!). we will call these people Alumni.

The structure is like this: there are three roles, administrators, alumni, watchers.

The alumni register themselves and input their data. During registration they choose which data is "private", which is "public". Alumni have to be accepted by administrators after registration.

Watchers can see public data of Alumni.

Alumni are Watchers in respect of other Alumni.

Administrators can watch also private data of the Alumni, modify this data, accept alumni after registration, delete Alumni.

Would be nice if alumni could cancel themselves with confirmation by administrators, but this is not urgent.

So, my idea is that alumni should be a CPT connected to the registered alumni maybe by author relationship or via a metadata. These post should be shown in front end only after login. Watchers and Alumni should not be able to login to the back end. As I said before in the alumni CPTs there is public data visible to all logged in users and private data visible only to the owner Alumni and Administrators.

I know is a bit tricky and I don't ask you for the code. But since I'm not expert in wordpress yet I would like to hear from you some suggestion about how to structurize the site and about which APIs or plugin should I use to achieve my target.

Many thanks!!

share|improve this question
    
I'd go with podscms.org –  kaiser Mar 15 '12 at 14:52
    
What does it do? –  Bakaburg Mar 15 '12 at 21:29
1  
It's the "CMS" plugin for WP. You can build complete DB structures to your needs incl. connections between them and WP built in stuff. Just take a look at their homepage. They got a nice UI plus a very good and easy to use API. –  kaiser Mar 16 '12 at 9:39
    
I'm giving a look to it and it looks very promising! Thanks! –  Bakaburg Mar 24 '12 at 14:38
add comment

1 Answer

This sounds like it's somewhat similar to a project I recently put together. You should check out the Role Scoper plugin: it will be an important puzzle-piece in making this work. It's a confusing plugin, but it's the way to go.

"Watchers" sound the same as a default role, "Subscribers," so you could stick with that. Alumni could be a custom role based on Subscribers with elevated privileges as follows:

You create either two custom posts types, or two categories, or two terms in a custom taxonomy, whatever: Public and Private. Alumni can post to either one, and can read either one. Subscribers (or Watchers, if you prefer) can read only Public.

If you want to set up custom taxonomies or post types, you can do it by hand, and the methods are well-documented, but there are plugins that make it easier. I used the Types plugin.

share|improve this answer
    
Thanks for your contribution! The public and private data, should apply to fields in the same custom post. These custom posts should show the data of an Alumni with the alumni itself choosing which data is available to see for subscribers and which is private so it's visible only to owner of the post and to the administrator. –  Bakaburg Mar 15 '12 at 21:31
1  
You should go with Members for role management. It's actively developed and good coded. –  kaiser Mar 16 '12 at 9:40
    
Does it let me to show some post content only to some users? like there is a way in the wordpress api to recognize the access level of the currently logged user? –  Bakaburg Mar 16 '12 at 16:43
    
Yes, Members does restrictioned access based on roles too. –  kaiser Mar 24 '12 at 14:43
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.