I often feel much of my life has been spent arguing against binary judgements related to technology.1 I’d like to have neater boundaries and simpler discussions but they always seem to get in the way of what I perceive as reality.
I’ve certainly tried to articulate options for content in creation in WordPress before. I tried really hard to have a nice list here that would move you from full-constrained incrementally towards the normal backend editor but the lines kept blurring on me so . . . you get what we have here today . . . which is a failure to delineate, crisply.2
The idea that WordPress authoring is super-easy or needlessly complex is one of those arguments I have repeatedly.
I believe, with varying degrees of effort/skills, WordPress authoring is simply what you want it to be.
It can be tightly constrained, without even the need for an account or even a visit to the backend of WordPress. It can also be fully open with all the options and complexities you could want. They’re both choices with a fair amount of room in the middle for variations. I’ve found a few plugins and/or design patterns that support these choices fairly well.
The Most Structure (fewest options)
Why pursue this?
- you want very standardized template-driven content3
- you want author technology support to be minimal/non-existent
I’ve got a few examples of when form-to-posts has worked for us. In this case, I can move from simpler to more complex.
- BNFO 300 Documents – Biology Course – Simply allowing students to submit documents of various types as an embed so they can comment on them using WP’s comment feature. Really simple but effective enough to bring the faculty member back.
- Student Sociology Article Submissions – Sociology Course – A very, very early model for this kind of thing.
- Gestalt Theory – Art Course – a more visually focused model
- Bicycle Safety Survey – Urban Planning Course – This was a phone focused form to allow for GPS plotted map entries regarding bike safety. It fills in some hidden form fields with GPS data as part of the process. The GPS data is held in a custom field.
- Dichotomous Key – Biology Course – This is a visually driven form that fills in form fields via URL parameters. If you bounce through the leaf choices,
you’ll end up at a page to submit your image. Look at that URL and you’ll see a bunch of stuff in the URL based on what you selected. This is, again, an early model but it does show that you can create some neat experiences for users that structure things but that also feel pleasant.
- Text Sets – EDUC Course – the goal here was to allow students to create units with a very particular structure and then populate those units with particular books (again with a very particular structure). I made this in the early days when I was still fighting programing so it’s pure Gravity Forms and a bit awkward. It does show high levels of structure being possible although we left some holes and you can see that people found ways to do other things or not do things. There’s a mixture of custom fields, tags, and categories driving this.
Lately, I’ve also gone with some front-end editor options. These enable degrees of constraint (you can require elements, set default categories etc) but you can go a bit farther than with Gravity Forms and enable the full WordPress editor options on the front end. You can set these to require a user to be logged in or allow anyone to submit.
I’ve used USP Pro and the Buddypress User Blog. Both enable front-end editing and have options to restrict what people can do. The words used to describe plugins like this are kind of messy though which makes finding and comparing them somewhat difficult. In the scenarios I’ve used these plugins, we wanted to keep users on the front-end and add some minimal restrictions on the metadata/category side of things but give them full access to building multimedia posts (multiple images/videos, WYSIWYG editor etc.).
I’ve talked lots of times about using Gravity Forms4 to create posts. With post body content templates you can make this as structured as you want. Every option could be from a dropdown, checkbox, or radio button. Those elements can be woven together to create a single structured post or different elements broken out as categories, tags, or custom fields . . . or you could use the form to do all of that.
I tend to recommend the Gravity Forms route because it’s the easiest path I’ve seen for people who might not have technical skills or technical support and the plugin is handy for lots of things outside the form-to-post pattern. Gravity Forms also keeps things on the front end and you can enable WYSIWYG editing. I have not enabled a fully functional WP editor with file uploads5 in this scenario nor have I seen it done. I’m sure it’s possible but it’s not plug and play.
I’m becoming more of a fan of this option but it’s still a new plugin for me and one of the rare paid plugins I use.6 I can pretty much do anything I could do in the Gravity-Forms-to-post model (except conditional logic and some of the more form dependent elements) but it lets me offer the full editor/file upload interface.
Custom Post Types
Another fairly major option for changing how people create content in WP is creating custom post types and associated custom metadata.