· Understanding content management, what Joomla!. is an open source Content Management System CMSthat anyone can download for free.[1] This makes it an idealchoice for small businesses..
Trang 1Joomla! A User's Guide: Building a Successful Joomla! Powered Website
by Barrie M North
Publisher: Prentice Hall Pub Date: December 11, 2007 Print ISBN-10: 0-13-613560-9 Print ISBN-13: 978-0-13-613560-9 Pages: 480
to-read, easy-to-use guide to Joomla! for every site manager,
administrator, and developer Leading Joomla! consultant BarrieNorth covers all you need to get results: installation,
administration, site organization, template development,
published tips, tricks, and troubleshooting solutions, as well asthree start-to-finish case studies
content updates, and a whole lot more You'll find never-before-New to Joomla? No problem! This book starts with the simplestdesign and system concepts, and builds your expertise step-by-step You'll rapidly master Joomla!'s power, even if you have nocontent management, scripting, or CSS expertise Experiencedwith Joomla!? You'll turn to this book constantly for its
authoritative, plain-English, example-rich Joomla! 1.0 and 1.5reference content
· Understanding content management, what Joomla! does,and how its components fit together
Trang 2· Key differences between Joomla! 1.0 and 1.5, and what theymean to you
Trang 3Joomla! A User's Guide: Building a Successful Joomla! Powered Website
by Barrie M North
Publisher: Prentice Hall
Pub Date: December 11, 2007
Print ISBN-10: 0-13-613560-9 Print ISBN-13: 978-0-13-613560-9 Pages: 480
Trang 4Creating Widget Inc with Sections and CategoriesModule Content
Trang 5What Features Does a Restaurant Website Need?Downloading and Installing a Restaurant TemplateOrganizing the Content on a Restaurant Website
Trang 7Section 10 Clean URL
Section 11 Utilize Your Error PagesWhat's Not Here?
Appendix D Installing WAMP5
Index
Trang 8Many of the designations used by manufacturers and sellers todistinguish their products are claimed as trademarks Wherethose designations appear in this book, and the publisher wasaware of a trademark claim, the designations have been printedwith initial capital letters or in all capitals
The author and publisher have taken care in the preparation ofthis book, but make no expressed or implied warranty of anykind and assume no responsibility for errors or omissions Noliability is assumed for incidental or consequential damages inconnection with or arising out of the use of the information orprograms contained herein
The publisher offers excellent discounts on this book when
ordered in quantity for bulk purchases or special sales, whichmay include electronic versions and/or custom covers and
content particular to your business, training goals, marketingfocus, and branding interests For more information, please
Trang 10Copyright © 2008 Barrie M North
All rights reserved except for Chapter 9 (see paragraph below).Printed in the United States of America This publication is
protected by copyright, and permission must be obtained fromthe publisher prior to any prohibited reproduction, storage in aretrieval system, or transmission in any form or by any means,electronic, mechanical, photocopying, recording, or likewise Forinformation regarding permissions, write to:
Chapter 9 is released under a Creative Commons Attribution-http://creativecommons.org/licenses/by-nc-sa/2.5/ for moredetails
Trang 11Joomla! is an open source Content Management System (CMS)that anyone can download for free.[1] This makes it an idealchoice for small businesses Don't let the price tag fool you—Joomla! is powerful and robust, and more big organizations arechoosing to have open source software solutions all the time.This universal appeal has made Joomla! hugely popular as aCMS This is evident by looking at how searches for Joomla! inGoogle have grown, roughly doubling every two months (seeFigure P.1)
[1] http://forge.Joomla!.org/sf/go/projects.Joomla!/frs
Figure P.1 Joomla!—as Popular as Pop
[View full size image]
As Joomla! matures, it is being adopted by more and moreorganizations Its greatest advantage is its flexibility You cansee it on a huge variety of sites:
Corporations
Schools and Universities
Online Commerce Organizations
Trang 12by Joomla! The book gives a general overview of management
of a CMS and teaches you key concepts regarding content
organization, editing, and templates Last, the book examinessome more general topics such as how Search Engine
Optimization (SEO) can be maximized with Joomla! and whatresources are available in the Joomla! web community
applications
Trang 13
How Should I Use This Book?
You can use this book in several ways You can start at the
beginning and go chapter by chapter as you develop your ownsite The book is carefully laid out so that introductory ideas inthe earlier chapters are developed and built on to help you
understand more advanced concepts later on You can also usethe book as a reference If you need some quick ideas of whatnewsletter extensions are available, head to Chapter 6,
"Extending Joomla!." Lastly, the Appendices contain valuableextra information about various aspects of Joomla!
Introduction to Joomla!
In today's fast moving web, if you have a website that doesn'thave rich functionality or fresh content, you will find yourself at
a disadvantage to those that do The idea of powering websiteswith a CMS has been around for some time, but it is only
recently with the advent of high quality open source CMS scriptslike Joomla! that we have seen these powerful CMS tools
coming into the hands of you and me
In this chapter, I explain in detail the difference between a
"traditional" website and one using a CMS We also look at thehistory of Joomla! and an overview of some of its features
Joomla! is one of the most popular open source CMS on the
planet The first step in becoming part of the "Joomla!sphere,"the vibrant community that exists around the Joomla! Project,
is to download Joomla! and install it on your web server
This chapter shows you how to get up and running with a
Joomla! site The two steps are to find and download the latest
Trang 14The term "site administration" usually means the day to daytasks of adding content, managing users and making sure
installed components and modules are running correctly With aproperly configured Joomla! site, the administration burden isrelatively low Most of the effort can be dedicated to generatingthat all important content
In this chapter, we go on a whirlwind tour of the core
administrative functions you need I won't be going step by stepexplaining every last button in the admin backend, but ratherpicking out key functions, tips, and tricks that you'll need toknow to keep your site humming
Content
As a CMS, Joomla!'s primary function is to organize and presentall the content in your site It does this through content articles.These discrete pieces of content must be organized into a two-level hierarchy called sections and categories
This chapter provides an in-depth tutorial that explains howJoomla! displays its content articles and how you can organizethe hierarchical structure of them It details how to plan andorganize the content and user experience for the site It alsoexplains the hierarchy structure currently used in Joomla!,
sections and categories, and how to best structure content intothem for small and large sites
Menus are perhaps the core of a Joomla! site In a static HTMLsite, they merely serve as navigation In a Joomla! site, they
Trang 15dynamic page will look like and what content will appear on thatpage when you navigate to it The relationship between menus,menu items, pages and modules is perhaps one of the mostconfusing in Joomla! This chapter explains this relationship sothat you can create a navigation scheme that works for yoursite
Chapter 5 examines how the navigation (menus and links) isbuilt for a Joomla! website and how the different aspects
interact to produce a coherent navigation structure
It's hard to find a Joomla! powered website that has not addedfunctionality beyond the basics with some sort of extension Theword extension collectively describes components, modules,plugins, and languages There are many hundreds available
both free and commercially from 3rd party providers
In this chapter, we look at some examples of core and 3rd partyJoomla! extensions We also examine how they are installedand managed in Joomla!
In this chapter, we start out looking at WYSIWYG and how itfunctions in the backend with Managers, Administrators, andSuper Administrators We then examine how authors, editors,and publishers manage content through the frontend
Search Engine Optimization (SEO) might be one of the most
Trang 16people who use unethical methods to gain rank in search
engines, to their counterparts of white hat SEO, the good guys,how best to get traffic to your site is loaded with opinion andmyth
Trying to learn about SEO is difficult, to say the least In this
chapter, I emphasize Search Engine Marketing (SEM) I point
out some obvious SEO tips and how they apply to Joomla!, butI'll also discuss a more holistic marketing plan including suchstrategies as Pay Per Click and blogging
In this chapter, we go through the steps of creating a Joomla!template Specifically, we create a template that uses CascadingStyle Sheets (CSS) to produce a layout without use of tables.This is a desirable goal as it means that the template code iseasier to validate to World Wide Web Consortium (W3C)
standards It also tends to load faster, be easier to maintain andperform better in search engines We discuss these issues indetail later in the chapter
School websites tend to be medium to large in size One of thedefining characteristics of Joomla! is that it is very powerful andflexible, but can be quite time intensive to setup This leads us
Trang 17It seems like everyone has a blog these days Many people stillthink of blogs as personal diaries, but more and more
organizations and companies are using blogs as a way to shapeperception of who they are and what they do Chances are, ifyou go to a website today, you will find a link to their blog
somewhere on their site What is becoming more common onwebsites now, is a section of the site that is dedicated to theblog
This chapter talks about blogs in a more general sense: a
dynamic communication medium for a person or organization tointeract with their stakeholders We look at creating a blog sitefrom scratch using Joomla!
Stuck with Joomla!? There is a tremendous amount of
information on the web, as well as many active communities toask for help
Six real sites that are using Joomla!, taken from a wide range ofindustries and types of site
What Is a Content Management System?
Trang 18moving toward a site powered by a CMS
Most Content Management Systems are expensive, anywherefrom $50,000 to $300,000, but there are an increasing number
of open source alternatives becoming available Open sourceCMSs have become increasingly more reliable and are now
profits, and organizations
being used for important projects in many companies, non-Why Use a CMS?
A CMS separates out the responsibilities of developing a
website The web designer can concern himself with the design,which means that nontechnical people can be responsible forthe content
The modern CMS is usually defined by its capability to manageand publish content Most do far more, having the capability toadd on a wide range of extensions or add-ons to increase
functionality of the site
What Is Open Source Software?
Joomla! is an example of open source software; its non-profitcopyright holder is Open Source Matters.[3] An open sourceproject is developed by a community of developers across theworld, all volunteering their time Some examples you mighthave heard of are Firefox, Apache, Wiki, Linux, or OpenOffice.All of these are open source and both have challenged and
surpassed their commercial equivalents If you are curious
about how and why people should create powerful software forfree, you can find more information on these sites:
Trang 19Note
The notes box denotes a caution about anaspect of the topic It sometimes won't beapplicable to all situations, but you shouldcheck if it would apply to your site
The Least You Need to Know
The key critical concepts explained can befound in the LYNTK box These are worthcircling in a big red pen or writing out foryourself on a cheat sheet
Trang 20The full and proper name of the Joomla! CMS includes an
exclamation point, as shown here For the sake of readability,and a tree or two, I'll be dropping the exclamation in the text
www.Joomlabook.com
You can find more information about this book, including
complete browsable and downloadable versions of all the sitescreated in the chapters, at www.Joomlabook.com
Trang 21Without the continuing support of my wife, Sarah, this bookwould not have been possible As we had our third son halfwaythrough writing it, she let me frequently slip off to work on themanuscript while she kept them busy Part of my thanks alsogoes to my three boys who (mostly) managed not to bug mewhile writing
I'd like to thank the third-party developer community who Iwould frequently annoy on Skype with questions about this orthat
Last, all of my thanks to the guys who live on the trunk—themany developers who selflessly contribute code to the Joomla!project on a daily basis
Trang 22Barrie North has over 15 years of experience with the Internet,
as a user, designer, and teacher He has spent over eight years
in the education field, becoming steadily more involved in webtechnology and teaching web design classes to students andtechnology integration to teachers Most recently he worked as
an IT consultant for two new schools pioneering in the use oftechnology As well as web design, he has provided web
marketing/SEO, usability, and standards compliance expertise
to his clients
He is a partner of Joomla!shack.com, providing templates andcustom services He also maintains a blog about all things
Joomla! at compassdesigns.net
When not working, he can frequently be found on the Joomla!community boards, and he has written many free tutorials forusing Joomla! His combination of Joomla! expertise,
educational skills, and engaging writing has produced a bookaccessible to everyone
Trang 23"traditional" website and one using a CMS I also provide a lookback into the history of Joomla and give an overview of some ofits features Here are some of the topics this chapter covers:
technology of web pages, but it's worth it to understand thepower of a CMS
To start, let's take a look at the historical development of webpages Conceptually, there are two aspects to a web page: Itscontent and the presentation of that content Over the last
decade, there has been an evolution of how these two pieces
Trang 24[View full size image]
This way of creating a web page is outdated, but it's astonishinghow many designers still create sites using this outdated
method It has two main drawbacks:
All of the content shown on the page ("This is a web page")and the presentation (big and bold) are tied together If youwant to change the color of all your titles, you have to go
Trang 25The next step toward understanding content management is arecent (recent meaning in the last four or five years)
development of web standards, a common set of "rules" that aweb browser like Internet Explorer or Firefox uses to output aweb page onto your screen One of these standards involvesusing Cascading Style Sheets (CSS) to control the visual
presentation of your web page CSS is a simple mechanism foradding style (for example, fonts, colors, spacing, and so on) toweb documents All of this presentation information is contained
in separate files from the content
Now the web page generated might look something like Figure1.2
Figure 1.2 Modern web page using CSS
[View full size image]
Trang 26styling has been placed in a separate file that the browser readsand "layers" over the content to produce the final result
Using CSS to control the presentation of the content has bigadvantages:
Maintaining and revising the page is much easier If youneed to change all the title colors, you can just change oneline in the CSS file
Both files are much smaller, which allows the data to loadmuch more quickly than without using CSS
The CSS file has the additional advantage that it will be
cached (saved) on a viewer's local computer so that it won'tneed to be downloaded from the Web each time the viewervisits a page
Note
An example of this can be seen atwww.csszengarden.com Every page onthis classic CSS site has identical contentbut has different CSS applied to each Youcan browse through the designs and seethe same content styled in hundreds ofdifferent ways
The Least You Need to Know
Modern websites separate content from
Trang 27in a designated place on the page
You might be thinking, "So what's so useful about that trick?"It's actually very powerful
Trang 28presentation/design and the "placeholders." This means thatnon-technical people can be responsible for the content—thewords and pictures of a website Most CMSs have built-in tools
to manage the publication of the content
With this in mind, it's possible to imagine a workflow for contentmanagement that involves both designers and content authors(see Figure 1.4)
Figure 1.4 The CMS manages content publication
A CMS makes the pages dynamic: They don't really exist untilyou follow a link to view them This means that they can beupdated/customized based on the viewer's interactions with thepage For example, if you place an item in a shopping cart, thatitem now shows up on the shopping cart page It got stored in adatabase and now gets put into the "shopping cart placeholder."Many complex web applications are in fact mini CMSs (by thisdefinition), like forums, shopping carts, and guest books, toname a few
Another good example of CMSs are blogs They have a
"template" that presents all the content (or posts, in this case),and blogs are easy to edit and publish The growth in the use ofCMSs for powering websites is probably due in part to the hugerise in popularity of blogging tools such as Blogger and
Wordpress
Trang 29A CMS totally separates the content of thepages from their graphical design Thismakes it easy to keep the site-wide designcoherent and easy to change It also makesadding content easy for non-technical
people
The range of available CMSs is extensive—from enterprise scaleversions that cost $300,000 to open source versions, such asJoomla, that are free Modern CMSs are usually defined by theircapability to manage and publish content They typically haveworkflow processes that start at content creation and move topublishing Most do far more: They have the capability to add
on a wide range of extensions or add-ons to give the site morefunctionality From forums to newsletters, Joomla has over 2000pluggable extensions available, many of which are free and arecreated by volunteer developers around the world The officialrepository is at extensions.joomla.org and a repository
Trang 30of them to find ones that might be of use toyou
The quality of the extensions also varieswidely If you are using the extension on animportant site, do the due diligence to
check out the developer and visit his/hersite
There is one large drawback to using a CMS They can be
extremely complex, containing thousands of files and scriptsthat work together in concert with databases to present a
website Normally, this means that a CMS site will be designedand created by technical staff and managed and run by non-technical users Joomla is probably the easiest to setup amongcurrently available CMSs, allowing users of modest technicalskill to harness its power That's specifically the purpose of thisbook, to guide a non-technical user step-by-step in learninghow to create and manage a website powered by Joomla
Trang 31functions, often needs
custom code
Most CMSs have manyextensions that "plug in"
easily
Content Management Systems have been around for a while,but there is another factor that has contributed to their rise inpopularity and ease of use: The growth of the open source
developers and released openly to the world
As the Web has grown explosively, we have seen open sourcesoftware grow and mature to power the Web The most
growth has been the development of CMSs that are written in
Trang 32The Least You Need to Know
Joomla is an example of open sourcesoftware It's created by a world-widecommunity of developers and distributed at
no charge
Trang 33"traditional" website and one using a CMS I also provide a lookback into the history of Joomla and give an overview of some ofits features Here are some of the topics this chapter covers:
technology of web pages, but it's worth it to understand thepower of a CMS
To start, let's take a look at the historical development of webpages Conceptually, there are two aspects to a web page: Itscontent and the presentation of that content Over the last
decade, there has been an evolution of how these two pieces
Trang 34[View full size image]
This way of creating a web page is outdated, but it's astonishinghow many designers still create sites using this outdated
method It has two main drawbacks:
All of the content shown on the page ("This is a web page")and the presentation (big and bold) are tied together If youwant to change the color of all your titles, you have to go
Trang 35The next step toward understanding content management is arecent (recent meaning in the last four or five years)
development of web standards, a common set of "rules" that aweb browser like Internet Explorer or Firefox uses to output aweb page onto your screen One of these standards involvesusing Cascading Style Sheets (CSS) to control the visual
presentation of your web page CSS is a simple mechanism foradding style (for example, fonts, colors, spacing, and so on) toweb documents All of this presentation information is contained
in separate files from the content
Now the web page generated might look something like Figure1.2
Figure 1.2 Modern web page using CSS
[View full size image]
Trang 36styling has been placed in a separate file that the browser readsand "layers" over the content to produce the final result
Using CSS to control the presentation of the content has bigadvantages:
Maintaining and revising the page is much easier If youneed to change all the title colors, you can just change oneline in the CSS file
Both files are much smaller, which allows the data to loadmuch more quickly than without using CSS
The CSS file has the additional advantage that it will be
cached (saved) on a viewer's local computer so that it won'tneed to be downloaded from the Web each time the viewervisits a page
Note
An example of this can be seen atwww.csszengarden.com Every page onthis classic CSS site has identical contentbut has different CSS applied to each Youcan browse through the designs and seethe same content styled in hundreds ofdifferent ways
The Least You Need to Know
Modern websites separate content from
Trang 37in a designated place on the page
You might be thinking, "So what's so useful about that trick?"It's actually very powerful
Trang 38presentation/design and the "placeholders." This means thatnon-technical people can be responsible for the content—thewords and pictures of a website Most CMSs have built-in tools
to manage the publication of the content
With this in mind, it's possible to imagine a workflow for contentmanagement that involves both designers and content authors(see Figure 1.4)
Figure 1.4 The CMS manages content publication
A CMS makes the pages dynamic: They don't really exist untilyou follow a link to view them This means that they can beupdated/customized based on the viewer's interactions with thepage For example, if you place an item in a shopping cart, thatitem now shows up on the shopping cart page It got stored in adatabase and now gets put into the "shopping cart placeholder."Many complex web applications are in fact mini CMSs (by thisdefinition), like forums, shopping carts, and guest books, toname a few
Another good example of CMSs are blogs They have a
"template" that presents all the content (or posts, in this case),and blogs are easy to edit and publish The growth in the use ofCMSs for powering websites is probably due in part to the hugerise in popularity of blogging tools such as Blogger and
Wordpress
Trang 39A CMS totally separates the content of thepages from their graphical design Thismakes it easy to keep the site-wide designcoherent and easy to change It also makesadding content easy for non-technical
people
The range of available CMSs is extensive—from enterprise scaleversions that cost $300,000 to open source versions, such asJoomla, that are free Modern CMSs are usually defined by theircapability to manage and publish content They typically haveworkflow processes that start at content creation and move topublishing Most do far more: They have the capability to add
on a wide range of extensions or add-ons to give the site morefunctionality From forums to newsletters, Joomla has over 2000pluggable extensions available, many of which are free and arecreated by volunteer developers around the world The officialrepository is at extensions.joomla.org and a repository
Trang 40of them to find ones that might be of use toyou
The quality of the extensions also varieswidely If you are using the extension on animportant site, do the due diligence to
check out the developer and visit his/hersite
There is one large drawback to using a CMS They can be
extremely complex, containing thousands of files and scriptsthat work together in concert with databases to present a
website Normally, this means that a CMS site will be designedand created by technical staff and managed and run by non-technical users Joomla is probably the easiest to setup amongcurrently available CMSs, allowing users of modest technicalskill to harness its power That's specifically the purpose of thisbook, to guide a non-technical user step-by-step in learninghow to create and manage a website powered by Joomla