Internet

Waiting for Joomla 1.5 Stable

After months of not touching my school’s Web site, there is finally hope as to when things will get rolling again. Currently, I am running it on Mambo 4.6.x series, which is deeply incompatible with many components and such. Too keep at least the SEF URLs running, I had to hack up one of the Mambo core files, which involved commenting out a certain function that 404 SEF doesn’t like. In other words, my Mambo install is a mess.

I’m anxiously awaiting the release of Joomla 1.5 Stable. Right now, it is up to RC2, which is very good progress. The Joomla team’s says that they will be putting out at least one more release candidate before the final version is ready, but I’ve got some time to spare. Keep it up Joomla!

Implementing The Real Ultimte Front Page

Previously, I briefly illustrated how using a home.php file can allow you to build a custom layout to your WordPress blog’s home page. However, I didn’t really document it well enough for the casual WP user to implement by himself. For the unknowing of my readers, here is a guide to using my (really Rudd-O’s) discovery on your site.

If you already understand the concepts behind this, skip to the download link.

Let’s take a look at Rudd-O’s code again. Try to figure out what it’s doing:

1: <?php $homepage = get_settings('siteurl')."/home/";
2: global $wp;
3: $wp_received_argument = false;
4: foreach ($wp->query_vars as $k=>$v) if ($v) $wp_received_argument = true;
5: if ($wp_received_argument) require(TEMPLATEPATH . "/index.php");
6: else { wp_redirect($homepage);
7: exit(); } ?>

Line 1 gets the address of the blog and adds what we would use to access a static page with a slug of ‘home’.

Line 2 brings in the $wp object, which allows us to figure out if there are any parameters in the URL that we need to work with.

Line 3 sets a simple boolean value of ‘false’ to a variable that we will use to determine if we have recieved any parameters.

Line 4 looks at the $wp object and asks it if there are any parameters. If it finds any, then we set $wp_received_argument to ‘true’, and we will use that in the next line.

Line 5 is where the magic happens. If we have parameters, like the page number variable, then we will load the regular index.php template which will show you the normal blog page. Otherwise, we will continue to line 6 and 7.

Line 6 will run if we don’t have any parameters, which means that we want to show our special home page. We will send a redirect to the browser telling it to go to our static page. Then we quit running this page, since there is nothing more to do anyway.

This is a relatively simple concept. Rudd-O mentioned in his original article that one should add a link to /[wp-root]/page/1 somewhere, like in the header along with the page links for example. What that will do is give WordPress the parameters we need to have the blog listing shown. If you need help adding this link, leave a comment below.

Here’s the fun part. My hacks to Rudd-O’s code will replace the redirection of the original code. All HTML and PHP content is placed within home.php. Now that we are including our content in a straight-out PHP file, and not going back to the database to retrieve a page (via the WP Loop), you can even add a real mini-loop to your front page! You can do whatever layout you want with home.php now. (See my home page, which has the mini-loop, a list of categories, and my Flickr photostream, for an example).

Now that we understand what Rudd-O’s code accomplishes, it’s up to you to use your imagination. Until recently, my email that came upon request included some basic instructions, which read something like this:

Attached is a well-commented version of home.php. Use it to set up your custom layout, but don’t upload it yet.

In order for this to look and function properly on your site, you will need to adapt it to your theme. You will have to make the portion of home.php before my table-based layout look like the code in index.php from the top of the file to just before the loop, and from just past the loop until the end of the template. Remember to close the else statement with a right curly bracket.

Also, you will need to add the /page/1 (or ?paged=1 if you aren’t using pretty permalinks) link to the page list in header.php, which should include code to dynamically change the highlighting of the Home and Blog links.

For those basically familiar with PHP, HTML and some of the simpler CSS concepts, adapting the sample home.php file I am providing should be somewhat easy. If you don’t have such keen skills, you can review the W3Schools’ tutorials on HTML and PHP for a bit of help. (Sorry folks, these days I can’t handle doing the editing for everyone, although I wish I could.)

If you are convinced that you want a home page with a custom layout for your WordPress blog, I have provided an older version of my layout, plus all of the associated logic basedon Rudd-O’s code. As noted above, you will have and want to do lots of tweaking with it to make it look good, so grab the download below, and hack away.

 Download sample home.php layout »

Help Askimet – Don’t Use Recheck Queue Option

According to some friendly message present within a part of the Askimet interface, comments that you mark as spam will be submitted to the free service to help make it better. Most people don’t realize, however, that when they click the Recheck Queue for Spam link in the Moderate Comments screen, they are most likely just having Askimet filter the spam comments over again. Help Askimet out buy clicking Mark all as spam, and submit those spam comments to the folks at Automattic to make the service smarter.

Another Flavor of Mint

So far we have the Mint stat-tracking software, the MintPages.net designers’ community, and now the Mint finance tracking service. Although it is an invitation-only service, it looks promising. Want to help me get Minted faster? Click below:

Mint | Free, Simple Personal Finance Software

Why I Don’t Follow

Throughout the blogging world there is a growing practice to get rid of the rel=”nofollow” addition that WordPress adds to links in comments. I agree that it’s a great way to give commenters an incentive to write comments (they get their share of PageRank value). However, there is a specific reason I don’t “follow” the crowd: comment spammers.

Askimet (the hosted comment spam filtering service from Automattic, the creators of WordPress) is very good, but it’s not perfect. Almost every day last week there have been some of the newer forms of spam comments slipping through Askimet, and along with them came undesirable links. As long as I keep comment moderation turned off (allowing a good majority of legit comments to get through safely), the nofollow code will prevent the spammers’ sites from getting my precious PageRank.

Note: I only nofollow links in comments and trackbacks. If you are linked to from one of my posts, like the link to Chris’s blog below, then you are in safe territory.

Related link: Thursday Thoughts » Solo Technology

IMified: Truly Simplistic, Undeniably Useful

Starting at registration, IMified is the easiest Web 2.0 service to use. Not many sites that cross the Educated borders are talked about like this, with good reason.

From second one, I realized that IMified is truly simplistic. In fact, the registration process is as simple as this: send an instant message to one of the services IM accounts (AIM, Yahoo, MSN, Google Talk, ICQ, and maybe one or two more), and then go to the link it sends back to tell it the absolute basic info about you (the time zone is the only necessary one). Once that’s done, you can decide what you want to be able to do with IMified.

From the IMified Web site, you can select which services you will be able to access from your Main Menu. These include Google Calendar, Twitter, and the various services that IMified provides (Reminders, Notes, Todos). It is all very simple to set up, and almost as easy to use.

Other than the downtime of their bots upon occasion, I have no gripes towards IMified. It’s all very simple and uncomplicated. Perhaps this could be a true Web 2.0 service.

Visit IMified

Blogging Annoyances

David Peralty has given me enough. His BloggingPro blog is nothing but a waste of his time (counter-intuitive to this post, but relevant), my time, his Web host’s resources, and my computer’s resources. The writings on his blog are worth next to nothing, which makes me wonder why I even read them. It’s almost as if his blog were an RSS reader with a bit of AI built in.

Every day I choke through my already long and distracting list of blog posts in my feed reader, only to see more of his constant quoting and lack of original content. Davey seems to be keeping to the list of The Nine Essential Posts that Every Blogger Should Know, but not actually writing anything of his own for us to quote.

While it is true that the blogosphere is all about networking, Mr. Peralty has gone too far. He also violated my blogging (only) about blogging rule, which I personally think he should take a look at. While he’s reading, he might actually have a sudden brainstorm, but he’ll probably just quote half of my post instead.

Internal Site Searches: Horrible, Useless

Even though SMF is a wonder of a product, its search functionality is almost as bad as the rest of the crowd. This also goes for the majority of sites out there that aren’t searchable through some kind of Google-powered engine (like the MTA’s site). but there’s another twist to it.

Looking for a particular topic on one of my favorite forums, I performed a search using SMF’s search box, but it got me nothing useful (in my first attempt – it seemed to have learned a few tricks since then). Since I am subscribed to the topic, the next best idea is to use Gmail to find it. Lo and behold:

Gmail with the search results I need, not useless errors.

The wonders of the Web amaze me, but not as much as why I have to use my own stuff to get things on another site.