One of the first concepts your learn as a developer goes by the lovely name of Kiss: Keep It Simple, Stupid! Sadly I have to admit that the major weaknesses of WPMovieLibrary so far are caused by me ignoring that very simple concept. Apart from bad coding practices coming from three-years-old pieces of code, I simply overused options, providing way too much possibilities that, in the end, almost nobody actually use. Worst: I now receive at least one email per week asking about things that are innplain sight in the settings panel! Quite concerning.
Customization is a good thing, as long as it does not impact the usability of the whole thing; permalinks are a good example of how WPMovieLibrary used and abused of options. Give the possibility to translate permalinks was a good idea; extending the permalinks to use metadata was risky; basing the whole grid on top of that was stupid and lead to issues that shouldn’t appear in any good product. The same pattern appears in various places throughout the code, and it became reaaly problematic lately.
So, and in harmony with the WordPress philosophy, version 3.0 will try to be more effective in this area, limiting the number of options to focus on simpleness. Decisions, not Options. Now that may sound reductive, but all things considered, things that will not be editable through options may very well be important enough to be ported to extensions or solved directly in themes.
I’ve not decided yet if the settings panel is to be simply removed or just stripped to the minimum requirement; to be honest I’m leaning towards ruthless removal. The most crucial settings concern the API configuration and they can fit quite well in the incoming movie importer; everything else is pure customization and should probably be handled by themes or thirdparty plugins, and here I’m mostly thinking about customized Headboxes. WordPress also provides logical places to use: archives pages settings should be dealt with directly in the page editor, permalinks should be edited in the Permalinks options pages – which by the way would make it possible to use markers in URLs – etc.
Anyways, I’ll blog about this later when I have a final answer. In the meantime, I’m still working on porting to version 3.0 the existing Shortcodes. There will be some breaking changes don’t that part, but there will also be some really, really cool enhancements!
To be continued.