31,19 €
There are many powerful open source CMSs available to take the pain away from managing a web site. These systems are feature rich, often easy to use, and free. Unfortunately, there are so many choices it's tough to be sure you're choosing the right one. How can you be sure that you are selecting and working with the right tool?
This book will guide you through choosing the right CMS for your needs. You can be confident in your choice of CMS for the needs of your project. It will also help you make a start using the CMS, and give you a feel for what it's like to use it ñ even before you install it yourself.
Are you bewildered by the many open source CMSs available online? Open source CMSs are the best way to create and manage sophisticated web sites. You can create a site that precisely meets your business goals, and keep the site up to date easily because these systems give you full control over every aspect of your site. Because open source CMSs are free to download, you have a huge amount of choice between the various systems.
Yet there are many open source CMSs to choose from, each with unique strengths ñ and occasionally limitations too. Choosing between the bewildering number of options can be tough.
Making the wrong choice early on may lead to a lot of wasted work, because you'll have a half-finished site that doesn't meet your initial requirements ñ and needs to be restarted from scratch.
This book will show you how to avoid choosing the wrong CMS. It will guide you through assessing your site requirements, and then using that assessment to identify the CMS that will best fit your needs. It contains discussions of the major CMSs, and the issues that you should consider when choosing: their complexity to use, their features and the power they offer. It discusses technical considerations such as programming languages and compliance with best practice standards in a clear, friendly way that non-technical readers can understand.
The book also contains quick-start guides and examples for the most popular CMSs such as WordPress, Joomla!, and Drupal, so that you can experiment with these CMSs, get a feel for how they work, and start using them to build your site.
After reading this book, you can be confident that your CMS choice will support your web site's needs because you have carefully assessed your requirements and explored the available options.
Das E-Book können Sie in Legimi-Apps oder einer beliebigen App lesen, die das folgende Format unterstützen:
Seitenzahl: 341
Veröffentlichungsjahr: 2009
Copyright © 2009 Packt Publishing
All rights reserved. No part of this book may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written permission of the publisher, except in the case of brief quotations embedded in critical articles or reviews.
Every effort has been made in the preparation of this book to ensure the accuracy of the information presented. However, the information contained in this book is sold without warranty, either express or implied. Neither the author, Packt Publishing, nor its dealers or distributors will be held liable for any damages caused or alleged to be caused directly or indirectly by this book.
Packt Publishing has endeavored to provide trademark information about all the companies and products mentioned in this book by the appropriate use of capitals. However, Packt Publishing cannot guarantee the accuracy of this information.
First published: April 2009
Production Reference: 1070409
Published by Packt Publishing Ltd.
32 Lincoln Road
Olton
Birmingham, B27 6PA, UK.
ISBN 978-1-847196-22-4
www.packtpub.com
Cover Image by Parag Kadam (<[email protected]>)
Author
Nirav Mehta
Reviewers
Chanh Ong
Daniel Chapman
Jeff Potts
Mark Bowen
Sujit Pal
Acquisition Editor
David Barnes
Development Editor
Swapna V. Verlekar
Technical Editor
John Antony
Copy Editor
Sneha Kulkarni
Indexer
Hemangini Bari
Editorial Team Leader
Abhijeet Deobhakta
Project Coordinator
Lata Basantani
Proofreader
Chris Smith
Production Coordinator
Shantanu Zagade
Cover Work
Shantanu Zagade
Nirav Mehta is well known for his entrepreneurial ventures, his breakthrough ideas, and his contribution to open source. Nirav leads a software development company—Magnet Technologies—in India that specializes in Rich Internet Applications, Web, and Mobile. He wrote a content management system eight years ago and has worked on numerous systems after that. Nirav has led more than 100 CMS projects in his company.
Nirav simplifies the most complicated ideas and presents them in lucid language. Over the last 10 years, Nirav has written and spoken on a variety of topics. His Mobile Web Development book tops its category and has received high-satisfaction ratings.
Nirav loves yoga and programming. In his spare time he builds innovative products, and trains people on leadership and effective programming.
Visit his blog at: http://www.mehtanirav.com/
Visit this book's special website at: http://www.cmsbook.info/
My love and thanks to family—my parents, wife, and sisters. It's your support and freedom that lets me do all the things I love! Thanks for your constant love, encouragement, and reminders!
Special thanks to all open source CMS developers. Keep up the good job!
I would like to thank the team at Packt—David, Lata, Swapna, John, my reviewers—Jeff, Sujit, Chanh—and everyone else. Thank you for your dedication, suggestions, and follow-ups. You made it possible!
I also appreciate the readers of this book. I believe you are up to something big, and hope my work helps you achieve it.
Chanh Ong is a Computer Specialist and has many years of experience in various computer platforms and operating systems; programming languages such as PHP, JavaScript (AJAX), C, VB, Perl, Microsoft Access, dBase, and FoxPro; system administration on Unix, Linux, Vax and Microsoft Windows; and DBA of various databases such as Oracle, MySQL, Postgres, Informix, MSSQL, and so on. He utilizes web servers such as Apache and IIS to help build web applications. He also does custom templates for clients.
He has an open source project called COAddOns, which develops several add-ons for Mambo, Joomla!, MiaCMS, and MoseCMS—which is an easy and extensible CMS. He is also a former Mambo CMS core developer.
He researches on CMSs and their tools. He has lot of experience in installing various CMS, including Wiki, and he also sets up sites using Microsoft SharePoint services.
He runs a web site where he blogs about his findings that help him in his research. His web site also provides support for his open source project, COAddOns.
His main web site is http://support.ongetc.com and his Wiki is http://wiki.ongetc.com and his blog is: http://blog.ongetc.com.
He wrote an article for Packt Publishing titled
How to Choose an Open Source Content Management System. You can find it at http://www.packtpub.com/article/how_to_choose_an_open_source_ content_management_system.
I would like to thank Scott Goodwin for letting me help out at OpenSourceCMS and open my eyes to the world of CMS. He asked me to take on an open source project. I enjoyed working on it so much that it become the COAddOns project, which has grown into various add-ons. It also helped me start my own web site at http://ongetc.com.
I want to thank Damian Carvill for exposing me to the world of books by asking me to write an article for Packt Publishing, and involving me as a judge for the Packt Annual CMS Award event.
I want to thank Swapna Verlekar for inviting me to be a book reviewer for this book. I also want to thank Lata Basantani for working closely with me and ensuring that the reviewing of each chapter was on schedule.
I would like to thank the author of this book, who has done a very nice job in researching on the subject. He has written very easy-to-understand material for beginners to have a head start.
I want to thank my family who let me have the time to do this book review.
Daniel Chapman started his career as an Oracle database consultant and trainer, working for various Australian universities, telecommunication companies, and also Oracle Australia. He developed a keen sense of the value of development standards and analysis processes. After 10 years in this arena, he wanted a change and moved into web development in 2004. He quickly picked up PHP, JavaScript, HTML, and CSS while experimenting with various CMSs.
Finally deciding on Joomla! as his CMS of choice, Daniel initially began working as a consultant developing sites and producing a few small extensions before starting one of the first Open Source Extension Clubs: www.ninjoomla.com. Eventually, he changed the club's name to www.NinjaForge.com, and has become quite well known in the Joomla! sphere.
I would like to thank my wife Kyoko, for her seemingly endless support of my work, even when it takes away time from us being together. I can't thank her enough for being there for me.
Jeff Potts is the Director of the Enterprise Content Management Practice at Optaros, a global consulting firm focused on assembling Next Generation Internet solutions featuring open source components. Jeff brings over 10 years of ECM practice leadership and over 17 years of IT and technology implementation experience in IT departments and professional services organizations.
Jeff has a deep technical experience in content management with custom and packaged solutions (commercial and open source). For the last several years, he has focused on Alfresco. But he has also worked with other open source content management technologies including Drupal, WordPress, Zope/Plone, and Apache Cocoon.
Jeff's areas of business expertise include document management, content management, workflow, collaboration, portals, and search. Throughout his consulting career he has worked on a number of projects for Fortune 500 clients across the media & entertainment, airline, consumer packaged goods, and retail sectors.
Jeff is a frequent speaker at Alfresco and Content Management industry events and has written articles for technical journals. Last year he published his first book, the Alfresco Developer Guide (http://www.packtpub.com/alfresco-developer-guide/book).
Jeff blogs on all of these topics at ecmarchitect.com.
Mark Bowen is a web developer, musician, graphic designer, electronics engineer, and helicopter pilot amongst many other talents. He is currently living in Birmingham, United Kingdom. He is an avid Apple Macintosh user and has been so for well over 15 years now.
Mark studied Performing Arts in college and ended up getting a job at the college as a Music Technician. It was during this time that he gained his City & Guilds 224 in Electronics Servicing. So he is qualified to take a TV apart, put it back together again, leave bits out, and still charge for it!
Now working as a Senior Producer for the second largest independent commercial production house in the UK, Mark has made well over 30,000 adverts-jingles-music-based projects in his almost eight years of work there.
Mark has been developing with Adobe Flash, and was asked to review the Advanced PHP for Flash book by Friends Of Ed due to the work he did on a Flash-based chat application.
After Flash, Mark took up learning HTML/CSS, and now codes sites entirely by hand without the use of any WYSIWYG editors. These days, Mark's preferred tool of choice for creating Internet sites is the ExpressionEngine CMS platform. About this platform he states, "It is a designer's dream come true" due to its very nature of keeping code and content completely separate from each other. Mark is an avid reader of the ExpressionEngine forums, and can usually be found there each day answering questions wherever and whenever he can.
He is currently in the process of setting up an aviation-based photography web site with his wife Sarah (who is also a helicopter pilot—Flight Instructor). It will host and sell the most professional images in the world relating to aviation. This came about due to Mark being the sole designer for the largest military helicopter magazine in the world. Through his links with the magazine, he now has access to the best aviation photographers in the business. Keep an eye out on the ExpressionEngine forums for the site's launch!
I want to thank Packt Publishing for giving me the opportunity to take part in helping out with the book.
Sujit Pal started programming some 20 years ago, and never looked back. He currently works at Healthline Networks, Inc., a search vertical focused on health, as a part of its Research and Development team. Apart from his work, his favorite pastime is to explore new software technologies, techniques, and languages. He writes about his experiments at sujitpal.blogspot.com.
There are many powerful Open Source Content Management Systems (CMSs) available to take the pain away from managing a web site. These systems are feature-rich, often easy to use, and free. Unfortunately, there are so many choices that it's tough to be sure which CMS is the right one for your needs. How can you be sure that you are selecting and working with the right tool?
This book will guide you through choosing the right CMS for your needs. You can be confident in your choice of CMS for the needs of your project. It will also help you make a start using the CMS, and give you a feel for what it's like to use it—even before you install it yourself.
Are you bewildered by the many open source CMSs available online? Open source CMSs are the best way to create and manage sophisticated web sites. You can create a site that precisely meets your business goals, and keep the site up-to-date easily because these systems give you full control over every aspect of your site. Because open source CMSs are free to download, you have a vast choice between the various systems.
There are many open source CMSs to choose from, each with unique strengths—and occasionally limitations too. Choosing between the bewildering numbers of options can be tough.
Making the wrong choice early on may lead to a lot of wasted work because you'll have a half-finished site that doesn't meet your initial requirements, and you may have to restart from scratch.
This book will show you how to avoid choosing the wrong CMS. It will guide you through assessing your site requirements, and then using that assessment to identify the CMS that will best fit your needs. It contains discussions of the major CMSs and the issues that you should consider when choosing: their complexity to use, their features, and the power they offer. It discusses technical considerations such as programming languages and compliance with best practice standards in a clear and friendly way that non-technical readers can understand.
The book also contains quick-start guideslines and examples for the most popular CMSs such as WordPress, Joomla!, and Drupal. You can experiment with these CMSs, get a feel of how they work, and start using them to build your site.
After reading this book, you can be confident that your CMS choice will support your web site's needs because you have carefully assessed your requirements and explored the available options.
The author has created a special website for this book—http://www.cmsbook.info/. You can communicate with other readers and get additional insights and support from there.
Chapter 1 Do I even want an Open Source CMS?—When and how a content management system is useful. Why open source? Readymade or custom-built?
Chapter 2 Evaluating your Options—Different CMS types, their purposes, and different CMS technologies
Chapter 3 Understanding your Requirements—brainstorm and clarify your requirements, standard compliance, scale of the site, and key features
Chapter 4 Building the Site—trying out CMSs, technical requirements, downloading and installation, configuration, and creating navigation
Chapter 5 Content Editing and Management—using WYSIWYG editors, adding pictures, publishing content, and creating links
Chapter 6 Templates and Plug-ins—adding a photo gallery and customizing design via templates
Chapter 7 Extending and Customizing—understand a CMS's code quality, and make code-level changes to understand their complexity
Chapter 8 Blog CMSs—perform typical tasks with the top three blog choices and evaluate features
Chapter 9 Web CMSs—using top Web CMSs, customizing them, and gaining key CMS skills
Chapter 10 CMSs for E-Commerce—managing product/service-based e-commerce sites with CMSs, and knowing which would be best for you
Chapter 11 Team Collaboration CMSs—internal sites for collaboration and communication, workflow, access privileges, and version tracking; Alfresco
Chapter 12 Specialized CMSs—CMSs that serve niches—e-learning, wiki, photo galleries, discussion forums, and so on
Chapter 13 Hosting your CMS-Powered Site—selecting and working with a web host
Chapter 14 Getting Involved in the Community—asking questions, learning from documentation, and getting help
Chapter 15 Working with a Specialist—finding experts, evaluating them, tips for project management, and outsourced teams
Chapter 16 Packt Open Source CMS Awards—Best CMSs voted by the community and experts
The reader should be an intermediate computer user with a reasonable understanding of what a web site can do, the different kinds of web sites that are out there, and how to work with interactive web sites (as a user—joining discussion forums, for example).
This book is written for anyone who wants to start a web site and is looking for a good CMS. It is best suited for people who are selecting a CMS for their site and people who want to manage a CMS. Knowledge of web basics is certainly helpful, but not needed.
In this book, you will find a number of styles of text that distinguish between different kinds of information. Here are some examples of these styles, and an explanation of their meaning.
New terms and important words are shown in bold. Words that you see on the screen, in menus or dialog boxes for example, appear in our text like this: "clicking the Next button moves you to the next screen".
Important notes appear in a box like this.
Tips and tricks appear like this.
Feedback from our readers is always welcome. Let us know what you think about this book—what you liked or may have disliked. Reader feedback is important for us to develop titles that you really get the most out of.
To send us general feedback, simply drop an email to <[email protected]>, and mention the book title in the subject of your message.
If there is a book that you need and would like to see us publish, please send us a note in the SUGGEST A TITLE form on www.packtpub.com or email <[email protected]>.
If there is a topic that you have expertise in and you are interested in either writing or contributing to a book, see our author guide on www.packtpub.com/authors.
Now that you are the proud owner of a Packt book, we have a number of things to help you to get the most from your purchase.
Visit http://www.packtpub.com/files/code/6224_Code.zip to directly download the example code.
The downloadable files contain instructions on how to use them.
Although we have taken every care to ensure the accuracy of our contents, mistakes do happen. If you find a mistake in one of our books—maybe a mistake in text or code—we would be grateful if you would report this to us. By doing so, you can save other readers from frustration, and help us to improve subsequent versions of this book. If you find any errata, please report them by visiting http://www.packtpub.com/support, selecting your book, clicking on the let us know link, and entering the details of your errata. Once your errata are verified, your submission will be accepted and the errata added to any list of existing errata. Any existing errata can be viewed by selecting your title from http://www.packtpub.com/support.
Piracy of copyright material on the Internet is an ongoing problem across all media. At Packt, we take the protection of our copyright and licenses very seriously. If you come across any illegal copies of our works in any form on the Internet, please provide us with the location address or website name immediately so that we can pursue a remedy.
Please contact us at <[email protected]> with a link to the suspected pirated material.
We appreciate your help in protecting our authors, and our ability to bring you valuable content.
You can contact us at <[email protected]> if you are having a problem with any aspect of the book, and we will do our best to address it.
It's a sunny Sunday morning in Miami. Oprah picks up her coffee and settles in her favorite patio chair. She is in a quiet trance-like state. Gazing at kids playing on her left, her expression turns from deep thoughts to confusion to puzzlement.
Oprah Casey is an established Yoga expert. She is just back from her class. She starts thinking about her web site. She has a four-page web site that Mario, a friend, created a decade ago.
Her current web site consists of an introduction on Yoga, her own biography, a testimonial page, and a page with her Yoga center's address and phone numbers. Last time she wanted to add driving directions to the address page, it took her two weeks to get that done. Here's what happened:
Oprah is happy that now she will get less calls asking for directions. At the same time, she is annoyed with this whole process of change. She does not want to go through another such ritual for a new change. What if her phone number changed? What if she wanted to update her bio? Or what if she wanted to add another page to her site? She can't afford to wait too long. She does not even want to take favors from her friend anymore!
She grabs a pen and paper and starts scribbling.
Oprah is clear that she can't continue with her current web site and the way it's managed. She needs a complete reorganization of her web site. Oprah wants her web site to have the following features:
Oprah wants her web site to be easily manageable. She can understand technology, but is not a programmer. She wants to manage the web site content on her own. Whether it's adding a paragraph on a page or removing some old information, she wants to do it on her own.
Web site should be dynamicShe wants the changes that she makes to be reflected immediately. It should be possible to add a new section or link easily. Oprah wants to add photos and Yoga class information. And this should be updated on the web site immediately.
Other featuresThere are many other things that Oprah wants such as e-commerce, class booking, better design, and so on. The new web site should allow addition of all these features. If not right now, she wants them in the near future.
Finally, Oprah calls Mario. She politely explains to him the problems and what she wants. She then pauses to hear Mario's reply.
Mario is quick. He asserts that Oprah needs a Content Management System (CMS). It's a software that will give her all the required features, and he can set it up on her web site. Apart from managing site content and navigation, a CMS may also allow interactive content such as discussions, newsletters, blogs, photo galleries, and so on.
Mario explains a variety of benefits from using a CMS. They are:
Oprah interrupts Mario and says she appreciates these benefits, but wants to know if there are any other alternatives.
"What you need IS a content management system. We can go ahead with a readily available system, or hire someone to build one from scratch. I could write a CMS for you, but your needs are not so specific. I would rather use an open source CMS and customize it to your needs. Who wants to reinvent the wheel, you see!", Mario says.
"This makes sense." Oprah is thinking. "If I want things to be dynamic, I will need some kind of software to do that. I know that people use some web-based software to manage their sites. I can easily pick that up..."
Mario continues, "If you simply wanted to publish photos, you can use some photo management software on your machine and publish the site on a server. If you want to write regular updates on Yoga, you could start a blog. And you could use a 'hosted' blog where you don't have to do any server setup, or the like. You just write content. If you want static content, we can use some other online tools that help design web sites. What you want is manage content and site frequently, and on your own. We also want full control and our own site to be the host. That certainly is what CMSs are designed for."
Oprah is now convinced that she needs a CMS.
The next question that comes to her mind is, "OK, so which CMS should I use?"
Mario explains that there are many options. Content Management Systems have been around for quite some time and have evolved. There are general-purpose systems and some serving niches. There are many commercial and enterprise-class CMSs. But Mario emphasized on going ahead with an open source CMS. He listed many advantages such as:
"Apart from telling you to use an open source CMS, I can't suggest much further now. There are hundreds of options you have, and which one you choose depends on your exact requirements and comfort level." Mario suggested. "But don't worry; I am always available if you need any help."
That ended the conversation. Oprah relaxed in her chair and gathered her thoughts.
That actually gave her a lot of peace. She felt free and ready to take on a new journey. Oprah is ready to choose a CMS and build her site to her desire. She is thrilled!
Your situation may be similar to Oprah's—or at least to some extent. As she concluded that an open source CMS is appropriate for her, you may have too. Or, you may be looking at open source CMSs as an option to manage your web site—public or internal.
When you are starting up a web site, you would like a system that makes it easy for you to manage the site. Open source Content Management Systems help manage different types of content—from blog posts and photo albums to events and e-commerce. There are some really powerful CMSs out there and they can take the pain away from managing a web site.
Unfortunately, there are plenty of choices available and it's tough to make a decision. How do you select the best CMS for your needs? It is daunting to find a good content management system. There is no comprehensive guide that understands users' needs and suggests suitable CMSs for them.
Even after making a choice, installing, customizing, and managing a CMS is generally too technical for new users. We need something that will quickly make us productive with the CMS we select.
Then there are important subjects that are neglected such as hosting, and working with developers and communities.
This book walks you through understanding your requirements by elaborating on the different options available for your CMS, and thus helps you make a choice. It then covers common tasks—installation, design customization, plug-ins, content editing and management, and so on—in detail, for specific CMS types. The book even covers specialized CMSs, hosting, working with developers, and getting help from the CMS community.
This book helps you understand your requirements first. It walks you through a simple yet effective method of listing down what you want your web site to do. You are then introduced to different types of CMSs such as blogs, forums, general purpose CMS, e-commerce tools, collaboration, and more. This helps you narrow down your search.
This is followed by practical guides on doing some common tasks with any CMS. These tasks include installation, setting up a design, creating navigation structure, entering and editing content, adding pictures, enhancing functionality with extensions and plug-ins, and publishing the site. Here you learn skills that can be applied to any CMS you choose.
It then covers different types of CMSs in detail. The book is full of how-tos for popular CMSs, and listings of other choices that you have. No matter what your need is, you will certainly develop useful skills with this book.
At the end, the book covers important subtopics that usually go uncovered: how to select a web host for your site; how to select and work with a software developer/vendor for customizations; how to get help from community resources and winners of Packt's CMS awards.
Overall, this book helps you throughout the process of building and launching your CMS-powered web site.
The book takes a task-centered approach. Each task is taken through steps with detailed instructions. The book is complete with screenshots and resources. It even has supplementary tasks that readers can carry out to further build their skills in each task. Everything is oriented towards day-to-day tasks of managing content with a CMS.
We will be working with Oprah on her Yoga Site. In the process we will learn what we need to do for our own sites.
Just like Oprah, we are excited to start a new journey—a journey in which the path and the destination are equally important. Let's start by looking at what options we have for building our site.
Now that we have seen the benefits of open source CMSs, we are ready to explore further. Let us look at different types of open source CMSs. In this chapter we will:
A Google search for open source content management system yields more than 18 million results. If you browse through the CMS category of Open Source Scripts (http://www.opensourcescripts.com/), it too gives more than 300 options. How do you find a suitable CMS?
Let's begin by looking at different types of content management systems.
CMSs come in all shapes and sizes. They can also be classified by their purpose. Some are made to publish blogs, some for image galleries. General-purpose CMSs allow the dynamic publishing and management of site content. The following is a screenshot of the CMS classification tree on OpenSource CMS (http://www.opensourcecms.com/), which is a service with live demos of major CMSs:
The top three categories—Portals, Blogs, and Forums—cover most of the CMSs. The others are more specific—Groupware, e-Commerce, Learning Management, Image Galleries, Wiki, Light weight CMSs, and Miscellaneous. Now, you may be asking: "OK, but what is the difference between them?" Let me explain.
