You are previewing Learning Mambo : A Step-by-Step Tutorial to Building Your Website.
O'Reilly logo
Learning Mambo : A Step-by-Step Tutorial to Building Your Website

Book Description

A well-structured and example-rich tutorial to creating websites using Mambo

  • A practical step-by-step tutorial to creating your Mambo website

  • Master all the important aspects of Mambo, including menus, content management, and templates

  • Gain hands-on experience by developing an example site through the book

In Detail

Mambo is a mature and fully featured open-source Content Management System (CMS). Mambo is easy to use at the entry level for creating basic websites, while having the power and flexibility to support complex web applications.

Mambo implements the core requirements of a full-featured CMS. It has a powerful and extensible templating system, user access control, content approval, rich administrative control, and content display scheduling. New features and extensions are added to the core system, with many more being available and supported by the community.

This book targets the 4.6 release of Mambo, and takes you through creating an example website. Beginning with a discussion of the requirements for the example site, the site unfolds as you progress through the chapters, learning more about Mambo, and how to complete the tasks needed to build the site.

You'll see the basic configuration options for setting up your site, and learn about Mambo's main elements as you work your way around its web-based administration area. As soon as you're familiar with the general principles and behavior of Mambo, it's time to pile on the features for your site; adding modules and components, uploading images and other resources, and managing templates. You will learn to use Mambo's powerful Universal Installer to effortlessly install add-ons that are not part of the standard distribution.

The pages on your site, how they are displayed, and who can see them, are determined by Mambo's menu system. With many examples of the different types of menu items, the book will lead you through the important tasks of creating menu items, and help you understand how these choices structure the pages on your site and ease your visitors' navigation.

You will see how to organize and enter your content into Mambo, and how to manage and edit this organization and your pieces of content. As we tackle user management, you will see how Mambo allows you to set up user accounts with different permissions, including a set of special users who can author or edit content. We also take a detailed look at the notifications that occur when content is submitted by these users. This analysis reveals how the Mambo publishing workflow process works, and how you can exploit it effectively. Moving on from the standard Mambo features, we look at some third-party extensions that add powerful discussion forum, event scheduling, and image gallery features to your site.

To create a new look for your site, you create a new template. We cover this, and even if you're no expert in web design, you will be taken through a number of basic tasks to create an impressive new design for your site.

Table of Contents

  1. Learning Mambo : A Step-by-Step Tutorial to Building Your Website
    1. Learning Mambo : A Step-by-Step Tutorial to Building Your Website
    2. Credits
    3. About the Author
    4. About the Reviewer
    5. Preface
      1. What This Book Covers
      2. What You Need for This Book
      3. Conventions
      4. Reader Feedback
      5. Customer Support
        1. Downloading the Example Code for the Book
        2. Errata
        3. Questions
    6. 1. An Introduction to Mambo
      1. What Mambo Can Do for You
        1. The Visitor Experience
        2. The Management Experience
      2. What Exactly is Mambo?
        1. Component-Based Architecture
        2. Templated Interface
        3. User and Permission Management
      3. Mambo as an Open-Source Content Management System
        1. Open Source
        2. Content Management System
      4. Getting Help in the Mambo Community
      5. Forks, the Mambo Foundation, and Joomla!
      6. Zak Springs Golf Club Website
        1. The Client
          1. Staff
            1. President
            2. Administrative Staff
            3. Golf Staff
            4. Hospitality
        2. Requirements
        3. Key Objectives of the Site
        4. General Functionality of the Site
        5. Specific Functionality of the Site
        6. Permissions and Privileges Required
        7. Might Have... One day
      7. Summary
    7. 2. Setting up the Development Environment
      1. Downloading Mambo
        1. Mambo Lite and Complete
        2. Extracting Mambo
      2. Putting Mambo Files into the Web Server Root
      3. Installing Mambo
        1. Database Setup
        2. Site Details
      4. Testing the Installation
      5. Creating a Database User
        1. Switching to the New Database User
      6. Still Having Problems?
      7. Summary
    8. 3. Your Frontpage
      1. Your Mambo Site
        1. Menus
        2. Modules
        3. Components
        4. Templates
      2. Viewing Site Content
      3. Becoming the Administrator
        1. Previewing your Site
      4. Managing the Frontpage
        1. Publishing Content
        2. Ordering Lists
        3. Restricting User Access
      5. Editing an Article
        1. You can Check Out Any Time, But You can Never Leave
        2. Editing with the HTML Editor
          1. Adding Images
          2. Adding Links
        3. Email Addresses, Spam, and Mambots
      6. Controlling Article Display on the Frontpage
      7. Summary
    9. 4. Configuring the Site
      1. Your Site, Your Database
      2. Starting Afresh
      3. Visiting the Administration Area
      4. Global Configuration of your Site
        1. How the Options are Stored
        2. The Site Tab
        3. Locale
        4. Content
        5. Database
        6. Configuring the Web Server
        7. Sending Mail
        8. Cache
        9. Visitor Statistics
        10. Making Mambo-Search Engine Friendly
        11. Metadata
      5. Private Messages
      6. Summary
    10. 5. Managing Media, Modules, and Components
      1. Managing Media
      2. Managing Modules
        1. Installed Modules
        2. Managing Site Modules
          1. Editing Module Properties
            1. Module Details
            2. Pages/Items
            3. Module Parameters
          2. Adding a New Module Instance to your Site
            1. Adding an RSS Feed Module
            2. Adding a Custom HTML Module
            3. Creating a Module Copy
            4. Deleting Module Instances
        3. Administrator Modules
      3. Component Management
      4. Installing Mambo Add-ons with the Universal Installer
        1. Installing Directly from a URL
        2. Installing the ExtCal Event Component
        3. Installing an ExtCal Module from a URL
      5. Interlude: Web Links
        1. Creating Web Link Categories
        2. Creating Web Links
      6. Summary
    11. 6. Managing Menus and Templates
      1. Menus
        1. Menu Items
        2. Menu Item Types
          1. Content Menu Type
          2. Components Menu Type
          3. Links Menu Type
          4. Miscellaneous Menu Type
        3. Adding a New Menu Entry
          1. Add Menu Item Page
      2. News Feeds Component, Link, Category
      3. Planning the Zak Springs Menu Structure
        1. Creating the Bottom Menu
          1. Assigning the Menu to a Module Position
          2. The Wrong Homepage?
      4. Managing Templates
        1. Assigning Templates to Pages
      5. Summary
    12. 7. Managing Users
      1. User Groups
        1. The Special Ones
      2. Ingredients of a User
      3. Registering as a User
      4. Front-End User Goodies
      5. User Management
        1. User Details
        2. Login Module Configuration
        3. Adding a Logout Link
        4. Super Administrator Details
        5. Creating New Users at the Back end
        6. The Registration Process
          1. Registration Options
      6. Managing Other Administrators
        1. The Administrator
        2. The Manager
        3. Summary of Permissions for Back-end Groups
      7. Zak Springs Users and Groups
      8. Summary
    13. 8. Managing Content
      1. Organizing Content
        1. Why Organize Content?
        2. Planning the Zak Springs Content Structure
      2. Creating Sections
        1. Zak Springs Sections
        2. Section Manager Page
      3. Creating Categories
        1. Zak Springs Categories
        2. Category Manager Page
      4. Entering Content
        1. Content Items Manager Page
        2. Creating a New Content Item
          1. Adding the Item to a Menu
          2. Adding Images to the Item
          3. Keywords and Description for SEO
          4. Publishing Information
          5. Controlling How the Item is Displayed
        3. Deleting Content Items
          1. The Trash Manager
        4. Archiving Content Items
      5. Different Views of Content
        1. Single Item (Link) View
        2. Table Views
          1. Content Category View
          2. Content Section View
          3. Assigning Templates to Table Views
        3. Blog Views
      6. Static Content
      7. Managing Sections
        1. Copying Sections
        2. Deleting Sections
      8. Managing Categories
        1. Copying Categories to Different Sections
        2. Moving Categories to Different Sections
        3. Deleting Categories
      9. Summary
    14. 9. Front-End Publishing Workflow
      1. Authoring Content
            1. Can't Find the Save Button?
        1. Finding Submitted Content Items
        2. The Author Notification Process
      2. Editing Content
      3. Publishing Content
      4. Front-End User-Submitted Content
      5. Adding Links to Submit Content
      6. Creating a Better Publishing Workflow
      7. Managing Comments
        1. Preventing Comment Spam
        2. Viewing and Approving Comments
      8. Summary
    15. 10. Finishing the Site Off with Other Extensions
      1. Standard Extensions
        1. Polls
        2. News Feeds
        3. Syndicate
        4. Banners
      2. ExtCal Event Component
        1. User-Submitted Events
        2. Deleting Events
        3. ExtCal Modules
      3. MamboBoard Forums Component
        1. Forum Organization
        2. Board Configuration
        3. Creating Forums
        4. Adding a Menu Link to the Forums
      4. zOOm Media Gallery Component
        1. Creating Galleries
        2. Adding Images
      5. Summary
    16. 11. Customizing a Template
      1. What You Need
      2. Template File Structure
      3. Creating a New Template
        1. Changing the Template Details
        2. The Template File Itself
          1. No Logic Here
          2. Links to Images
          3. No Layout Here
        3. XHTML Compliance
      4. Customizing the Page Layout
        1. Replacing the Header Graphic
        2. Changing the Page Background and Fonts
        3. Changing the Main Content Area
        4. Changing the Background Color of the Columns
        5. Customizing the Read More Link
        6. Formatting the Content Items
        7. Adding the Bottom Menu
      5. Customizing the Modules
        1. Spacing Out the Modules
        2. Changing the Module Headers
      6. Customizing the Menus
        1. Changing the Menu Hover Color
        2. Changing the Menu Item Borders
        3. Highlighting the Current Menu Item
      7. Finishing Off
        1. Creating a Template Package
      8. Summary
    17. 12. Deploying and Running Your Site
      1. Overview of the Process
        1. Checking Server Requirements
        2. File System Permissions
      2. Uploading the Mambo Code via FTP
      3. Setting Permissions for configuration.php
      4. Creating the Database
      5. Running the Web Installer
      6. Migrating the Locally Created Database
        1. Backing Up the Database
        2. Restoring the Database to the Remote Server
        3. Replacing the Site Configuration
      7. Resetting the Permissions of Your Installation
      8. Rename the Super Administrator Account
      9. Setting Permissions for Mambo Operations
        1. Configuration Settings
        2. Media Uploading
        3. Caching
        4. Database Backup Permissions
        5. Installing Extensions or Templates
          1. Installing Extensions without ZLIB
      10. Restricting Access to Folders
      11. Restricting Access to the Administrator Area
      12. Summary
    18. A. Installing XAMPP