Strike one item off the bucket list: I’ve written a WordPress plugin.
Paragraph Level IDs is available now from the WordPress plugin directory, and I’ve created a static page on this site to explain the detail. But in essence, the plugin adds lots of little anchors into the HTML of your blog posts, before each paragraph.
This means that the author and users can link to specific paragraphs in a piece of online text.
This functionality is extremely useful when dealing with long screeds of text. Someone may quote a bon mot, but if you follow the link to where the writer says the quote came from, you often have to trawl through many paragraphs to find the quote and check the context. If a site has anchors, or id attributes embedded in the HTML, the person creating the link can send the reader to the exact paragraph in the text.
This is a very old technique, one that has been present in HTML since its earliest incarnations. But few people use it routinely on their webpages. This plugin offers an easy way to alleviate that inefficiency!
Why write the plugin?
There were two prompt for me to try and tweak WordPress blogging system with a plugin. The first is the George Mallory answer: “Because its there“, because I can. I have been part of the WordPress community Before It Was Cool and love the elegance of the software: You can add any modifications you want to a dedicated ‘plugins’ folder (or if you want to change the way the site looks, a ‘themes’ folder). The site then behaves differently, but the underlying core code is not changed. Its great to be a part of the international community creating and extending a communications platform. We’re helping more people communicate more efficiently with one another.
Efficiency was the impetus for creating this particular piece of code. In the past few years, I have had to wade through a lot of long legal and government policy documents: court judgements in libel cases, Ministry of Justice consultations, white papers, draft legislation, the Leveson Report, and Defamation Act documents. All these are usually presented as cumbersome PDFs, which, despite being electronic documents, nevertheless read like books.1 It takes time for the user to scroll to find the relevant passage. It is extremely difficult to link to a specific paragraph or clause in a PDF document. When you are scrutinising legislation on a line-by-line basis, this adds a lot of time to the research process. My modest plugin only works for WordPress sites (i.e. not Government documents) but it nevertheless sets a good example.
Thankfully, the Houses of Parliament Hansard (the official transcript of what has been said in the House Commons, the House of Lords, and all their Committees) is also a beacon of best practice. Most of its reports include precisely the anchors that should be in all such official documents. It is therefore easy to link to and read any given speech or procedural element (I’ve already moaned about the few gaps in its provision). Most other Government sites do not do this, and persist with their obstructive PDFs.
Nowhere is the problem more apparent than with the Leveson Report. The printed and PDF versions of the text impose an inappropriate linear experience upon the reader. The text is so long and extensively cross-referenced. The issues and topics it deals with are incredibly diverse. It cries out for a better, non-linear means of navigation.
I have an idea that I might create an HTML version, The Leveson Report (As It Should Be), with copious anchor links throughout the text. If I were to use the free WordPress software for this purpose, then I’ll need my Paragraph Level IDs plugin on hand to make the thing as useful as possible.