Adding a Search Page to a WordPress Website

One of my sites doesn’t have a search box on the home page, and we wanted to go about offering an easy search option. I found this incredibly helpful article: http://codex.wordpress.org/Creating_a_Search_Page — I followed the directions listed under “Using the page.php” heading.

A few notes regarding the posted directions: The first step says to save the file, but not where. Save it to the themes directory under wp-content. That’s where you will upload it in the end. I keep a mirror of the website on my hard drive (makes things like sync’ing files and such a lot easier).

Secondly, you uploaded the new search page template… now what?

Go to the Pages manager, add a new page, and select “Search Page” from the template drop-down under Page Attributes. You’ll find the page attributes module on the right-hand side of the page.

Lastly, there’s no need to add any content to your new search page – it won’t show up. If you want the search page to look/feel different, head over to the Editor (under Appearance), select the searchpage.php file you created, and edit away.

For example, I went back in and choose a different page template from which to base the search page template on. The theme this site uses has a full-width page template that I liked better for this type of page. That was a quick fix tho – same instructions, just replace a different content loop.

White Screen of Death

This fun little problem has occupied me for long enough that I figure it’s time to blog about it. Who knows? It might help someone else!

I’m installing WordPress  into a sub-folder of the root. I followed the 5-Minute install directions, and when I ran the install.php file, it gave me bubkis. This isn’t my first time at the WordPress installation rodeo, but it is my first “White Screen of Death.” Awesome.

Stuff that Does NOT Work

I found the following steps on various web pages, and none of them worked.

  1. Add an .htaccess file to the subdirectory to make sure WP knows to go to index.php.
  2. Remove extra blank lines from the beginning or the end of the code.
    This advice was given A LOT and it didn’t make sense to me at all. Why would that work?!
    I tried it anyway, and much to my relief, it did exactly as I expected… nothing!
  3. Remove the “-” from any theme directories. I actually had one in there, so I removed it.
    This advice is a little silly too… hyphens are perfectly valid characters, but I’m getting to the point where I’ll try anything.
  4. Corrupt plug-ins are also to blame (apparently), but I don’t have any plug-ins yet since it hasn’t successfully installed at all.
  5. I’ve tried various other tips, but I tire of listing the stuff that doesn’t work!

Broken Theme Idea

The most useful site I reference was from BlueHost, and the broken theme idea got me thinking… have I jacked with these settings too much for them to have any hope of working?

I deleted the whole thing, and started over leaving out the themes I want to use for now. I wanted to remove that variable. I also removed the variable introduced Dreamweaver CS3, my editor. Like the instructions said, I used a straight up text editor to update the wp-config file. This last precaution is probably overkill, but I’m wanting to leave nothing to chance at this point! (Dreamweaver does update files when you change file names, after all.)

White Screen of Death. Grrrr…
added .htaccess back in (because that makes sense to me) … still nothing

Permissions

I’ve read and pondered a lot about permissions issues. So, I took to comparing the working installation vs. the broken one. I found two bits:

  1. The wp-content folder needs write permissions.
  2. The MySQL user permissions are USAGE (permission to connect and and perform basic commands only).

Regarding the MySQL user permissions:
WordPress recommends to GRANT ALL permissions. GoDaddy creates the database and it’s user with USAGE permissions. I was unsuccessful in changing that. Furthermore, GoDaddy GRANT access is set to NO.

Still Not Working

I won’t give up, though.