You are previewing Joomla!® Start to Finish: How to Plan, Execute, and Maintain Your Web Site.
O'Reilly logo
Joomla!® Start to Finish: How to Plan, Execute, and Maintain Your Web Site

Book Description

Everything you need to know to plan and maintain a Joomla! site

Joomla! offers powerful functionality and ease of configuration, making it an immensely popular open source content management system. However, far more than simply downloading and installing Joomla! is required in order to create a dynamic web site. This book walks you through the critical steps that must be taken in the planning process prior to establishing a Joomla! site. Joomla! expert Jen Kramer reviews essential questions that need to be asked of a client, discusses technical solutions to a variety of challenges, and explains how a site structure should be organized.

Topics Covered:

I Want a Web Site and I Want It Blue — How Much Will That Cost?

Choosing the Right Technologies to Solve the Business Problem

Downloading and Installing Joomla!

A Brief Tour of the Joomla! Administration Interface

Creating and Configuring Menus

Installing and Configuring

Modules That Come with Joomla

Components That Come with Joomla!

Plug-Ins That Come with Joomla!

Adding Extensions to Joomla!

Home Page Tips and Tricks

Custom Templates

Advanced Template and CSS Tricks

Site Maintenance and Training

Once the groundwork has been laid, you'll discover how to host and install Joomla!, and upgrade and maintain your Joomla! site.

Note: CD-ROM/DVD and other supplementary materials are not included as part of eBook file.

Table of Contents

  1. Copyright
  2. ABOUT THE AUTHOR
  3. ABOUT THE TECHNICAL EDITOR
  4. CREDITS
  5. ACKNOWLEDGMENTS
  6. INTRODUCTION
    1. WHO THIS BOOK IS FOR
    2. WHAT THIS BOOK COVERS
    3. HOW THIS BOOK IS STRUCTURED
    4. WHAT YOU NEED TO USE THIS BOOK
    5. CONVENTIONS
    6. SOURCE CODE
    7. ERRATA
    8. P2P.WROX.COM
  7. 1. I Want a Web Site and I Want It Blue — How Much Will That Cost?
    1. 1.1. DEVISING STRATEGIES
      1. 1.1.1. Understanding Your Client's Business Strategy
      2. 1.1.2. Some Clients Should Not Have a Web Site
      3. 1.1.3. Aligning the Business Strategy with the Web Strategy
      4. 1.1.4. Understanding Your Client's Target Audience
    2. 1.2. MEASURING SUCCESS
    3. 1.3. ASSEMBLING THE DEVELOPMENT TEAM
  8. 2. Choosing the Right Technologies to Solve the Business Problem
    1. 2.1. IS JOOMLA! THE RIGHT ANSWER FOR THIS CLIENT?
    2. 2.2. "CAN JOOMLA! DO THAT?"
    3. 2.3. THINKING ABOUT MAINTENANCE FROM THE CLIENT'S PERSPECTIVE
      1. 2.3.1. Is Your Client Tech-Savvy?
      2. 2.3.2. How Many People Are Involved with Maintenance?
      3. 2.3.3. How Frequently Will the Site Need To Be Updated?
      4. 2.3.4. Front-End Editing Versus Back-End Editing
    4. 2.4. THINKING ABOUT MAINTENANCE FROM THE ADMINISTRATOR'S PERSPECTIVE
    5. 2.5. IDENTIFYING QUALITY EXTENSIONS
      1. 2.5.1. Evaluating the Code
      2. 2.5.2. Using Commercial Versus Free Extensions
      3. 2.5.3. Upgrading Extensions to Maintain Security
      4. 2.5.4. Using Custom Extensions
  9. 3. Downloading and Installing Joomla!
    1. 3.1. PLANNING THE INSTALLATION: LOCAL VERSUS HOSTED INSTALLATIONS
    2. 3.2. CHOOSING THE RIGHT WEB HOST
      1. 3.2.1. Ensuring Your Host Is Running Windows or Linux/UNIX
      2. 3.2.2. Ensuring Your Host Is Running the Right Version of PHP, MySQL, and Apache/IIS
      3. 3.2.3. Talking to Your Host about Its Backup Policies
      4. 3.2.4. Ensuring Your Host Can Respond to Your Questions and Problems
      5. 3.2.5. Ensuring Your Host Comes with a Good Control Panel
      6. 3.2.6. What the Web Host Gives You to Get Started
      7. 3.2.7. Dealing with Clients Who Want to Host Their Own Web Sites
    3. 3.3. DOWNLOADING JOOMLA!
    4. 3.4. INSTALLING JOOMLA!
      1. 3.4.1. Creating a Database
      2. 3.4.2. Uploading the Installation Package to Your Server
      3. 3.4.3. Decompressing the Installation Package
      4. 3.4.4. Completing the Installation Wizard
      5. 3.4.5. Changing the Username
      6. 3.4.6. Storing and Remembering Passwords (Preferably, Securely)
  10. 4. A Brief Tour of the Joomla! Administration Interface
    1. 4.1. GLOBAL CONFIGURATION
      1. 4.1.1. The Site Tab
      2. 4.1.2. The System Tab
      3. 4.1.3. The Server Tab
    2. 4.2. USER MANAGER
      1. 4.2.1. User Groups
        1. 4.2.1.1. Creating and Editing Users
        2. 4.2.1.2. Deleting Users
      2. 4.2.2. Public, Registered, and Special Users
    3. 4.3. MEDIA MANAGER
      1. 4.3.1. Why Are There Cherries in My Web Site?
      2. 4.3.2. Creating New Folders
      3. 4.3.3. Uploading Images and Files
    4. 4.4. SITE MANAGEMENT TOOLS
      1. 4.4.1. Reading and Writing Messages
      2. 4.4.2. Mass Mail
      3. 4.4.3. Global Check-In
      4. 4.4.4. Clean Cache and Purge Expired Cache
  11. 5. In the Beginning There Was Content
    1. 5.1. CREATING A SITE MAP
    2. 5.2. DETERMINING WHERE THE CONTENT IS COMING FROM
      1. 5.2.1. Tracking Content and Images
      2. 5.2.2. Getting Content from Your Client
    3. 5.3. UNDERSTANDING THE SCAM — SECTIONS, CATEGORIES, ARTICLES, AND MENUS
      1. 5.3.1. Creating and Editing Sections
      2. 5.3.2. Creating and Editing Categories
      3. 5.3.3. How Are Sections and Categories Related to Each Other and Your Content?
      4. 5.3.4. Section and Category Considerations
      5. 5.3.5. Site Map Considerations
      6. 5.3.6. Functionalities Using Sections and Categories
      7. 5.3.7. What Are Articles?
        1. 5.3.7.1. Creating a New Article
        2. 5.3.7.2. Editing an Article
          1. 5.3.7.2.1. Editing from the Back End
          2. 5.3.7.2.2. Editing from the Front End
          3. 5.3.7.2.3. Which Is Better, Front-End or Back-End Editing?
        3. 5.3.7.3. Setting the Global Article Parameters
      8. 5.3.8. Advanced Article Features
        1. 5.3.8.1. Parameters (Advanced)
        2. 5.3.8.2. Metadata Information
  12. 6. Creating and Configuring Menus
    1. 6.1. USING THE MENU MANAGER
    2. 6.2. LINKING ARTICLES TO THE MENU
      1. 6.2.1. Linking an Individual Article to the Menu
        1. 6.2.1.1. Parameters (Component) Settings
        2. 6.2.1.2. Parameters (System) Settings
      2. 6.2.2. Creating Blogs from Sections and Categories
        1. 6.2.2.1. Creating Section Blogs
          1. 6.2.2.1.1. Parameters (Basic) Settings
          2. 6.2.2.1.2. Parameters (Advanced) Settings
          3. 6.2.2.1.3. Parameters (Component) Settings
          4. 6.2.2.1.4. Parameters (System) Settings
          5. 6.2.2.1.5. Examples
        2. 6.2.2.2. Creating Category Blogs
          1. 6.2.2.2.1. Parameters (Basic) Settings
          2. 6.2.2.2.2. Parameters (Advanced) and Parameters (Component) Settings
          3. 6.2.2.2.3. Parameters (System) Settings
      3. 6.2.3. Creating Article Lists from Sections and Categories
        1. 6.2.3.1. Section Layout Options
        2. 6.2.3.2. Category List Layout Options
      4. 6.2.4. Menu Overrides from Articles and Which Setting Wins
    3. 6.3. MAKING MENUS SHOW UP ON THE PAGE
      1. 6.3.1. Displaying the Menu All in One Place
      2. 6.3.2. Configuring the Module for Split Menu Presentation
    4. 6.4. PRESENTING IMAGE-BASED MENU NAVIGATION
    5. 6.5. CREATING SPECIAL MENU ITEMS
      1. 6.5.1. Creating a Wrapper Menu Item
      2. 6.5.2. Creating an Alias Menu Item
      3. 6.5.3. Creating an External Link Menu Item
      4. 6.5.4. Creating a Separator Menu Item
    6. 6.6. CREATING MENUS FOR SPECIFIC USER CLASSES
      1. 6.6.1. Creating Registered User Menu Items
      2. 6.6.2. Creating Login and Related User Items
        1. 6.6.2.1. Creating Registration
        2. 6.6.2.2. Creating a Login Link
        3. 6.6.2.3. Creating the Remind and Reset Link
        4. 6.6.2.4. Creating the User Form Layout Link
        5. 6.6.2.5. Creating Menus for Registered Users
    7. 6.7. HIDING YOUR SITE BEHIND A LOGIN BOX
    8. 6.8. CONSIDERING THE SECURITY OF REGISTERED USER INFORMATION
  13. 7. Installing and Configuring Templates
    1. 7.1. USING JOOMLA!'S DEFAULT TEMPLATES
    2. 7.2. ASSIGNING THE TEMPLATE TO SPECIFIC MENU ITEMS
    3. 7.3. DOWNLOADING AND INSTALLING A TEMPLATE FROM ANOTHER SITE
    4. 7.4. UNINSTALLING TEMPLATES
  14. 8. Modules That Come with Joomla!
    1. 8.1. CONFIGURING MODULES
      1. 8.1.1. The Breadcrumbs Module
      2. 8.1.2. The Latest News Module vs. the Newsflash Module
        1. 8.1.2.1. Newsflash
        2. 8.1.2.2. Latest News
      3. 8.1.3. The Random Image Module
      4. 8.1.4. The Search Module
      5. 8.1.5. The Custom HTML Module
    2. 8.2. EMBEDDING MODULES IN ARTICLES
    3. 8.3. CONFIGURING ADMINISTRATOR MODULES
  15. 9. Components That Come with Joomla!
    1. 9.1. CONTACTS
      1. 9.1.1. Configuring the Contacts Component
      2. 9.1.2. Setting Contacts Parameters
      3. 9.1.3. Linking a Contact to a Menu
        1. 9.1.3.1. Contact Category Layout
        2. 9.1.3.2. Standard Contact Layout
    2. 9.2. WEB LINKS
      1. 9.2.1. Creating a Web Link Category
      2. 9.2.2. Creating a Web Link
      3. 9.2.3. Web Link Parameters
      4. 9.2.4. Linking Web Links to a Menu
    3. 9.3. POLLS
      1. 9.3.1. Configuring the Polls Component
      2. 9.3.2. Configuring the Polls Display Module
    4. 9.4. BANNER ADS
      1. 9.4.1. Configuring the Banner Ads Component
      2. 9.4.2. Configuring the Banner Display Module
  16. 10. Plug-Ins That Come with Joomla!
    1. 10.1. THE REMEMBER ME PLUG-IN
    2. 10.2. THE LOAD MODULE PLUG-IN
    3. 10.3. THE EMAIL CLOAKING PLUG-IN
    4. 10.4. EDITOR BUTTONS
    5. 10.5. USING EDITORS
      1. 10.5.1. Adding a New Editor to Your Web Site
  17. 11. Adding Extensions to Joomla!
    1. 11.1. INSTALLING EXTENSIONS
    2. 11.2. CONFIGURING NEW EXTENSIONS
  18. 12. Home Page Tips and Tricks
    1. 12.1. INTRODUCING THE FRONT PAGE MANAGER AND FRONT PAGE BLOG LAYOUT
      1. 12.1.1. Do You Have to Use the Front Page Blog Layout?
      2. 12.1.2. Does Your Home Page Have to Say "Welcome to the Frontpage"?
    2. 12.2. LAYING OUT THE HOME PAGE IN AN ARTICLE
  19. 13. Custom Templates
    1. 13.1. PREREQUISITES FOR CREATING CUSTOM TEMPLATES
    2. 13.2. WEB DEVELOPMENT WORKFLOWS
    3. 13.3. CREATING A CUSTOM TEMPLATE
      1. 13.3.1. Creating a Static HTML Page
      2. 13.3.2. Inserting the Joomla! Codes
        1. 13.3.2.1. Head Code
        2. 13.3.2.2. Module Code
        3. 13.3.2.3. Component and Message Codes
      3. 13.3.3. Modifying the XML File
      4. 13.3.4. Creating a Favicon
      5. 13.3.5. Creating a Template Thumbnail
      6. 13.3.6. Zipping and Uploading the Template Files
    4. 13.4. SOLVING COMMON TEMPLATE PROBLEMS
      1. 13.4.1. Path Problems
      2. 13.4.2. Wrong Page Title on Home Page
      3. 13.4.3. Styling Problems
      4. 13.4.4. Template Installation Problems
  20. 14. Advanced Template and CSS Tricks
    1. 14.1. USING CONDITIONAL STATEMENTS AND OPTIONAL REGIONS
    2. 14.2. SETTING EXCEPTIONS FOR THE HOME PAGE
    3. 14.3. USING TEMPLATE OVERRIDES
    4. 14.4. CUSTOMIZING OTHER TEMPLATE FILES
    5. 14.5. CREATING MORE THAN ONE TEMPLATE FOR A SITE, BUT SHARING STYLES
    6. 14.6. UNDERSTANDING SUFFIXES
      1. 14.6.1. The Module Suffix
      2. 14.6.2. The Page Class Suffix
      3. 14.6.3. Multiple CSS Classes via Suffix
    7. 14.7. USING HIDDEN MENUS
    8. 14.8. CASE STUDIES
      1. 14.8.1. MassAcorn.net
      2. 14.8.2. The KOA Extranet
  21. 15. Site Maintenance and Training
    1. 15.1. BACKING UP SITES
      1. 15.1.1. Configuring JoomlaPack for Backup
      2. 15.1.2. Making the Backup
      3. 15.1.3. Downloading the Backup
    2. 15.2. RESTORING AND MOVING SITES
    3. 15.3. UPGRADING SITES
      1. 15.3.1. Updating via Update Manager for Joomla!
      2. 15.3.2. Updating Extensions
    4. 15.4. TRAINING THE CLIENT
    5. 15.5. WHAT'S NEXT?
  22. A. Jen's Favorite Joomla! Extensions
    1. A.1. ABSOLUTELY ESSENTIAL EXTENSIONS FOR ANY JOOMLA! WEB SITE
      1. A.1.1. JoomlaPack
      2. A.1.2. JCE
      3. A.1.3. Mass Content
    2. A.2. OTHER GREAT EXTENSIONS
      1. A.2.1. XMap
      2. A.2.2. Azrul.com
      3. A.2.3. JoomlaWorks
      4. A.2.4. RSForm!Pro
      5. A.2.5. Grumpy Contacts