by Pravin Paratey

Todo Plugin for Wordpress

Download Todo-Plugin

I wanted a plugin to manage a list of ToDos and display them on my blog. Having found none quite suitable, I decided to write it myself.


  1. An integrated panel in wp-admin that lets you add, remove and mark tasks as done.
  2. Ability to set,
    1. Due date and time.
    2. User to assign task to.
    3. Priority of task.
    4. Notes.
  3. In the admin panel, different colored backgrounds tell you which tasks are due today, due in the future and already completed. When displayed on your blog, different classes let you customize the look and feel of tasks. You can set additional display options through the interface!
  4. Advanced Options that let you drop the table from the interface.
  5. Completely Widgetized! Use todo-plugin as a widget without writing a line of template code.
  6. Licenced under GPL

Download & Installation

Download todo-plugin. You can also get the ToDo plugin via subversion:

svn co

To install, just unzip the contents to your wp-content/plugins/ folder. You will find folder todo-plugin with two files todo.php and readme.txt. This done, go to your wp-admin page and activate the plugin.

If you are using v0.1, you'll need to DROP the table wp_pravin_todo. To drop the table,

  1. De-activate 0.1
  2. Install this version and activate it.
  3. Go to Manage » ToDo. Scroll down to Advanced and click the Drop Tables button. Ignore any errors.
  4. De-activate and activate the plugin.


0.2 (February 21, 2007)
  • Now you can set: due-time, assign-to, priority and notes for each task in addition to due-date.
  • Widgetized!
  • Set display options via the interface. No need to pass parameters to the function.
  • Wordpress 2.1 and above supported. v0.1 only supported lower versions
0.1 (February 11, 2007)
First public version made available


ToDo plugin exposes the function pravin_get_todo(). No parameters. Set all display options via the ToDo interface. To manually add a todo list, use <?php pravin_get_todo(); ?> anywhere in your template code.

  • Each item is enclosed by a li tag with the title as its due date.
  • Three classes: todo-due, todo-duetoday and todo-done let you style those items accordingly.


  • The date display is not right. It follows server time and not the locale of the user.
  • I do not know how to get the ID of the current user. Every task gets a default assigned by ID of 1.