WordPress To-Do List Plugin

This plugin provides users with a to-do list feature.

You can configure the plugin to have private to-do lists for each user, to have all users share a to-do list, or to have a master list with individual completion of items. The shared to-do list has a variety of settings available. You can assign to-do items to a specific user (includes a setting to email a new to-do item to the assigned user) and optionally have those items only viewable by that user. You can also assign different permission levels using capabilities. There are also settings to show deadline and progress fields. Category support is included as well as front-end administration.

A new menu item is added to the backend to manage your list and the to-do list is also listed on a dashboard widget.

A sidebar widget is available as well as a shortcode to display the to-do list items on your site.

There are two shortcodes for front-end viewing of the list. Management of categories is restricted to the back-end.

View Plugin Filters and Hooks

If you have translated this plugin and would like me to include it,
please email me the files at cindy@cleverness.org.

The Three List Views

Individual
This view allows every user to have their own private to-do list.
Group
This view allows all users to share one to-do list.
Master
This view has a master to-do list that can be edited d by a user with the required permissions. The other users are able to check off items on their individual version of the list.

Using the List Shortcode

[todolist]

Available Options:

title
default is no title
type
you can chose list or table view – default is list
priorities
default is show – use a blank value to hide (only applies to table view)
assigned
default is show – use a blank value to hide
deadline
default is show – use a blank value to hide
progress
default is show – use a blank value to hide
addedby
default is show – use a blank value to hide
date
default is hide (0). Use 1 to show
completed
default is blank – set to show to display completed items. Set to only to show just the completed items.
completed_title
default is no title
completed_date
default is hide (0). Use 1 to show
list_type
default is ol (ordered list) – use ul to show an unordered list
category
default is all – use the category ID to show a specific category

Example:

A table view with the title of Coming Soon and showing the progress, deadline and the user the item was assigned to.

[todolist title="Coming Soon" type="table" priorities="" addedby=""]

Using the Checklist Shortcode

[todochecklist]

Available Options:

title
default is no title
priority
default is hide (0). Use 1 to show
assigned
default is hide (0). Use 1 to show
deadline
default is hide (0). Use 1 to show
progress
default is hide (0). Use 1 to show
category
default is all categories (0). Use the category ID to show a specific category
addedby
default is hide (0). Use 1 to show
editlink
default is hide (0). Use 1 to show
date
default is hide (0). Use 1 to show
todoid
default is blank (“”). Use the ID of the to-do item to display just one item

Example:

Set the title to “My To-Do List” and show the deadline and only items in a specific category.

[todochecklist title="My To-Do List" deadline=1 category=1]

Using the Admin Shortcode

[todoadmin]

Available Options:

title
default is no title
priority
default is hide (0). Use 1 to show
assigned
default is hide (0). Use 1 to show
deadline
default is hide (0). Use 1 to show
progress
default is hide (0). Use 1 to show
categories
default is hide (0). Use 1 to show
addedby
default is hide (0). Use 1 to show
date
default is hide (0). Use 1 to show
editlink
default is show (1). Use 0 to hide
category
default is all categories (0). Use the category ID to show a specific category
completed
default is hide (0). Use 1 to show

completed_date
default is hide (0). Use 1 to show
planner
default is hide(0). Use 1 to show

Example:

Set the title to “Things to Do” and show the priority and the progress.

[todoadmin title="Things to Do" priority=1 progress=1]

Additional Information on Available Permissions

These settings are used in the Group and Master views.

Important! When using the Master List View type users that you do not want to edit the list should only be allowed to View To-Do List and Complete To-Do Items, otherwise they will be able to edit the Master list to-dos.

View To-Do Item Capability
This allows the selected capability to view to-do items in the dashboard widget and on the To-Do List page under Tools.
Complete To-Do Item Capability
This allows the selected capability to mark to-do items as completed or uncompleted.
Add To-Do Item Capability
This allows the selected capability to add new to-do items.
Edit To-Do Item Capability
This allows the selected capability to edit existing to-do items.
Assign To-Do Item Capability
This allows the selected capability to assign to-do items to individual users.
View All Assigned Tasks Capability
This allows the selected capability to view all tasks even if Show Each User Only Their Assigned Tasks is set to Yes.
Delete To-Do Item Capability
This allows the selected capability to delete individual to-do items.
Purge To-Do Items Capability
This allows the selected capability to purge all the completed to-do items.
Add Categories Capability
This allows the selected capability to add new categories.

Customizing

I have numerous hooks in the plugin so you can customize how it looks and functions. If a hook is needed somewhere, please let me know.
View the list of actions and filters.
View WordPress Codex article on using hooks.

You can create your own templates for the dashboard widget and the widget. You can find them in the /templates/ directory. Place them in your theme’s folder in a directory called ctdl-templates.

Do you have a feature request? Did you find a bug? Check out the trac and see if someone else has reported it. If not, please do so!