You are previewing Building Websites with Joomla! 1.5.
O'Reilly logo
Building Websites with Joomla! 1.5

Book Description

"

The best-selling Joomla! tutorial guide updated for the latest 1.5 release

  • Learn Joomla! 1.5 features

  • Install and customize Joomla! 1.5

  • Configure Joomla! administration

  • Create your own Joomla! templates

  • Extend Joomla! with new components, modules, and plug-ins

In Detail

Joomla! started as a fork from Mambo in 2005, when many of the original developers of the Mambo CMS moved to working on Joomla! It has rapidly grown in popularity and, according to its own description, is a "Cutting Edge Content Management System and one of the most powerful Open Source Content Management systems in the world. It is used world-wide for anything from simple homepages to complicated corporate websites. It is easy to install, easy to manage and very reliable."

While the Joomla! CMS has the flexibility and power needed for complex, full-featured web applications, it is also simple to use to create basic websites. Its powerful, extensible template system can deal many different data types and control of user access, approval of content, scheduling of content display, and rich administrative controls are all included.

This book takes a practical step-by-step approach of teaching the installation and configuration of Joomla! 1.5, customizing it, creating your templates and extensions, and finally, building your own website.

Table of Contents

  1. Building Websites with Joomla! 1.5
    1. Table of Contents
    2. Building Websites with Joomla! 1.5
    3. Credits
    4. About the Author
    5. Preface
      1. What This Book Covers
      2. Conventions
      3. Reader Feedback
      4. Customer Support
        1. Downloading the Example Code for the Book
        2. Errata
        3. Questions
    6. 1. Terms, Concepts, and Deliberations
      1. Content Management System (CMS)
      2. A Quick Glance into History
        1. Joomla!—How was it Developed?
      3. Structure of a Web Content Management System (WCMS)
        1. Front End and Back End
        2. Access Rights
        3. Content
        4. Extensions
          1. Components
          2. Templates
          3. Plug-Ins
        5. Workflow
        6. Configuration Settings
        7. API
      4. Is Joomla! a Piece of Real Estate?
        1. Joomla! Versions
        2. Numbering System of Joomla! Versions
        3. Road Map
      5. Changes In Detail
        1. Internationalization
        2. User Plug-Ins
        3. XML Remote Procedure Call Support
        4. Support of Several Databases
        5. FTP System
        6. Overhaul of the Joomla! Framework
        7. Barrier Freedom
        8. Search Engine Friendliness
        9. Google Summer of Code Projects
      6. Joomla! Features
      7. Examples of Joomla! Pages
        1. Joomla.org
        2. Travel Shop, Ireland
        3. Frank Lüdtke, Germany
        4. Hotel Schönruh, Austria
        5. Urth.tv, USA
        6. unric.org, Europe
        7. porsche.com.br, Brazil
      8. Summary
    7. 2. Installation
      1. Client-Server System
        1. Accessing a Joomla! Website on the Internet
      2. Technical Requirements for Joomla!
      3. Necessary Elements for a Joomla! System Installation
        1. Local Test Environment
          1. Windows Operating System
          2. Linux Operating System
          3. Mac OS X Operating System
        2. Production Environment
          1. Rented Virtual Server
          2. Your Own Server
      4. Setting Up the Local Server Environment
        1. Windows
          1. XAMPP for Windows
        2. Linux
          1. openSUSE > 10.x
          2. Debian/Ubuntu
          3. Your Own Server at a Provider (Root Server)
      5. Joomla! Installation on a Virtual Server on the Net
      6. Joomla! Installation
        1. Selecting a Directory for Installation
          1. An Example
          2. Directory
          3. Unpacking
        2. Joomla! Web Installer
          1. Step 1: Language Selection
          2. Step 2: Pre-Installation Check
          3. Step 3: Licence
          4. Step 4: Database Configuration
          5. Step 5: FTP Configuration
          6. Step 6: Configuration
          7. Step 7: Completion
      7. Summary
    8. 3. A Tour of Your New Website
      1. Front End
        1. Menus
          1. Top Menu
          2. Main Menu/Breadcrumbs
          3. Other Menus
        2. Content
          1. What is Content?
          2. First Page/Front Page
          3. The Newest Information/The Most Often Read Messages
        3. Advertising
          1. Banner Area
        4. Functions
          1. Login Area
          2. Polling
          3. Who is Online?
          4. Feeds
          5. Search Field
        5. Decorative Elements
        6. Outlook
      2. Back end
      3. Summary
    9. 4. Customizing Joomla!—Language and Templates
      1. A Different Language for the Website and the Administrator
        1. Installation of a Different Language File
        2. Translation of a Menu Entry
        3. Modifying the Menu Name
      2. Changing the Template for Your Website
        1. Changing Colors in the Template
      3. Summary
    10. 5. Configuration of Joomla! Administration
      1. Screen Layout
        1. Menu Bar
        2. Tool Bar
        3. Submenus
        4. Filter Elements
        5. Content Area
        6. Lists
        7. Dialogs
        8. Miscellaneous
      2. Help
        1. Help Icon
        2. Help with Speech Balloons
      3. Help Menu
        1. Joomla! Help
        2. System Info
      4. Summary
    11. 6. Site Menu
      1. Control Panel
      2. User Manager
        1. Logout Users Icon
        2. Delete Users Icon
        3. Edit Users Icon
        4. New User Icon
      3. Media Manager
        1. Creating Directories
        2. Uploading a File
      4. Global Configuration
        1. Site Section
          1. Site Settings
          2. Metadata Settings
          3. SEO (Search Engine Optimization) Settings
        2. System Section
          1. System Settings
          2. Users Settings
          3. Media Settings
          4. Debug Settings
          5. Cache Settings
          6. Session Settings
        3. Server Section
          1. Server Settings
          2. Locale Settings
          3. FTP Settings
          4. Database Settings
          5. Mail Settings
      5. Logout
      6. Summary
    12. 7. The Menus Menu
      1. Menus
      2. Customizing an Existing Menu
        1. Menus Icon
        2. Default Icon
        3. Publish/Unpublish Icon
        4. Move Icon
        5. Copy Icon
        6. Trash Icon
        7. Edit Icon (Edit Menu Items)
            1. Menu Item Type
            2. Menu Item Details
              1. Parameters
            3. Parameters — Basic
            4. Parameter—Component
            5. Parameters—System
        8. New Icon
      3. Menu Trash
      4. Creating a New Menu
      5. Summary
    13. 8. Content Menu
      1. Article Manager
        1. Description of the Articles List
        2. Editing Icons for an Article
          1. Archive, Unarchive
          2. Approve, Block
          3. Move, Copy
          4. Trash Basket
          5. Parameters
      2. Creating a New Article
          1. Parameters
            1. Parameters—Article
            2. Parameters-Advanced
            3. Metadata Information
        1. Images
      3. Article Trash
      4. Section Manager
        1. Editing Sections
      5. Category Manager
      6. Front Page Manager
        1. Editing Content from the Front End
      7. Summary
    14. 9. Components Menu
      1. Banner
        1. Banners
        2. Clients
        3. Manage Banners
        4. Graphic Banners
        5. Text Links
      2. Contacts
        1. Contact Manager
          1. Details
          2. Information
          3. Parameters
      3. Creation of a Menu Link for the Website
        1. Categories
      4. News Feeds
        1. Feeds
        2. Categories
      5. Polls
        1. Search Statistics
      6. Web Links
        1. Links
        2. Categories
      7. Summary
    15. 10. Extensions Menu
      1. Install/Uninstall
        1. Install, Components, Modules, Plug-ins, Languages, and Templates
      2. Module Manager
              1. Module Filters
        1. Site Module
          1. Breadcrumbs
          2. Footer
          3. Banner
          4. Main Menus
          5. Statistics
          6. Login Form
          7. Archive
          8. Sections
          9. Related Items
          10. Wrapper
          11. Feed Display
          12. Who's Online
          13. Polls
          14. Advertisement
          15. Random Image
          16. Syndication
          17. Newsflash
          18. Latest News
          19. Popular
          20. Search
              1. Copying a Module
        2. Administrator Module
          1. Logged in Users
          2. Popular
          3. Recent added Articles
          4. Menu Stats
          5. Footer
          6. Unread Messages
          7. Online Users
          8. Quick Icons
          9. Login
          10. Admin Menu
          11. User Status
          12. Admin Submenu
          13. Title
          14. Toolbar
          15. CSS Admin Menu
      3. Plugins Manager
        1. Authentication Plug-ins
          1. Joomla!
          2. LDAP
          3. OpenID
          4. Gmail
        2. Content Plug-ins
          1. Image
          2. Page Navigation
          3. SEF
          4. Rating
          5. Email Cloaking
          6. GeSHi
          7. Load Module
          8. Pagebreak
        3. Editors Plug-ins
          1. No Editor
          2. TinyMCE 2.0
        4. Editors-xtd Plug-ins
        5. Search Plug-ins
        6. System Plug-ins
          1. Log
          2. Debug
          3. Legacy
          4. Cache
          5. Remember Me
          6. Backlink
        7. User Plug-ins
          1. Joomla!
        8. XML-RPC Plug-ins
          1. XML-RPC-Joomla
          2. XML-RPC blogger API
      4. Template Manager
        1. Site
          1. Editing a Template
          2. Preview Icon
          3. Edit HTML Icon
          4. Edit CSS Icon
        2. Administrator
      5. Language Manager
      6. Summary
    16. 11. Tools
      1. Private Messaging System
      2. Mass Mail
      3. Global Check-In
      4. Summary
    17. 12. More on Extensions
      1. Installation
      2. Fireboard (Forum)
        1. Installation
        2. Configuration
        3. Setting Up a Forum
        4. Integration into the Website
      3. DOCman (Download section, Document Management)
        1. Installation
        2. Configuration
        3. Language
        4. Integration into the Website
        5. Preparing Content
        6. Search Plug-in
        7. Supplementary Module
      4. Exposé Flash Gallery
        1. Installation
        2. Integration into the Website
              1. Videos
        3. Album Manager in the Administration Section
        4. Uninstallation
        5. Album Manager as a Stand-Alone Program
      5. Integration into the Joomla! Framework
      6. Problems with Third-Party Components
        1. Updates
        2. Security
        3. What should you Do?
      7. Summary
    18. 13. Writing Your Own Joomla! Templates
      1. Corporate Identity
      2. HTML/XHTML, CSS, and XML
        1. HTML/XHTML
        2. CSS
              1. In the Central HTML File
              2. In a Separate CSS File
              3. Within an HTML Tag
              4. Combinations
        3. XML
      3. Creating Your Own Templates
        1. Concept
              1. Fixed Size or Variable (Fluid) or Both
              2. Structure
        2. HTML Conversion
        3. Directory Structures of the Template
        4. First Trial Run
        5. Integration of the Joomla! Module
        6. Creating a Template Package
              1. Uninstallation of the Template
        7. Installation with the Joomla! Template Installer
        8. What Source Code Comes from Joomla?
              1. The Left Module Position in Detail
              2. Template Overrides (Customize HTML Output without Changing the Core Files)
      4. Summary
    19. 14. Barrier Freedom and Joomla!
      1. Barrier Freedom—What is it Anyway?
          1. The Legal Backround
      2. Criteria for Accessible Sites at a Glance
        1. Separation of Content and Layout
              1. Jump Marks
        2. Demands on Design and Content
        3. Visual and Content-Wise Arrangement of Content
        4. Color Selection
        5. Contrasts
        6. Variable Font Sizes
        7. Scalable Layouts
        8. Graphics
        9. Sufficiently Large Navigation Elements
        10. Forms
              1. The fieldset and label Elements
      3. Barrier Freedom in Joomla! 1.5—Possible with Beez
      4. HTML
      5. Jump Marks
        1. index.php
        2. Skip Links in Forms
      6. Beez and Modules
      7. com_content
      8. Forms
      9. Data Tables
      10. Design and CSS
        1. Beez Internal CSS Files
              1. CSS Files in Summary
        2. Positioning
        3. The Layout
        4. Miscellaneous
      11. Joomla! Internal Accessibility Features
      12. Additional Information about This Topic
        1. Assistive Technologies
        2. CheckerTools
        3. Book Tip
      13. Summary
    20. 15. Your Own Components, Modules, and Plug-ins
      1. Model—View—Controller
              1. Model
              2. View
              3. Controller
        1. What is the Advantage with MVC?
              1. So Where is Everybody's Advantage?
      2. The helloworld Sample Component
        1. A Home for helloworld
              1. The Entry Point (/componenet.com_hello/hello.php)
              2. The Controller (/component/com_hello/controller.php)
              3. The View (/component/com_hello/views/hello/views.html.php)
              4. The Template (/component/com_hello/views/hello/tmpl/default.php)
              5. The Result
              6. The Installation
              7. Conclusion
      3. An Example Component
        1. The MySQL Table
        2. The Front End
          1. The Entry Point (/components/com_auto/auto.php)
          2. The Controller (/components/com_auto/controller.php)
          3. The View (/components/com_auto/views/auto/view.html.php)
          4. The Template (/components/com_auto/views/auto/tmpl/default.php)
          5. Model (/components/com_auto/models/auto.php)
          6. Conclusion
        3. The com_auto Administration
              1. The Component Table
              2. The Entry Point (/administration/components/admin.auto.php)
              3. Controller (/administration/components/controller.php)
              4. Another Controller (/administration/components/controllers/auto.php)
              5. View for the List (/administration/components/views/autos/view.html.php)
              6. Template List (/administration/components/views/autos/tmpl/default.php)
              7. View Form (/administration/components/views/auto/view.html.php)
              8. Template Formular (/administration/components/views/auto/tmpl/form.php)
              9. Automobile table (/administration/components/tables/auto.php)
              10. Installation (/administration/components/install.sql) and Uninstallation (/administration/components/uninstall.sql)
        4. Test
        5. Creating an Installation Package
          1. auto.xml
      4. Modules
        1. Source Code
          1. Entry Point (mod_auto.php)
          2. Helper class (helper.php)
          3. Template (tmpl/default.php)
          4. mod_auto.xml
        2. Installation
        3. View on the Website
      5. Plug-ins
              1. Source Code
      6. Summary
    21. 16. A Website with Joomla!
      1. Idea
      2. Preparations
        1. Logo and Appearance
          1. Photographs
          2. Texts
        2. Technical Conversion
          1. Local Installation
          2. The First Few Articles
          3. Masthead
        3. Menu Structure
          1. Structure of the Main Menu
          2. Structure of the Top Menu
          3. Structure of the User Menu
        4. Setting up the Texts and the Menu Links in the Main Menu
          1. Contact Link
          2. Top Menu
          3. Shop
          4. The Impressions
        5. The User Section
          1. The User Menu
          2. The Download Section
        6. User Details
        7. First Results
        8. M Bertrand Learns CSS
          1. Formatting Step by Step
              1. Pattern
              2. Title of the Module
              3. Menu Items
              4. Divider Lines
              5. The Actual Links
      3. Changes for Joomla! Version 1.5
              1. Changes to the Menus
      4. Installation on the Webserver
        1. How to Do the Installation
          1. FTP
          2. MySQL
        2. Installation of Joomla! at the Provider
        3. Importing the Data
        4. File and Directory Rights
      5. Search Engines
        1. Search Engine Friendly URLs
        2. Metatags
      6. Design
        1. Installation of the Template
        2. The Template
              1. Maintenance
              2. Layout
              3. A Portrait
      7. Happy End
        1. How Does It Work in Reality?
      8. Summary
    22. 17. Bonus Templates
      1. NGO
        1. Tom Bohaček
        2. The World Knowledge Template
        3. Creative Approach
        4. Structural Approach
      2. Business Establishment
        1. Andy Miller
      3. Summary
    23. A. Online Resources
    24. B. Template Modules
    25. C. How Do I switch an Image (Logo) in the Template?
      1. Method 1
      2. Method 2
    26. D. Joomla! API
    27. E. Forgot the Admin Password
    28. F. Migration from Joomla! 1.0.x to Joomla! 1.5
      1. Backing Up Your Data
        1. Backing Up the Files
        2. The Migration Script
        3. New Installation of Joomla! 1.5.0
              1. What Happens Now?
        4. Manual Method
          1. Modifying the Joomla! 1.5 Database Scheme
          2. Importing the Tables
    29. G. Security Without Global Variables
    30. Index