Upgrade WordPress Plugins Automatically

One of the challenges of keeping a WordPress blog running smoothly is making sure all installed plugins are updated promptly when new versions become available. WordPress 2.5 makes this easier than ever by adding an Automatic Upgrade feature.
As shown in the following illustration, the a note in the Plugin Management administration panel indicates that the Bad Behavior plugin (which I rely on to keep the spambots off my blogs) has been updated.

I have two options for bringing my blog up to date:
- Download version takes me to the Bad Behavior page on the WordPress.org’s Plugin Directory so I can read about and download the update. This functionality has been around for a while — at least since WordPress 2.3 — with all plugins that support it.
Upgrade automatically takes the update process a step further. When I click this link, WordPress automatically downloads, uncompresses and installs the new version of the plugin for me. It displays its progress as it works, as shown here, and confirms that the upgrade has been successful.
I’ve been using this new feature for a few weeks now and it’s worked like a charm. It’s a heck of a lot easier than upgrading the old fashioned way.
Bad Behavior/Digg Conflict

This morning, while experimenting with a Digg link on my personal blog, I got an unusual message from Digg saying:
This link does not appear to be a working link. Please check the URL and try again.
Huh?
The link, of course, was fine. It was a link to the home page of my site.
Why is this a big deal? Well, being “dugg” can increase the amount of attention your Web site gets among blog readers. A well-dugg post can attract many, many hits. Some of those people might turn into regular readers.
(You can read my experiences with being dugg here and here. Although things can get a bit out of control when you end up on Digg’s home page, I lived through it without any permanent damage.)
Since I was on Digg, I decided to do a Digg search for the error message. The article I found, “Bad Behavior 2.0.11 Wordpress Plugin Blocking Digg Submission” on GeekTeks.com answered my question and provided a fix.
Apparently, when the author of Bad Behavior updated his plugin and spam site references, Digg was blocked as a legitimate site. The solution is to add Digg’s IP address to Bad Behavior’s whitelist. I just did this on all sites running Bad Behavior and the problem has gone away.
Miraz and I highly recommend Bad Behavior in our WordPress book. It not only helps prevent spam comments from being posted to your WordPress blog, but it also reduces the amount of hits to your MySQL database, thus reducing site congestion and theoretically speeding up access to your site.
Do you use Bad Behavior 2.0.11? If so, read the above-referenced article and follow its instructions to fix the problem.
My essential WordPress plugins

After showing my new MacTips Archive layout to a friend and fellow WordPress user, I was asked which plugins I use on that site. Here’s the list. Descriptions and links are taken straight from the Plugins page in the Dashboard, edited to remove non-essential content.
- Bad Behavior
-
Deny automated spambots access to your PHP-based Web site.
- Democracy
-
This poll plugin is easy to use, install, and manage. It uses AJAX to load data, making it quick and fun to use.
- Democracy Widget
-
Adds a sidebar widget for use with Andrew Sutherland’s Democracy Poll widget.
- Popularity Contest
-
This will enable ranking of your posts by popularity; using the behavior of your visitors to determine each post’s popularity.
- Related Posts
-
Returns a list of the related entries based on active / passive keyword matches.
- Secure and Accessible PHP Contact Form
-
This powerful yet easy-to-install contact form features exceptional accessibility and usability while still providing extensive anti-spam and anti-exploit security features.
- Social Bookmarks
-
Adds a list of XHTML compliant graphic links at the end of your posts that allow your visitors to easily submit them to a number of social bookmarking sites.
- Spam Karma 2
-
Ultimate Spam Killer for WordPress.
- Subscribe To Comments
-
Allows readers to receive notifications of new comments that are posted to an entry.
- WordPress.com Stats
-
Tracks views, post / page views, referrers, and clicks. Requires a WordPress.com API key.
- WP-EMail
-
Allows people to recommend / send your WordPress blog’s post / page to a friend.
CommentLuv = SpammerLuv?

One drawback to a WordPress plugin.
Back in November, I wrote a post about a new plugin I’d installed on my two main blog-based sites: Maria’s Guides and An Eclectic Mind. The plugin is called CommentLuv and it automatically retrieves and displays a link for the last post a commenter added to his or her blog.
Here are some examples from the post I wrote about CommentLuv, where I invited people to try it out.
The idea behind CommentLuv is to encourage people to comment by automatically linking back to their blog. I think it’s a great idea — when used by people who have real content to contribute in comments.
On the surface, CommentLuv is extremely attractive to spammers who keep blogs. Not only can they include a relatively normal looking comment with a link to their blog when they enter it in the Web site field of the comment form, but they also have an automatic link to their most recent work. Two links for the time it takes to post one, right? And that second link can give readers an idea of what their blog is all about by including the title of the most recent post.
What these people don’t seem to realize is that the CommentLuv link is created with a “nofollow” attribute. So if they think they can improve search engine optimization (SEO) by adding links to their sites on the sites they comment on, they’re wasting their time. The links are not recognized by Google or any other search engine or automated tool.
But what I’ve seen lately is a number of the same people coming back, again and again, to post comments like “Great post! I’ll keep checking in.” These comments usually appear on recent posts and, with some commenters, they appear several times a week. This gets past my spam prevention software and ends up on my blog.
While most people wouldn’t mind the added comments with their apparently complementary content, this isn’t content. It’s spam. There’s nothing being contributed to the site other than two free links for the commenter. So I delete these comments regularly.
Now I’m not suggesting that you avoid CommentLuv. I still think it’s a great plugin. But I do want users to be aware of its attraction for spammers. On a popular blog, installing CommentLuv could add about 10 minutes a week to your spam maintenance routine — after all, you have to manually decide whether a comment is legitimate or posted solely to attract hits for the commenter’s blog. Adding a regular abuser to your blacklist might be a good course of action.
RSSImport

A WordPress plugin to add links to RSS feeds.
On pages 165-166 of WordPress 2: Visual QuickStart Guide, Miraz and I discuss CG-Feedread, a plugin that enables you to list the titles (with links) of posts on another blog based on RSS feed content. We use the plugin on this site to list content from Miraz’s Mactips.info site and my An Eclectic Mind site.
I hate to admit it, but I never really liked that plugin. It came as part of a package and I was only interested in that one part. So today, while attempting to add the same feature to two of my WordPress-based sites, I looked for a different, simpler solution. And I found it: RSSImport by Frank Bueltge.
RSSImport is a one-trick pony. It enables you to add a list of posts from any RSS feed. There are four options: the number of posts to list, the URL of the feed, whether the list should include descriptions, and whether the post title should be truncated to 30 characters.
You install and activate the plugin like any other plugin. (You can refer to Chapter 7 of our book or consult the documentation that comes with the file if you need help.) Then place the following code in your template file — most likely sidebar.php — where you want the list to appear:
<?php RSSImport(10,
"http://feeds.feedburner.com/mariasguides"
,false,false); ?>
The options go between the parentheses. In this example, I’ll pull 10 posts from the Maria’s Guides feed, exclude the description, and disable the 30-character limit on posts. The result looks like this on An Eclectic Mind. As you can see, I included a heading before the code so the list would blend in with the rest of my sidebar content.
And if you look on the Maria’s Guides site, you’ll see a similar list for an Eclectic Mind. (The two sites used to be one and they’re still somewhat “joined at the hip.”)
I recommend the plugin if you’re looking for a simple solution to list another blog’s posts. But if you want to list multiple blogs’ posts in the same list, CG-Feedread is probably a better solution.
ecto, Revisited

I’ve been using ecto by Adriaan Tijsseling for composing blog entries for my WordPress-based blogs and Web sites for well over a year now. It enables me to keep my blog up-to-date without using the Web-based Write Post form.
Although I’ve written about ecto here and here and I’ve also written about it in our WordPress 2 book, I thought I’d take a moment to bring readers up to date. ecto 3.0 is now pretty far along in the beta process — I just downloaded beta 12 — and it’s shaping up to be a much improved, intuitive blogging tool.
Compatibility
I do need to mention a few things about compatibility here. ecto 3 is a Mac OS X application. Although ecto 2.3 is available for Windows users (ported by Alex Hung), I have not tried it. I’m not sure if the plan is to create a Windows version of ecto 3.0 or not. So for now, its an application primarily geared toward Mac OS users. You can learn more about the evolution of ecto in the article, “Evolution of code.”
ecto also works with more than just WordPress. In fact, it works with all the blogging platforms I’ve heard of — and more. So although I use it with my WordPress blogs, it’s not just a WordPress tool.
What It Does
ecto offers a complete offline editing environment. You can choose from composing/editing with a Rich Text Editor that shows WYSIWYG formatting of your entries or an HTML editor, which lets you code to your heart’s content. SInce I never really trust a Rich Text Editor to get the code the way I want it, I use the HTML editor — although I’m thinking about giving the other editor a try. (Soon. Maybe.)

ecto’s Rich Text Editor

ecto’s HTML Editor, which is my currently preferred view
Either way, the editing window works like most other text editors. It has spell-check as you type, find and replace, and word count features. You can save posts as you work on them to prevent data loss or work on a post over a long period of time. (I sometimes start a post when I have an idea for one, then save it as a draft in ecto and come back to complete it days or weeks later.)
ecto also has tools for inserting and uploading images — with a wide range of options for setting a position and size. I didn’t have much luck with this feature in ecto 2 — although I admit I didn’t try very hard — but it works very well in ecto 3. You can also use a Media window to insert audio, photos, or video into a blog post. ecto inserts or embeds the media properly.
One of my favorite tools is the Amazon Helper. This feature makes it very easy to insert links to items on Amazon.com with links, images, or both. You have complete control over how the link appears. Best of all, your Amazon Associates ID is automatically inserted in each link.
ecto has many customization features that enable you to fine-tune its operations so it works the way you want it to. For example, you can created custom HTML tags and assign shortcut keys and toolbar buttons to them. This makes it very easy to insert any code you like. You can also specify CSS styles and template settings so the preview of your post — or the editing view, if you’re using Rich Text Editing — looks more like an entry in your blog.
But what I think I like most about ecto is its ability to store copies of all of my blog’s entries — and there are over 2,000 of them these days — on my computer’s hard disk. This makes it extremely easy to link to past posts as I compose new ones. It also makes it possible to pull up an old entry, update it, and republish. And offline editing is extremely useful when I travel, since I don’t always have an Internet connection. I can compose a blog entry on a plane or in my hotel room with my little PowerBook and upload it to my blog when a connection is available.
Give It a Try
If you’re not 100% happy with the Web-based post editor of your blogging tool, I encourage you to give ecto a try. There’s a free 21-day trial period that should give you enough time to put it through its paces. I don’t think you’ll be disappointed.
And I don’t think the $17.95 price tag will put you in the poorhouse, either.