Book Image

Building Websites with e107

Book Image

Building Websites with e107

Overview of this book

e107 is a PHP-based content management system that uses the popular open source MySQL database system for content storage. e107 is released under the terms of the GNU General Public License and is completely free, totally customizable and in constant development. It is an ideal tool for developing small to large dynamic community websites, intra company portals, corporate portals, weblogs and much more. It has a large, enthusiastic, and helpful community of users.If you want to create a powerful, fully-featured website in no time, this book is for you. This book will help you explore e107, putting you in the picture of what it offers, and how to go about building a site with the system. The book covers all the core features of e107, and it is thorough and incremental tutorial approach it gives you the understanding to experiment with advanced features and customization.
Table of Contents (16 chapters)
Building Websites with e107
Credits
About the Author
Acknowledgement
About the Reviewer
Preface

Chapter 1. An Introduction to e107

When I coded my first website using Notepad in 1995, little did I know that my curiosity would tax the limits of my imagination and lock me into a loop of continual education. Each year brought improvements in the presentation of web pages, and eventually we were able to present tabular data from databases.

Of course, large businesses with IT staffs were able to provide the first interactive sites and eventually these programmers would offer those services to the small business sector, but at a price commensurate with their corporate hourly rates. If the programming was not enough to prohibit small business from taking advantage of interactive websites then the high costs of web-hosting services, especially ones with databases made it economically unfeasible.

As time progressed and e-commerce continued to grow in popularity the demand was on for a low-cost alternative for small businesses to take advantage of interactive websites. The dot-com bust brought a surplus of bandwidth and server space to the market effectively reducing hosting costs. Microsoft continued to gain in popularity with the FrontPage web-design program, making it easy for non-programmers to make attractive sites, and collect data via a form and easily send it to the Access database program. Well, maybe it was not so easy for the newbie but it was possible.

Most entrepreneurs or small business owners did not have the financial resources to operate a CMS. In 1995, Rasmus Lerdorft created a set of scripts written in PERL called PHP/FI. This early work inspired Andi Gutmans and Zeev Suraski to create a scripting language and, working together with Rasmus Lerdorft, they officially launched PHP 3.0 as the successor to PHP/FI. If you would like to learn more you can read all about it at http://us2.php.net/history.

Why is this important? Because it is easy to learn and implement, PHP has grown into the primary script for creating interactive websites and is the primary script for content management systems. Today CMS are growing in popularity—blogs, dating sites, bulletin boards, and yes even book publishers use content management systems.

There are hundreds if not thousands of open-source content management systems available; however, e107 has rapidly emerged in the forefront for its ease of use and its modular build. If you are not a computer geek a modular build allows you to activate only the elements necessary thus saving resources.

History of Content Management Systems

Before we get to e107, we will look at a brief history of Content Management Systems and what purpose they serve. Content Management Systems have been around since before computers. If you are of my age, which is BC (before computers), then you may remember that libraries once used catalog-card systems to assist us with finding books. While not computerized, this was a content management system using the technology prevalent at that time. Now of course, most card-catalog systems are contained within databases in a computer.

A content management system is defined as a collection of data within which a person with proper authorization can query, add, or delete records and have the results displayed in a unified manner. For those of you who have been on the Internet since it went public please be patient as I cover just a little web history for those who wanted to know but were afraid to ask their children.

No, I am not going to write about the complete history of the Internet as there are several good web pages out there if you are interested. I will begin with a discussion of the first private computer users on the Internet.

In the beginning, web pages were boring and static. They consisted of headers, text, bold, italic, and underline. The early web users were mostly scientists who used web to communicate and share information quickly. There was nothing like "webmasters" as are prevalent today. The web was still under the military’s control. It wasn't until the Internet was commercialized that the focus started to shift from "content" to "content with style". Webmasters seldom used pictures, as connection speeds were very slow. As the Internet grew so did HTML (Hyper Text Markup Language, the language for creating web pages). With the internet service providers providing more stable and faster connections, HTML continued to expand to allow web designers more control over the layout of their pages.

Meanwhile, the desktop computer revolution was progressing at breakneck speed. Small offices began sharing documents through local area networks. With the growth in networks a new concept "intranet" came into existence. An intranet is an internal or private network that is accessible within the confines of a company, university, or organization. I mention this because intranets are the birthplace of content management systems. Within an organization, management and employees began sharing documents, budgets, emails, etc. As these intranets grew so did the need for continuity of data entry and display.

If you have ever created a mail-merge document then you have created a template. I use this analogy as most of us at one time or another have wanted or needed to communicate the same information to a number of different people, yet wanted to make it appear as if we are writing to each individual. The mail merge was the first application of this sort that was used widely and consists of data file and a merge document. The data file is a database with names and addresses and other relevant information stored and the merge document is a document that contains the text with special merge keys inserted where you can put the "name" and "address". Then you can follow the directions for creating the merged documents and print your documents. The result is identical letters to different recipients but with different name and address.

As our society and the world became addicted to computers, so did the desire grow to provide more sophisticated sharing. While intranets were great, corporations were looking for a way for their sales representatives and/or customers to be able to gain access to ordering information to purchase and sell items and ensure that accurate delivery was predicted by checking inventory levels. And of course, sales needed to be credited to the proper person, state, and region and purchase orders needed to be charged against specific accounts. The early CMS was very expensive and required skilled computer programmers.