Archive for the ‘Wordpress’ Category

Computer out of action

Thursday, March 25th, 2010

My computer is currently out of action. Had a lot of trouble with it ever since I built it 2 years ago and it’s only emerged recently that it seems to be due to the motherboard. After a LOT of wrangling with MSI, who make the motherboard, they have finally agreed to repair or replace it for me. After all the trouble though I will probably never buy a product from them again – they are great products and at great prices but their post-sales support is dreadful!

Anyway, this means I don’t have access to my PC or my files and tools so ThinkTwit development is on hold at the moment. Hope to start back up with it in a couple of weeks once MSI has sorted my motherboard out. I apologise if this affects anyone but please feel to write here if you need any help or advice.

ThinkTwit Update 1.1.4

Wednesday, March 10th, 2010

I’ve added another update to ThinkTwit as of yesterday; this includes use of ordered lists (ol) instead of unordered lists (ul) as it is more semantically correct, removed some old code left over from some time back that was no longer necessary, and added the ability to output usernames instead of Twitter names.

The roadmap has been updated – check it out if you want to know what features will be coming soon, and feel free to provide suggestions.

AJAX-ifying Wordpress Widgets

Thursday, March 4th, 2010

I recently found the need to give AJAX abilities to a Wordpress widget. Notably, I had a request from Kjell Martin Bovre of Scribo.no to allow ThinkTwit to update when used with a caching engine, for instance WP Super Cache. Caching engines work by converting the pages of a site in to HTML and, rather than loading the website code using calls to its database, calling these pages directly when a user makes a request.

The first time that a user visits a site with a caching engine the pages they visit will be converted to HTML. After a period of time these pages will get updated, but if you have a particular item on that page that should be updated more often this will not happen. One way to ensure this item is updated correctly is to enable it to use AJAX. The AJAX code will get called whenever the site is loaded, even in its HTML format – therefore it will work even when cached as the Javascript will make a server call, the server will respond with the up-to-date data and the Javascript will then update the HTML within that page.

After a good few hours research I was able to find a site that helped me do most of this, but there were some errors and it did not work with Wordpress widgets as it would break their ability to create multiple instantiations. It was therefore necessary to update the code to allow this, so I thought I would just write a quick and easy guide to writing AJAX capable widgets to allow other developers to quickly and easily resolve this issue. I hope it comes in handy!

(more…)

Minor ThinkTwit Update 1.1.3

Thursday, March 4th, 2010

Yesterday I posted a small update to ThinkTwit to fix some internal code issues, update the readme and update a screenshot to correctly represent recent changes. As usual, feel free to provide feedback and I’ll do what I can to improve it!

ThinkTwit Update 1.1.2

Wednesday, March 3rd, 2010

I’ve today updated ThinkTwit to version 1.1.2 with 2 key changes:

  • Added support for caching engines
  • Added support for CURL

These changes were requested by ThinkTwit users but will no doubt be useful to others out there. The no-caching support uses AJAX (via jQuery) to output code from a pure HTML file (the format in which the cached page is stored) and the CURL support offers an alternative to the standard URL get method which may cause the following error (or similar) if URL file-access is disabled:

Warning: file_get_contents() [function.file-get-contents]: URL file-access is disabled in the server configuration in /..../wp-content/plugins/thinktwit/thinktwit.php on line 145

Warning: file_get_contents(http://search.twitter.com/search.atom?q=from%3Adeleted&rpp=3) [function.file-get-contents]: failed to open stream: no suitable wrapper could be found in /.../wp-content/plugins/thinktwit/thinktwit.php on line 145

Additionally I have added debug messages to assist in locating errors when calling the method that requests the Twitter feed.

I learnt some valuable lessons about creating AJAX capable widgets and maintaining their ability to multi-instance, so I will post a blog on this shortly.