5 minutes reading time (941 words)

W3C-compliant Joomla! websites

We live in a world where we have adopted standards in the physical and material world. The software world is no different. Joomla! has also become one of the most popular CMSs in the world and yet it has ways to go before its extensions abide by the standards. But we are hopeful, as a growing number of Joomla! developers have embraced Web standards and we urge the user populace to take notice of this key attribute.

Web Standards

In the Web Programming world, international bodies such as the World Wide Web Consortium (http://www.w3.org/) have developed standards for programming HTML and CSS. HTML and CSS have both evolved into HTML5 and CSS3. In addition there are XML, XHTML and DOM.

w3c-markup-validation-service-1254840924The W3C is led by Tim Berners-Lee himself, who is credited for inventing the World Wide Web. This organization has both academic and industry backing including Apple Inc., Adobe, Sun Microsystems, America Online and Microsoft. Before there was a Facebook, there was Tim's goal of making the WWW to be a work-friendly, play-friendly and social-friendly cyberspace. In short, the W3C develops open specifications to enhance interoperability of web products.

logo_ecmaIn addition to W3C, we also have the European Computer Manufacturers Association International (http://www.ecma-international.org). ECMA International is dedicated to standardizing information and communication systems, from programming languages, wireless communications to environmental design considerations. ECMA International is responsible forECMAScript, a JavaScript standardthat works hand in hand with the DOM standard.

Why do we care about being standards-compliant? For starters, both people and machines benefit greatly from standards-compliant software. Search engines do a better job in parsing a website if it is written in machine readable HTML and CSS. Web browsers will be better able to display a well written website that is based on standards. Standardised Web browsers are better able to handle forwards and backwards browsing compatibility. Standards-compliant documents are more portable and easily convertible to other formats and across computing devices.

"Standards compliance makes it easier for people with special needs to use the Web. Blind people may have their computer read web pages to them. People with poor eyesight may have pages rearranged and magnified for easier reading. And people using hand-held devices can browse the Web just as easily as those using high-end workstations." –Web Standards Project, (http://www.webstandards.org/learn/faq/#p1)

What has this got to do with Joomla!?

Your dynamic Joomla! website today is probably written in HTML, CSS, JavaScript, PHP and mySQL. In order to ensure that your website complies to theW3Cstandards, it should pass two simple tests. It should be XHTML-compliant as well as CSS-compliant. The most widely used Web standards today are XHTML 1.0 and CSS 2.1, however, many new and upcoming websites have been written in HTML5 and CSS3. Several Joomla! Extensions and templates have been written to comply with CSS3 for design.

A Joomla! website may support many dynamic web pages, depending upon its Extensions and user content. Each page has to be validated to be both XHTML and CSS compliant. The Joomla! template itself has to be validated as well. Be careful that not all Joomla! Extensions are written with validation in mind, and thus, will affect the compliance of your website. At one point, the basic Joomla! 1.5 Search module (mod_search) has produced an XHTML 1.0 error.

If you are an end user of Joomla!, you will also need to validate the content that you generate yourself or that others generate for you. It might be worthwhile to learn the basics of XHTML to understand how to pass W3C validation. Some of the more common mistakes include not filling out the various titles and information of images in your HTML content, forgetting to close a cascaded list, and using the ampersand symbol.

How do you validate your Joomla! website?

valid-xhtml10One of the most reliable W3C validators is provided by the W3C itself. To validate your HTML document for XHTML or HTML5 compliance, use this link at http://validator.w3.org. Enter the URL of the web page you wish to validate in the address textbox under the "Validate by URI" tab. If the URL passes validation, you will get a green message, otherwise you will get a red message with a list of errors.

valid_cssIf you wish to validate for CSS, use this link at http://jigsaw.w3.org/css-validator/. Again, enter the URL of the web page to validate in the address textbox under the "BY URI" tab. The default option is to validate according to CSS 2.1, however other options including CSS3 are possible.

You can place W3C validation icons on your validated Joomla! websites available directly from the "green" pages generated by the W3C validators. The task of validation may be tedious, but the results are gratifying.

As a Joomla! 1.5 template designer, I find it important to build W3C-compliant demonstration websites to showcase each template. I have compiled a listing of W3C Joomla! Extensions as a consequence, and the Joomla! community is free to benefit from this effort. W3C Joomla! developers are invited to populate this directory.

Joomla! is a beautiful product through the collaborative efforts of multi-talented, global developers coming together. The peaceful unity achieved from this is beyond words. But we — template designers, Extension developers, site builders, end users and testers — could do even more. Wouldn't it be a nice goal for the next generation of Joomla! websites to be clean (compliant) as well as beautiful?

About the Author

Moriah Chesler has worked with Joomla! since 2006. She is currently a Joomla! 1.5 template designer and cares that your Joomla! websites are stunning and compliant. She maintains a W3C Joomla! Extensions directory at http://extensions.joomlaisrael.net.



Already Registered? Login Here
No comments made yet. Be the first to submit a comment

By accepting you will be accessing a service provided by a third-party external to https://magazine.joomla.org/