Ever since I first released Tarski, people have asked “How do I do x?” Ever since I first added the hooks API to Tarski, my answer has often been “With a plugin.” However, there’s usually a follow-up request: “I don’t know how to do this; can you show me?”
It’s usually less work to write the code myself than to try to explain all the background knowledge someone will need to do it themselves, so I’ve ended up writing an awful lot of example plugins. For a while now I’ve wanted to list them somewhere on the site, so they’re easier to link to and keep updated, and today I finally got round to it.
You can see all my example plugins here.
Hopefully they’ll be of some use, both directly to users, and indirectly as a way to learn how to write simple WordPress plugins and interface with the Tarski API. I’ve separated them out into plugins that work with and require Tarski, and those that just use the normal WordPress API.
I’ve also published the plugin I use to customise the Tarski website, which may be of academic interest.

2.4 Release
December 11, 2008 by Ben Eastaugh | 32 comments
Tarski 2.4 adds support for new WordPress 2.7 features including threaded comments and the redesigned admin panel. Details are available in the changelog. Please note that WordPress 2.7 is required for this release.
Download Tarski 2.4
You can also get this release as a Git tag or a Subversion tag or branch.
We strongly recommend following the upgrade guide. Always back up your files and database before running a WordPress or Tarski upgrade. Please ensure that you upgrade WordPress before installing the new version of Tarski.
Tarski 2.3 was an extremely stable release, so while there are a lot of changes in 2.4, they’re almost all in support of new features. A lot of behind-the-scenes work to make Tarski’s code cleaner, more robust and compatible with WordPress 2.7 has taken place, but the interesting parts for most users will be the two major functionality changes to comments and the options page.
Tarski now supports the new threaded comments functionality added in WordPress 2.7. Threading and paging are both built into the WP core, and are pretty configurable from the admin panel. One can decide whether comments should be paginated, and if so, how many top-level comments should appear on each page (if threading is disabled, all comments will be top-level ones). The maximum level of nesting can be set from 1 to 10, and comment threads can be set to automatically close after a certain period of time.
The changes made to accommodate this new functionality mean that Tarski’s comments are now ‘inline’ with the main content area, and are no longer forced down by the sidebar. This decision was difficult to make; Tarski’s distinctive comments were, to my mind, one of the more elegant features of the theme and the limitations they imposed were minor compared to the benefits of better spacing and a decent content area for comments to fit into. However, given Tarski’s ability to swap columns around and the need to support RTL languages, the development and ongoing support burden would have been too much, given the vast amounts of added complexity that the new comments system brings.
Obviously the biggest user-facing change in WordPress 2.7 is the new, completely redesigned admin panel. When it became clear just how radical the changes were, I decided that despite the Tarski options page being thoroughly overhauled not too long ago in version 2.1, I had to revisit both the aesthetics and the functionality. The result is, I think, a cleaner and more effective options page which doesn’t feel out of place in the new admin area.
There have also been some changes to the way options are saved to the database: Tarski now uses the WordPress generic admin
POSThandler, which both leads to more modular code and bakes in a certain amount of additional security protection. Furthermore, building on the security improvements in version 2.3, the options handlers now check the referrer to protect against CSRF attacks—a type of attack that Tarski’s login and logout links are also now hardened against, thanks to Mark Jaquith’s thoughtfulness.Tarski’s update notifier now uses the new HTTP API, which has several advantages over Tarski’s native update notifier code. To begin with, it will work across a far wider range of transports, potentially making update notifications available to many more people whose servers don’t support
libcurlorfsockopen. Just as importantly, it will be supported by the core WordPress team, reducing the amount of complex and highly specialised code in Tarski. This leaves me more time to focus on Tarski’s core competencies and reduces the opportunities for bugs in the update notifier (something that has been an ongoing issue ever since it was introduced).Thanks to those who tested the release candidates; I hope everyone enjoys using the new version.
Please post any bugs or suggestions on the forum.
Tags: 2.4, HTTP API, options page, threaded comments, update notifier, WordPress 2.7