LnBlog 0.6.5 "No need for config.php"

Well, I've finally done my lst-minute cleanup and my highly irresponsible testing, resulting in LnBlog 0.6.5 now being available for download. You can grab the ZIP archive here, or get the documentation, checksums, and all that good stuff from the download page.

Before I list the changes, I'd like to thank MoonMind for providing lots of feedback and bug reports.. Thanks also to Ben Schorr for the bug reports. Improving software is always easier when you get helpful feedback.

There are a number of noteworthy changes in this release. First, it is important to note that the config.php file format has changed. This means that you must upgrade your blogs immediately after uploading the new version. To do this, login to your LnBlog administration page, enter the path of the blog (the same one you gave when you created it) in the "upgrade to current version" box, and click the upgrade button. You must do this for each blog you have.

The reason for this change is to facilitate changing the LnBlog installation path/URL and the blog URL. In older versions, these paths and URLs were stored in the config.php file in each directory. However, since these paths were computed automatically, there was no easy way to change them. Now, the config.php files simply include a pathconfig.php file which is located in the blog root. The blog root is calculated at run-time based on the type of directory, i.e. how far it is from the blog root. This allows you to more easily adjust these paths and URLs. Of course, most users won't need to do this, but for those who do, it is now easy. There's even a graphical interface for it. You can find the link on the weblog settings page.

The other noticable changes have to do with plugins. The new version of DisableComments is standard in this release. This version includes a feature to automatically disable comments and trackbacks on posts more than a certain number of days old.

I've also added two new plugins. The first, which is disabled by default, is the PrivateBlog plugin. When loaded, this allows you to set a list of users who are allowed to read the blog. Any user who is not on this list (and can't post to the blog) will simply be redirected to the blog login page. Not an idea solution, but it's more of a proof of concept than anything else.

The second new plugin is ContentBan. This plugin allows you to create files which contain lists of regular expressions to ban. You simply specify the regular expressions, one per line and complete with delimiters and options (using PHP's PCRE syntax), and any comment or trackback that matches one of those expressions in any of its fields will be refused. Of course, you should use this with care, as it is easy to be overzealous in your banning. Also, an ill-formed regular expression can cause errors that prevent anyone from posting.

Lastly, there's also a small interface change. I thought the administration sidebar panel was getting crowded, so I created a new event for sidebar plugins to capture. There is now a separate sidebar panel for plugin configuration and configuration links generated by plugins. Hopefully, that will make things slightly cleaner.

That's pretty much it for the interesting changes. The rest are mostly small bug fixes and expanded documentation. See the change log for full details. As usual, if you find any problems, please e-mail me or leave a comment.