Overview

by Gisle Hannemyr

This chapter introduces the concept og free software. It also introduces content management systems, and using extenions to extend what Drupal can do for your website.

Table of contents

Drupal contributed extensions mentioned in this chapter: Blog, Poll.

Introduction

When people first started to explore the World Wide Web (WWW), if one wanted to create a fully featured website with forms, a blog, and a message board, one needed to know how to write HTML (and possibly JavaScript and CSS), and to accomplish anything dynamic, you needed to know yet another language such as PHP or ASP. And to have dynamic content, one probably would need to know SQL, the language that allows websites to store and retrieve information from a database. Or you needed have the funds to hire a programmer to build a website for you.

Today, we have entire robust and powerful web applications, supported by communities of web developers. Enter Drupal. Drupal is, along with a lot of others, a web application that do nearly all the work for you. You can build an ambitious website with Drupal without ever writing a single line of code. Indeed, that's the ultimate goal of Drupal: To free you from the inner workings of the code and instead let you focus on the layout and content of your site. There are a lot of other, similar web applications that also accomplish this, but Drupal is one of the best free software web applications for quick, code-free website creation.

Before we get into the setting up and use of Drupal, we think it's helpful to start by introducing the features of Drupal. After all, there's no sense in setting it up you don't know what it can do for you. The more you understand about what Drupal is, the better you can plan and use it to your advantage.

What Drupal is

The official Drupal website, Drupal.org, describes Drupal as a “free software package that allows an individual or a community of users to easily publish, manage and organise a wide variety of content on a website.” This is a great description of this application. It is free, as long as you follow certain rules that we mention later in this chapter. Drupal allows for a wide variety of content, making it extremely flexible and customizable. The fact that more than one individual can publish and manage content makes it a Content Management System (CMS). We explain each of these important characteristics of Drupal in more detail a little bit later on.

Free

Drupal is distributed as free software. This means that you can get a copy of the program and install it on your web server, modify the appearance of the pages and layout to suit your needs, and add your content to it without paying for the program. It seems too good to be true!

technicalSoftware designated as free software source essentially means it is “free”, but it does have certain legal obligations associated with it. For example, if you were a programmer and made changes to the code itself and then provided the new code to other people, there would be certain rules you would have to follow under Drupal's license. You can learn more about free software licensing here.

If you want to contribute tro Drupal, you can add to the efforts of the many great programmers who have created this software by visiting the contributor guide on Drupal.org or you can help one of the contributed projects you use on your own website by sponoring its continued maintenace.

Flexible

Drupal sites are completely flexible. This means you can do things like:

Customizable

One of the best things about Drupal is the ease with which you can customise your site's features. Drupal comes with lots of great features you can turn on or off with the click of a button. If you want to add a forum, poll, or blog, for example, you'll find they are features included with the Drupal application that you can easily include or exclude from your site. Your site can contain precisely what you want it to, and you can turn off features you don't want. Even if the rest of your life is an out-of-control mess, you can rest assured that your Drupal website will be exactly the way you want it.

What's better than free stuff? More free stuff! Beyond the features included with the program, many web developers have created and made freely available thousands extensions you can download and install! We recommend you take a minute to check out the contributed extensions here. You'll find some great add-ons are in there. If you aren't already excited about the potential Drupal offers yet, you will be. For example, free modules allow you to integrate Facebook and Twitter information into your site, turn your site into an online store, or create photo galleries. We tell you about some especially useful and interesting third-party modules later in this ebook.

A Content Management System

At its heart, Drupal is all about managing content. Drupal belongs to a class of applications known as web Content Management Systems (CMS). These applications are designed to separate the content on a website from the presentation of that content. In other words, you can manage the text and graphics on your site through the Drupal interface as easily as you can create a Microsoft Word document.

After you set up your site, you don't have to worry about looking at HTML code and putting your desired text into some sort of web format. You can simply type in a text box on a form and click a button. BOOM! Your new content will show up on your site. That, friends, is what they call easy. Behind the scenes, Drupal handles the conversion of your text into a format viewable on the web. Drupal will also, in the case of a blog-style page, save any old content previously published and provide a link to it for your users.

But the real power of CMS applications is that you can give specific users the permission to easily post, edit, and/or delete content on your site, while at the same time, deny them the permissions required to change the layout or features of your site. You can even allow certain users to create content, but not allow it to be published on the site until you've had a chance to approve it. All this control allows your site content to be maintained, while your site structure remains safe from possible harm.

What Drupal isn't

Drupal is a great application for creating a robust WCMS. But it is not perfect. You may encounter a few difficulties as you work with it:

technicalWe don't discuss programming in this ebook, but after you get your site running, you may want to learn more about the code side of Drupal.
In Chapter 23, we recommend some sites where you can get programming help if you choose to delve into the messy business of modifying the code.

What Drupal Can Do for Your Site

From web polls to blogs and shopping carts, your site can be full of great features without any need for you to get into the actual web programming side of things. We're sure you'll agree that this is a very good thing. As you look through the features, think about creative ways you can use them for the sites you're building.

tipYou won't have to build all these features at once; you can always add new features to and remove features from your site at any time.

All the screenshots in this section is created using Drupal's default theme, "Bartik". You'll learn what a theme is and how to change it in Chapter 3.

Polls

A poll is a question posed to visitors to your site that users are allowed to answer on the site. Polls are great for getting your community of users involved in discussions. Drupal has a simple interface that allows you to create custom polls.

After a registered user has voted, she sees a tally of the current voting results, such as the one shown in figure 1-1.

pollresult.png
Figure 1-1: A poll.

The Poll module is a built-in module with Drupal 7. In Drupal 9, this content type is no longer in core, but lives on as a user contributed project.

Poll used to be part of the Drupal core, but it is a user contributed module in Drupal 9.

Blogs

One of the primary reasons web Content Management Systems are extremely popular is the ease with which you can create blogs (see figure 1-2). Drupal provides fullfeatured blogging, complete with:

You may use set up Drupal blog just for yourself. But a drupal blog can also ne used as a multi-author blog, featuring the writings of multiple authors.

Blogs aren't used just to broadcast your ideas. Companies use corporate blogs to keep the content on their sites fresh. Instead of having to create new HTML web pages every time they publish a press release, for example, they can blog the information.

Not only is it incredibly easy to create blog entries, but you also develop a history of all your blog postings over time. All this information, and any other content posted on your site (including forums, static pages, and comments), can be made searchable – an incredibly useful feature!

pollresult.png
Figure 1-2: A blog post.

Blog used to be part of the Drupal core, but it is a contributed module in Drupal 9. You'll learn more anabling and configuring it in chapter 9.

Forums

A blog (weblog) is generally used to share large amounts of information with your users – with the information flowing one way, from you to your site visitors. A forum, by contrast, is most often used to allow your site visitors to discuss amongst themselves. If it's important to you to build community interaction and encourage communication among the users of your site, you should consider adding a forum.

A Drupal forum consists of a set of discussion topics, as shown in figure 1-3.

You may also see a small star on the speech-bubble icon on the left og the topic. It indicates that there are postings you have not read since you last visited the forum. In the colum "Replies", you can see the number of replies and the number of new replies since your last visit. This let you to pick up on a discusion no matter how long you've been away.

forum.png
Figure 1-3: A forum (General sisussion") with set topics.

When you drill down into a topic, you'll see the conversation about the topic (see figure 1-4). Each conversation has an opening statement (you crete the opening statement by creating content of the type "Forum topic"). After a forum topic has been created other community members forum topics may add to the conversattion by posting omments (replies to the Forum topic post).

forumtopic.png
Figure 1-4: A conversation about a particular topics.

Like many of Drupal's features, the forum configuration settings give you a great deal of control over the permissions you give your users. You can either:

You can even delegate specific people to be forum moderators and help you share the workload.

tipAssigning people to specific tasks on your site not only splits up the workload, but is also a great way to build a sense of community among the visitors and users of your site.

Contact forms

Okay, the contact form may not be the most exciting feature of a website, but it is an important one: Your site visitors need a way to get in touch with you. In the past, if you didn't have programming skill, you might have used an HTML mailto link on a web page – those embedded email addresses are harvested by spammers and will result in you getting unwanted junk email.

Drupal takes care of the contact form for you and creates a web form (see figure 1-5) that keeps your email address secret:

You can't change the fields in this form (without programming), but you can modify the text and add information, such as a contact address, a map and directions, and a phone number.

contactform.png
Figure 1-5: A contact form.

Contact is yet another a built-in module you just have activate.

Examples of Drupal websites

Are you excited about your website? Well, you should be! Using Drupal isn't just a great way to build a site; it's also a superb venue for showing the world how creative you can be. Below are links that let you take a closer look at some websites that have been built using Drupal. Take a look to get some ideas about what can be done with Drupal.

Drupal.org

This website, drupal.org, is the home of the Drupal community. It is built with the web application it promotes. You can see many of the features we mention earlier in this chapter – blogs, forums, and a search box – make the scene, along with quite a few more.

Showcasing Drupal websites

These links lead to pages tht showcase Drupal websites:

Most of the featured sites have substantially customised their appearance, but the code behind them is all Drupal.


Last update: 2022-03-23.