Download the latest version of the plugin HERE!

Give your visitors the freedom of choice with BookLinker, a WordPress plug-in that converts existing affiliate links into a list of book resources: Amazon, Powells, and IndieBound affiliate links, WorldCat library searches, and LibraryThing book pages.

There are a lot of reasons to break free of the Amazon monopoly on the Internet–see my thoughts here–but the best reason is that your visitors should have some options for where they get their books. With BookLinker, you provide your affiliate ID for the three primary book resources on-line, and select which links to display. Any existing affiliate links in your blog will be transformed on the fly to the links you’ve selected. No changes are made to the actual content of your posts, so if you choose to return to a single-affiliate mode, simply deactivate the plug-in or turn off the option to convert the affiliate links of your choice.

What it does

For each book link on a page or post, BookLinker will display a tasteful DHTML pop-up window containing an image of the book cover, and links to each of the book resources you’ve selected. The window displays only when a visitor clicks the link, and can be dismissed with the “Close” button:

Example BookLinker window

When a visitor clicks one of the links, a new browser tab or window opens to the selected page. If you’ve provided affiliate ID information in the BookLinker settings, all of the affiliate tracking will be in effect.


BookLinker installs just like any other WordPress plug-in.

Download and unpack the zip file. The plug-in consists of a PHP file, a JavaScript file, a CSS file, and six image files.

Copy the contents of the “booklinker” folder to a new “booklinker” folder in your blog’s wp-content/plugins directory.

In the administration panel, go to the Plugins menu and locate “BookLinker” in the list of available plug-ins. Click the “Activate” link, and your installation is complete.

If you have problems with BookLinker, you can de-activate it from the Plugins menu, or delete the “booklinker” folder from the plugins directory.


After you install and activate the plugin, go the Settings menu in the WordPress administration panel and find “BookLinker.” Click the “BookLinker” link to set your options:

BookLinker Options

Affiliate IDs can be entered for IndieBound (the network of local, independent booksellers), Powells (the giant Portland, OR, bookseller), or Amazon (surely you’ve heard of Amazon …). The IDs you enter will be used to build the affiliate links in the BookLinker window.

To display book covers, you’ll need an API key from LibraryThing. Without this key, BookLinker will still build the affiliate links, but it won’t show a book cover. You can get an API key by joining LibraryThing and requesting one at the API Keys page. It’s free and easy, and should you be so inclined it gives you access to some of the most interesting projects that combine the web with books.

You can choose which links to convert to BookLinker links, and which links to display in the BookLinker window. Again, it’s all about choices, and how your visitors interact with books and the web.

Click the “Submit” button after making your changes, and your set to go!

Using BookLinker

If you’ve already been using your affiliate program’s tools to create links to books, you don’t have to change a thing. Keep generating the links from the Amazon, Powells, or IndieBound affiliate pages, and BookLinker will take care of the rest.

If you wish to create native BookLinker links instead of starting with an affiliate link, you can use this pattern:

<a href="[isbn]" rel="BookLinker">My Link</a>

where “isbn” is the 10 or 13 character International Standard Book Number for the book you want to link. (Hint: the ISBN is prominently displayed on the IndieBound, Powells, Amazon, WorldCat, and LibraryThing pages for most books.)

If you want to selectively leave some links unconverted (for example, Amazon affiliate links to non-book items, or links to specific editions of books available only through certain retailers), simply add “rel=’NoBookLinker'” to the link:

<a href="[URL]" rel="noBookLinker">My Link</a>

Affiliate links with “rel=’NoBookLinker'” will be ignored by the conversion process.

And that’s about all there is to it!

Here’s a sample link, generated from the link builder and transformed by the BookLinker plugin into a link to other book services:

The Music of Failure

If you have questions, concerns, or feedback on this plug-in, leave a comment on this page or anywhere else on the site, or drop me a line. This is very much an early-alpha release, so there are probably bugs to be squished; I plan to make a more mature release available through the WordPress plugin directory after a little more testing.

Like this plugin?

Feel free to drop something in the tip jar:

And honestly, I’d be just as happy if you saved my tip by picking up a book at your local independent bookseller (check IndieBound for the one nearest you!). And say “Hi” to the bookseller for me!

23 thoughts on “BookLinker

  1. I installed this and my sidebars did strange things as soon as I activated it. The spacing skewed and much of the info disappeared. I’m guessing it’s got something to do with the specific template I’m using, which you can’t plan for, but I thought I’d let you know. Nifty little thing though!

  2. Yes, yes, yes, yes, yes, YESSSS! THANK YOU – this is just the sort of thing I’ve been looking for!

    (…and I am already imagining about combining or borrowing features of the Open Books Data plugin and / or the Adaptive Blue Smart Links plugin….)

    I am currently using Smart Links to “give the gift of choice” (& enhanced book information) to my readers, but it tends to bury the library and Indie Bound options. This may help me make the leap out of Amazon’s gravity into the larger book/web universe!

  3. There is something in the booklinker javascript that seems to be conflicting with the font changing script on my site. Additionally, while the code works perfectly with existing affiliate links, I can’t see to get it to work with the ‘My Link‘. The link that is generated from that is:


  4. Also, I’d like to remove the initial cover in the popup as I put the cover in the blog post. I removed this line ‘ var libraryThingDevKey = “”;’ but removing that prevents any of the links to load.

  5. My publishers have been asking me to convert my Amazon links to multiplie source links, and I’d hoped BookLinker would do the job for me automatically, but I don’t think I can get it to work for me.

    For one thing I don’t want to get enbroiled in OpenBook or LIbraryThing, so I’d ratehr turn off the cover display and resize the dialog box to be smaller, and I can’t make this happen with the menus or by tweaking the code.

    For another thing, the plugin breaks the spacing in my header bar.

    And finally, it doesn’t work smoothly…the screen blanks out for an instnat while the Booklinker dialog comes up, and it has an overall rickety feel.

    I hope you do keep working on it and smooth it out for wider use.

  6. Any way of adding other bookstores (or chance that you might in later versions?) I’m located in Canada, and would like to be able to give my customers access not only to IndieBound but to Chapters/Indigo (our local equivalent to the big box stores, with huge selection, and far more reliable than Amazon Canada).

  7. Hi! I love the plugin and think it works great..except it’s not pulling book covers. The links work..just not pulling covers. Am I missing something?


    — Anna

  8. I’m testing this for a new site, and the Amazon and Powell’s links go to “page not found”, and the image on the popup is broken. Any ideas on correcting?


Leave a Reply

Your email address will not be published. Required fields are marked *

3 × 3 =