Proposal:ConfigDrivenPluginSettings
From MovableType
Contents |
[edit]
Overview
Configuration Assistant for Movable Type allows you to easily design an entire settings page for your theme or plugin complete with pull down menus, radio buttons, checkboxes, text areas, and text input fields for all the options you wish to expose. You can do this all through a simple config file.
The settings a user then saves using this form will automatically be made available to you, the designer, through a set of template tags you choose and that you can use within your templates.
[edit]
Problem Statements
- Creating configurable template sets requires knownledge of Perl. This makes designers sad and generally hinders adoption of Movable Type.
- Creating plugin settings pages is repetitious and cumbersome even for Perl veterans.
[edit]
Solution
Extend the semantics of the settings registry key to support the following:
- the ability to group and sort plugin settings in groups or "fieldsets"
- the ability to express individual settings as form elements that can be rendered automatically by Movable Type
- the ability to have Movable Type make those settings saved by a user automatically accessible via template tags of the developer's own choosing
- the ability to automatically surface the plugin settings as an option in an MT menu (not in the usual Plugin Settings area under Tools > Plugins > Plugin Name > Settings.
[edit]
Sample Config File
id: MyPluginID
name: My Plugin
settings:
fieldset_1:
feedburner_id:
scope: blog
type: text
label: "Feedburner ID"
hint: "This is the name of your Feedburner feed."
tag: 'MyPluginFeedburnerID'
use_feedburner:
scope: blog
default: checked
type: checkbox
label: "Use Feedburner?"
tag: 'IfFeedburner?'
value: 1
[edit]