A recent visitor to the CB pointed out a problem on some of my older entries.  It’s something I was expecting to have to fix but got sidetracked and never got around to.  Basically with the upgrade to WordPress 2.5.x, there are a couple of new settings in the wp_config.php file which have WordPress to use UTF-8 character encoding to better handle non-English langauges/characters.  However as older versions of WordPress automatically converted standard quotes/astrophes to their fancy/curly versions and those fancy versions are dependent upon which character encoding scheme they are written in.  Since I wasn’t sure how many entries I had that are affected by this and I wanted to leave the UTF-8 encoding enabled; I ran this SQL query to fix at least some of the problems: UPDATE wp_posts SET post_content = REPLACE(post_content,''','\'') WHERE post_content LIKE '%'%';

There are probably other characters I need to fix yet, so if you happen to see something like hieroglyphics on this site or other gibberish, let me know what entries you found it on so I can fix them.  And my thanks to Lynsey for prompting me to fix these entries.

I use Rob Miller’s excellent Now-Reading plugin to track all the books I’ve read and am reading here at CoffeeBear. After my recent site upgrade I decided to tweak the single book template for my library. I noticed that the latest version of Now-Reading allows you to note who read a given book on multiuser sites. As my wife occassionally posts here I wanted my reads to be marked as mine, but the default output of the function Rob implemented only displays the user’s login name. Seriously Rob, what were you thinking? If you did not want to give end users the option to select how they want their name to print out why wouldn’t you go with display_name?

I looked at the code Rob used and with a little help from the Practical PHP I hacked together my own function based on Rob’s. By default print_reader2 works the exactly the same as print_reader1 but by feeding it an additional parameter, you get your choice of what to use to display as reader’s name:

  • 0: Prints out the user_login aka the username you use to log into WordPress.
  • 1: Prints user_nicename, appears to simply be an all lower case version of the user’s nickname2.
  • 2: Prints display_name, from the “Display name publicly as” field in your WordPress profile.
  • 3: Prints first_name, from the “First name” field in your WordPress profile.
  • 4: Prints nickname, from the “Nickname” field in your WordPress profile.
function print_reader2( $echo=true, $reader_id = 0, $display = 0 ) {
	global $userdata;

	$username='';

	switch($display) {
		case "1": if (!$reader_id) { get_currentuserinfo(); $username = $userdata->user_nicename; } else { $user_info = get_userdata($reader_id); $username = $user_info->user_nicename; }; break;
		case "2": if (!$reader_id) { get_currentuserinfo(); $username = $userdata->display_name; } else { $user_info = get_userdata($reader_id); $username = $user_info->display_name; }; break;
		case "3": if (!$reader_id) { get_currentuserinfo(); $username = $userdata->first_name; } else { $user_info = get_userdata($reader_id); $username = $user_info->first_name; }; break;
		case "4": if (!$reader_id) { get_currentuserinfo(); $username = $userdata->nickname; } else { $user_info = get_userdata($reader_id); $username = $user_info->nickname; }; break;
		default: if (!$reader_id) { get_currentuserinfo(); $username = $userdata->user_login; } else { $user_info = get_userdata($reader_id); $username = $user_info->user_login;};
   }
	if ($echo)
		echo $username;
	return $username;
}

Side note: WordPress 2.5.1 got released today and it includes a security fix, be sure to update your blogs!

1 At least, I think it does. I’m not a programmer and I only know enough PHP to be dangerous to myself.
2 The WordPress Codex does not appear to define what this field is used for or why it exists, so that’s just my guess.

The library issues I was having appear to be resolved. When I upgraded WordPress, I simply overwrote the existing files (‘cuz I’m lazy) and then I went into my permalink settings and hit the update button (without actually making any changes). This is supposed to be enough to get the plugin I use for the library to reset the permalinks but that didn’t happen this time. I ended up deleting all of WordPress’ core file, re-uploading them, changing my webhost’s configuration to support PHP5, upgrading to the very latest copy of the plugin and re-saving my permalink settings before I was able to get the library working correctly again.

Other Changes

I also noticed when I upgraded/changed themes last time I forgot to add back in the magic codes to have ads from Google AdSense appear in a couple of places on my site. Those are ads are now back, though I do use another plugin to hide them from regular readers and on current content. Basically, if you are just stopping by (e.g. found me via a search engine) you will see ads. If you’ve been here a few times in the past couple of weeks, then you most likely won’t. Mind you these ads aren’t making me rich1, but they do help offset the costs of my online addiction webhosting.

New Theme

Yeah, I wasn’t a big fan of the previous theme I was using but it was good enough for a short term solution. The current theme2 is better but still needs more tweaks to make it mine. Things are likely to be in a state of flux until further notice around here. Things I still need to do:

  • Add one or more random photos to the sidebar or possibly the footer.
  • Work up a better header image.
  • Style the footer more to my liking.
  • Fix the sidebar formatting issues in IE3

1 I haven’t even had enough clicks on the silly Google AdSense ads to get paid yet
2 In case you happen to be curious, it’s a slightly tweaked version of the Shades of Gray style for the Sandbox theme.
3 Odds of this happening are tiny. I only use IE at work and then only rarely. If the slight offsets in the sidebar offends your design sensibilites, get Firefox!

I’ve finally upgraded CoffeeBear.net to WordPress 2.5. I’m in the process of getting everything settled in properly and at the moment my library is working quite so nicely. At the moment the link for the library at the top of the page does not work (you’ll get a blank page) however if you go to any of the books in my sidebar you’ll find a working link to the actual library page on the individual book page. Also the nicely rewritten links for the library aren’t working correctly either. *shrug* Not sure what’s going on there, but I’ll post again and/or update this post once I’ve sorted it out. If you happen to notice any other problems with this site, please leave a comment under this post so I know to look into it.

Thanks!

I’ve been working on some stuff behind the scenes here at CoffeeBear.net with the intention of eventually upgrading the site’s backend and developing a new theme for the site. In the process of doing all this behind the scenes works, I’ve been trying out new plugins and wanted a quick way to check my server’s setup without putting a page for just anybody to view (e.g. creating my own phpinfo page). I found this a plugin by Designpraxis which basically adds the output from phpinfo to WordPress’s admin panel. Unfortunately, it buries the page/info under the Options panel. So I hacked it up to move the output under the Dashboard panel. Then I thought, it would be great if it could also list off all the plugins my site uses and what version of those plugins. I already have the pluginsUsedPlugin installed but it didn’t support plain-text output. So I hacked it up to output in plain-text, hacked up Phpinfo to include that plain-text output and then there was much rejoicing.

I thought it only fair to share my hacks, so enjoy or not as you choose. I’m sure there’s a more elegant way to code these changes, but I am not a programmer so if you use these and don’t like how I changed them… Well, you just have to suffer then. :p Feel free to ask questions but keep in mind:

  • I’m not a programmer.
  • These plugins aren’t originally mine. I don’t know much about how they work. I only know enough to hack together my changes.
  • If my hacked versions don’t work for you, try the originals before asking me for help. The people who made the originals should have a better idea of why things work/don’t work.

CoffeeBear’s Hacked Plugins