How to add a JomComment comment counter to your Joomla!-powered blog

Video on building a blog with Joomla

As promised, here is an article about one of the things I learned while upgrading How To Joomla to Joomla! 1.5. I have been using JomComment on How To Joomla for quite a while. You may have noticed that besides having the usual "Add Comment (2)" link at the end of each article introduction, I have also added a comment counter and link along with the "Written by...," date, section, and category, as shown in this image:

JomComment Counter

With the ability to override Joomla!'s core content output in a Joomla! 1.5 template, you can do virtually anything within your template. This tutorial demonstrates how to use template overrides to insert a JomComment comment counter anywhere you want to add it in your articles.

Step 1: Override the content component output in your template

Without getting too deep into how you override the content component's output in your template, I will try to give a brief overview of this process. The Joomla! 1.5 framework gives you the ability to override the HTML output of any core component and third-party components that are built to support this feature. The Beez template that comes pre-installed with Joomla! 1.5 is a great example of what can be done with template overrides, and the best place to start if you are building a template from scratch is to copy the "html" folder from the beez template to your template. (Warning: doing this could dramatically change the appearance of your site, so please try this out on a test server before attempting it on a live site!)

Once you have copied the html folder from the Beez template folder to your template folder, the template overrides for the content component can be found at "yoursite.com/templates/yourtemplate/html/com_content". There are four files that you need to work with in order to add the JomComment comment counter:

  • article/default.php
  • category/blog_item.php
  • frontpage/default_item.php
  • section/blog_item.php

Step 2: Get the number of comments for the article

The following counter code comes from the JomComment component. Add this code anywhere in each of the four files listed above.

item->id);
?>

This little bit of code does two things. First, it references one of JomComment's helper php files that contains a function, jcCountComment, that counts the number of comments for the article whose ID is passed as a parameter to the jcCountComment function. The second line gets the number of comments for the article by passing the article's ID as $this->item->id, and it stores that number in the variable $jcCount.

Step 3: Display the number of comments and link the number to the comment form

Now that you have the number of comments for the article, you're halfway there. You still need to link the number to the comment form for the article. For HowToJoomla, the following code is used to link to the comment form:

Add Comment 
()

The first line is an image tag that displays an icon from the Fam Fam Fam silk icons collection. The href for the link uses the php parameter $this->item->readmore_link to link to the article, and adds the anchor #comments to link directly to the comments form for the article. Then, I used the $jcCount variable in parentheses to display the comment count as the link to the form.

Questions/Comments

As always, if you have questions or comments please feel free to post them here.