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 have wordpress site for a school or college.

My requirement is I need Classes like (from one class to 8th class) and then classes will have courses/subjects(like physics, Maths etc) and then each course has a file to upload.

The teacher will upload the file to a course and then the student will download the file of a course from the front end.

The teacher will add classes, courses to classes and can upload the files to the courses.

The student can only download the files uploaded for a course.

SO Is there any plugin of wordpress to do work for me or I have to write my own?

Any help and suggestion?

Thanks in advance.

share|improve this question

3 Answers 3

There is a buddypress addon called Courseware but it means you need the whole buddypress package.


It might be doing too much though, and potentially you'll have a lot of CSS to write / templates to edit.

share|improve this answer

It doesn't exactly meet your requirements, but if you use the Omni Secure Files (OSF) plugin it will give you a Folders / Files implementation with the ability to upload files. They're half way to fully implementing permissions for the directories.

You can then split out your school years / classes by directory and upload the files to the corresponding directory.

I used this plugin and did quite a lot of modifications to it and combined it with the Role Manager plugin. I've given a wordpress capability to each OSF directory (so each time you create a folder you add a capability called osf_directory_{id}) - you can then filter the page that displays the folders on whether current_user_can('osf_directory_{id}').

If I get a chance I'll post up a link to my code.

share|improve this answer

Maybe S2 Member would help. It is a free plugin with a premium upgrade option. Otherwise Wishlist Member (which is premium plugin allows complete control over content.

share|improve this answer

Your Answer


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.