Understanding Dynamic Content

Understanding Dynamic Content: A Guide to Possibilities Beyond Basic HTML


One of the basic aspects of Joomla and other content management engines that may be difficult to understand is the concept of dynamic content versus static content.

Let us take a minute to define, in simplified terms, static content and dynamic content.

Static content:  Static content is actually very much how it sounds. Static means "stationary," or, for our purposes, "unchangeable." A good example of static content would be an e-mail. Once you have sent the e-mail, there is no way to change the information that you sent. Let us say that you send an e-mail to your mother that says, "Strawberries are on sale for $3.99." After you have sent the e-mail, you realize you misread the circular, and the sale price is actually $2.99. In order to correct this information, you have to call your "...This is very much how Joomla, or, for that matter, any content management system or CMS, works.  Changing things is easy for someone who is unfamiliar with advanced coding. If you can use the Myspace backend interface to make changes on your page, you can surely use the Joomla backend. Its user-friendly, intuitive layout makes changes a quick process."mother and tell her to disregard your e-mail, because the information was not correct. Then, you have to send another e-mail with the correct strawberry price. Once static content is created, it is difficult to change. If you send that same strawberry price e-mail to multiple people, you must inform every single person that received it to disregard it and acknowledge the new, corrected e-mail.

Dynamic content:  Dynamic content is also very much how it sounds. For our purposes, dynamic means "fluid" or "ever-changing."  It also means corrections/changes will be easier to manage. For example, instead of sending a group of people an e-mail about the price of strawberries, say you decide to put up a bulletin in a place to which you know all the people on your e-mail list frequently go. That way, if there is a correction (say, the price), you can simply cross out the incorrect price and write the update. This way, there is no need to inform everyone of the correction. They will see it on the bulletin board whenever they pass. This is the basic concept behind dynamic content. A change you make to any of your dynamic content will cascade or ripple through the rest of your website wherever that information is shown.

One of the restrictions of static content can be shown in an example from my own personal experience. I run a T-shirt site with a friend of mine. Every individual T-shirt has its own unique qualities and descriptions. But, in general, the prices of all the T-shirts are the same. So, what do we do when my friend and I decide that we want to lower the prices for a special sale or promotion?

If I were using plain HTML for the site, I would have to go into each product page and change the price of every single item manually -- one-by-one. The time it would take to do that, considering that there are about 200 different T-shirts, is, at the very least, daunting.

However, if I have implemented dynamic mechanisms within the site properly, I can simply change one small line of code, and the prices will automatically update on every individual product page. Thus, hours of work are saved.

Mostly, dynamic content is mixed together with static content. Of course, this is done seamlessly, and it would be very difficult to know the difference between the dynamic content and the static content.

Going back to my T-shirt site set-up, I too have a mixture of static and dynamic content, depending on necessity. For instance, I know that each T-shirt has various sizes in which it is available. I also know, because I have a general familiarity with my site's inventory, that the sizes associated with each shirt will not change. Therefore, there is no problem using static content when describing the sizes available for every individual T-shirt.

But, what if the sizes of each T-shirt did indeed change from time to time? I would then need a more complex method of changing the shirt size availability dynamically.

This is where the Joomla backend interface comes in handy. I can organize and categorize each T-shirt into groups. For instance, after I have categorized each product, I can set up my backend to show me all shirts that are gray. Or, I can ask it to show me all shirts that have been recently added to the site. Or, I can tell it to show me only women's shirts -- or, only men's. Then, I can easily change the sizes of shirts, because I have organized them in a way that makes it easy for me to sort through the different T-shirt product pages. Otherwise, I would have to go to the actual code on each individual product page and then, through a process of elimination, change the appropriate information while making sure that other information remains unchanged.

While the actual programming of dynamic content is difficult and best left to proficient code writers, using this technology for your own specific purposes is easily managed with the Joomla interface.

(For very specific information on managing content and pages in the Joomla interface, please see the Joomla 1.5 for Beginners: Part 3 video.)

An excellent way to have a better grasp of the Joomla interface is to think about how you would manage and edit different aspects of your Facebook or Myspace page. Remember that in Facebook and Myspace you have to sign in to each site with a username and password in order to change your information or pictures. You have no way of knowing how the code to generate your change is executed. You simply know that when you upload a picture and set it as your default picture in your profile, people will see the new picture that you have posted on the public portion of your profile page.

This is very much how Joomla, or, for that matter, any content management system or CMS, works.  Changing things is easy for someone who is unfamiliar with advanced coding. If you can use the Myspace backend interface to make changes on your page, you can surely use the Joomla backend. Its user-friendly, intuitive layout makes changes a quick process.

While you will most likely need to rely on an experienced web developer to install a content management system for your site or to customize the interface for your specific needs, you will be able to continue work on your site unhindered by the need to call your Web developer to make a simple change.

Joomla harnesses the power of dynamic content so that the average Internet user can maintain prolific, successful, and ever-changing websites.