Today I upgraded this site to wp 2.1. I was planning to delay this for some time but I needed to try out the new features for a project we are completing. We are on the verge of delivering a WordPress-based site to id.net, and they will definitely need the new version.
There was a momentary crisis as the headings on the sidebar lost their styling but this took about five minutes to fix. The quick glance that I took suggested that there was a new div named catlink which was the source of the problem. It is a more logical arrangement now, so it took one minute in the style-sheet to assign the correct style.
While I was doing this I took a look at some more plug-ins and installed several that I probably need here, and will definitely need for other projects. I installed Ubernym, which expands acronyms and abbreviations, as well as automatically adding links to selected words.
Finally I installed the latest version of UTW, which almost works with 2.1. UTW is absolutely indispensable to this site, and to the one we will be delivering. I added an experimental fix to one of the php files which is supposed to fix the current bug and not add any more. This means another week or so of logging into Christine’s site every day to see if there is another new version, and to check her cheese and soup.
While I was doing all of this, I finally took the time (had the time) to work out why the search function wasn’t working. The answer lay in the fact that this site has a static front page which lives outside the theme folder. This page is home.php and it lives in the root folder of WordPress. It is called by a line in the .htaccess file which tells wp to open the site using home.php and (if that does not exist) to use the standard index.php.
The searchform.php page contains the line:
<form class="sideform" method="get" id="searchform" action="<?php bloginfo('home'); ?>/">
which causes wp to try to load the results into the home page of the site. In my case it cannot do this because the home page of the site does not contain the theme information in needs.
Eventually I changed the line to this:
<form class="sideform" method="get" id="searchform" action="<?php get_bloginfo('url'); ?>/index.php">
and it worked. Note the subtle change of function. Not switching functions wasted an hour of my life!