OxyScripts.com
Menu spacer Home Tutorials Articles Code Forums irc.freenode.net #oxyscripts
Main (PHP)
Home Forums PHP News PHP Tutorials Articles PHP Code Snippets Contact Us Sysadmin Resources Books Template Shop
3rd Party Streams
SlashDot PHPDeveloper.org PHP.Net
Resources
PHP Manual MySQL Manual Smarty Manual PEAR Manual PHP-GTK Manual Symfony Manual
Code Snippets
Authentication Database Graphics HTTP Miscellaneous Time/Date
Affiliates
Scripts TutorialMan TutorialGuide CodingForums.com PHP Scripts Cheap Web Hosting Affordable Web Hosting Dreamweaver Templates

Search This Site :     PHP Function Reference :
 

Joomla Customization

By admin (2008-09-11. 7571 views.)
I have been working on a project that was spec'd to use Joomla as the underlying CMS.

There are a couple of parts to any Joomla project:
- template customization
- data storage
- modules
- article editing

Template Customization

This is a pretty standard step for Joomla projects. Take a template that is at least kind of close to your new layout, copy it and start modifying the your new template.

I would have like to have worked on some nice clean layout for this. Instead, but I wonder if not typical, the new layout needed to support about 20 different screen layouts. The typical template handles 1. Yes, you can move item groups from one part of the page to another, but the parts of the page are defined.

So, what I ended up doing was ripping apart the index.php file of the template and handling a giant switch statement based on the layout that a particular page needed.

It turns out the API for accessing the underlying database is very clean and works. Once I got the idea about handling all the layouts then things worked pretty nicely.

The other underlying part of a template is the new age idea of table-less layouts. Very cool until you try to do something interesting like multiple scrolled sections within a particular layout. The css has to accomodate different browsers and really doesn't work when you get that technically challenging. I ended up with tables for these parts with spacer gifs, horizontal and vertical, that force the layout to be the right size for these areas.

This ends up looking a lot like a PHP project developed before the use of templates like SMARTY.


Data Storage

Joomla provides a simple 2-level data structure, section and category. All 'articles' or pieces of data need to fit into this scheme.

This is a problem when you have something easy like an employee page that has people in different roles with different attributes based on the role.

I ended up with a bunch of categories that really are just links between articles. For example, there is an employee title category where the Joomla title is the person's name and the article content is the text for actual employee title. I am using the built-in Joomla alias generation to match up the title with the bio with the ...

At some point the customer will have their staff maintaining the data in the site. I would not like to be that person.


Modules

There are quite a few modules out there for Joomla. However, there are two problems: 1) what version of Joomla is supported and 2) ANY kind of support, documentation etc...

It's a new project so I pulled the latest Joomla. This means that a large percentage of the modules out there are not available to you. That stinks.

Once you find a module that looks like it may support what you are trying to do, you install it, change the config as needed and expect it to work. I have only run across a few that really work out of the box.

Once you realize it doesn't work you poke around. For some reason you think I will be able to just google this problem and find an answer. Your mind blocks the issue that it took you a week searching google to find the module in the first place. What is the reasonable expectation for finding a fix to your problem?


Article Editing

A big feature of Joomla is the built-in use of editors, like tinymce. Very cool stuff, however a side-effect of Joomla (that you can shut off) is the automatic 'cleaning' of article content.

This means your really cool WYSIWYG article layout will be completely mangled by the editor once you hit Save.

For me that means pulling all of the formatting/style/css out of the article and into the index.php template; shutting off the auto cleanup by the editor and effectively storing text blobs in the article.

Seems kind of silly.


Summary

I am not sure what Joomla ends up offering a complex web site. If you have some vanilla article publisher or other simple design I think it will work out of the box.

If you have a complex design or interesting data element organization then it feels like you would be better off do something completely home grown.
 

 
   Print this page

Top Sponsor
Symantec\'s Norton SystemWorks 2006
Sponsors
CA
Sponsors
AdWords Dominator 125*125
Advertisting

Affiliates
VertexTemplates PHPFreaks CodeWalkers StarGeek DevScripts CGI & PHP Scripts PHP CMS

Shopping Rebates   Sell It 4 You   Flash Page Counters   Get Insured
GPS Tracking Service   Charity Donate Info   Web Site Hosting   VOIP Service

Privacy Policy | Links | Site Map | Advertising

All content on OxyScripts.com is (©)2002-2007

 
Powered by Adrastea - Version 1.0.0. Copyright © Rune Solutions, 2004-2005