Onward and upward with this nifty little CMS. I hope I wasn’t too negative in my first installment. It’s not that Joomla does things wrong, it’s just that sometimes, things are not as obvious as they could be.
One thing that puzzled me at first was the control over article details like
- showing the author
- showing the creation timestamp
- showing the modification timestamp
- showing the pdf/print/e-mail icons
I could see that I could set it at the article level. So I could choose to hide or show the author of an article. Great — I like that level of control. But controlling these things at that level should be an exception. If you look at the “Parameters – Advanced” when editing an article, can you imagine setting all of these options for each article? I noticed that each defaulted to “Use Global”. Promising… so where are the global settings?
Not where you might expect. I really thought they’d be under “Site” in the administration interface. Wrong. It’s under “Content -> Article Manager -> Parameters”. This was probably the last place I would have expected to find it. The toolbar in the administration interface typically has actions like “Save”, “Apply”, “Copy”, “Delete”, “Cancel”, etc. It’s rare that it leads to a submenu or an entire set of controls. But once you know it’s there, you can exert centralized control over all the articles on your site. Very nice.
Further, you have the option to set these parameters for a menu item. So for instance, if you have a menu item configured to display articles from a particular category, you can set the parameters for the articles displayed on that menu item. Could come in handy if one category is full of time-sensitive articles that need created/modified times, and another category is full of “evergreen” content that doesn’t need these timestamps.
This one really puzzled me. A common practice on a news site is to display a list of articles, each with a headline and an abstract (an introductory block of text, typically about one paragraph in length) with a link to the full text. This proved harder than expected with Joomla. When I set up a menu item to display 4 intro articles, I thought I’d get just the first N characters of each article — maybe about 150-200 characters or something. Or maybe just the first graf of the article. It seemed that no matter what I did, I got basically the entire text of the article.
That is, until I found the “Read More” button in the article editor. You can set your own breaking point in the article text. This is actually pretty nice. While I wish that the software could do this for you automatically (understanding that a machine will never do this as intelligently as a human), it’s nice to be able to explicitly set the point where the software will insert a “read more” link.
HTML Page Title Management
I have to say that this was one of the more disappointing issues in Joomla. I expected Joomla to be able to handle some basic title formatting options for me out of the box. I guess it does, but the level of configurability leaves a lot to be desired.
All I wanted was “Page Title – Site Title” But I quickly found out that Joomla doesn’t allow for putting the site name into the title. I’m sure that SEO fanatics would probably tell me why I don’t want the site name in the title of the page, but from the standpoint of being end-user friendly, it makes perfect sense to me. When somebody bookmarks my page or a search engine presents a link to a page in my site, I’d like to have the name of the site in the label of that hyperlink or bookmark.
To make matters even worse, Joomla does some funny things with titles. Let’s say I have a category called “Red Hat”. I file articles into that category and then I set up a menu item called “Red Hat” that will present articles from the “Red Hat” category. Joomla creates the page title as “Category Title – Page Title”. So for my example menu item, the HTML page title would show up as “Red Hat – Red Hat”. Not exactly what I was hoping for.
Further confusing things is the “Page Title” option under “Parameters – System” on the menu item editor. You could override that, but it does not fully control the HTML title — it changes the “Page Title” portion of the generated HTML title. So if you set our example menu item’s Page Title to “foo”, you would get an HTML title of “Red Hat – foo”. Still not the level of control I was looking for.
So I offer two solutions to the title management problems:
- to get the site title into your HTML page titles, install and use the Title Manager extension by Ercan Özkaya
- to stop category article layouts from displaying both the category title and the page title, you have to edit the Joomla source. In the file components/com_content/views/category/view.html.php, there is a line
$document->setTitle( $category->title. ' - '. $params->get( 'page_title'));
change it to
$document->setTitle( $params->get( 'page_title'));
I try to avoid going into the core code whenever possible, but I couldn’t find another way to accomplish this.
I think I’ll wrap this up with part three of this series.