Rapid Website Development

Technocon 2010 Presentation »
Tyler Findlay

Rapid Website
Development
Tyler Findlay
Twitter: @BranigansLaw

The City of Edmonton
Everyones Background
Technical?
Web based?
Non-technical?
Content Authors?
Application Developers?
What is a CMS?
Stands for "Content Management System"

It is a tool that is used for creating and managing HTML content of a site
Advantages of using a CMS
Allows non-technical users to easily modify site content without having to delve into code

Additionally allows technical users powerful tools for customizations and configuration of the website, even at the code level

Allows for lots of code reuse since common site functionalities (polls, forums, messaging) do not need to be recoded
Other CMS Brands
Drupal
Doku Wiki
Joomla!
Today we'll be
using Joomla!
Very much alive with new versions being created all the time

Support community is very much alive

Developer community has tons of free extensions available for use

It's open source and free!
About Joomla!
Mambo
Was a fork of Mambo started August 17, 2005

Based on PHP and JavaScript with MySQL Database

Most companies provide automated install, but its quite simple to install on your own

What I want
to do today
Show you how simple creating a website can be

Concentrate on the "what" rather then the "how"

Give you some basic concepts and keywords that Joomla uses
Methods of Use
Most hosting services provide automated installation

If you have to install manually, Joomla! has its own setup process

If your using a Windows server, I suggest WAMP (Windows Apache, MySql and PHP

Unix servers can use Apache
What a Blank Install looks like
Amin access will be granted through www.yourjoomlasite.com/administrator

Joomla offers optional sample data to get you started
Templates
Templates set the style of the site.  If compared to ASP.NET, this is the MasterPage

Lots of free templates online

http://www.joomla24.com/Joomla_1.5.x_Downloads/Joomla_1.5_Templates.html
Articles, Sections and
Categories
Article (Leaf) - HTML content that appears as one page on the site.

Categories (Branch) - every article must belong to a category

Section (Root) - every category must belong to a section

Example: You might have an article "Aquarium Weekly Maintenance" article under "Aquarium Maintenance" category which is under the "Aquariums" section

The idea is to split Sections into "News", "Page Content", "Blog Entries", and different content types
Modules
These will appear on the Templates sidebars at different locations designated by the template.  Each template will have a different set of spots to put modules

There is also a hack to put modules right into an article

The most common form of module you will likely be working with are menu's

Other types include: polls, news feeds, login bars and other custom and downloadable ones
Users
You may want your website to contain users ourside the administrator

Three major classes: Non-registered, Registered and Special.  The main difference between Registered and Special is Special has access to administrator site.

Within registered, there is Registered, Author, Editor and Publisher

Within Special, there is Manager, Administrator and Super Administrator
Components
Give your websites new functionality

There is most likely a component (free or otherwise) for almost any functionality that already exists on the internet

Good tool to allow you to avoid reinventing the wheel on common tools (blogs, wiki's, social networking, photo galleries, forums, etc ...)
Extensions
Joomla Extensions can refer to 3 different types: Modules, Components and Plugins

Modules: Smaller then components, usually span only a page or two.

Component: Larger site wide tools that either standalone or integrate with the site

Plugins: Addon's for components or modules that don't physically appear, but provide integration or additional functionality

Check out what you have available: http://extensions.joomla.org/
Great C  mponents
Community Builder - could essentially setup a basic social networking component in minutes, integrates with almost all other components

Kunena Forum - great little forum tool that is extremely customizable and powerful

Phoca Gallery - very powerful gallery component with lots of display options

Virtuemart - very complex and valuable component for anyone wanting to create an online store

Twitter and Facebook integration - tons of components for interfacing with all the social networking sites

Anything you can dream!
Closing Comments
Please submit any questions and comments to: tyler.findlay@edmonton.ca

On Twitter: @BranigansLaw

See Joomla! in action at http://www.visualappealwebdesign.com/

Feel free to play with these sites on your own:
http://www.pushthecow.com/technocon1
http://www.pushthecow.com/technocon2
http://www.pushthecow.com/technocon3

Username: admin
Password: technocon2010

Loading comments...

Please log in to add your comment.

Report abuse

More presentations by Tyler Findlay