We are going to look at a few different modules, some of which we will use. These need to be installed first, so let’s do that now to save us time.
We need to download the following modules:
- Addresses module (http://drupal.org/project/addresses) enable the Addresses, Addresses – Phone/Fax and Addresses – Users components.
- Simplenews module (http://drupal.org/project/simplenews)
And extract them to our sites/all/modules folder, and enable them via the administration interface.
A look back
We have already looked at one very important aspect to communicate with our users—user e-mail settings. Within the User settings page (Administer | User management | User settings), we have a group of settings under the heading User e-mail settings. These are various email templates that are sent to our users upon certain events, such as registration, account activation, password reset, account being blocked or account being deleted. The content of these emails can be very important depending on the nature of the web site. In our Dino Space site, we may use a very informal, welcoming and fun tone for our automated emails. But for a business-oriented social network, we would want to use a much more formal tone.
Don’t forget, many modules also have their own email templates for sending emails to users, all of which can normally be changed easily from their respective sections in the administration area.
Communicating on an individual basis
As we have installed the contact form module on our site, we can also communicate with our users on an individual basis using the contact forms on their profiles. This is handy for those times when we do need to contact an individual user, maybe because of complaints against them by other members of the community, or perhaps to invite them to become a moderator or contributor to the site.
Alternatively, we can contact the user directly via their email addresses listed in their accounts, as this is viewable from the administration area.
We may wish to contact users who have not been active on the site for a long time, to remind them that the site is still there, and that they would be welcome to become active in the community once again. Drupal records the time a user was last active, which allows us to easily sort the list of users by their activity.
A module (Inactive user) is available for Drupal 5, which is intended to contact inactive users automatically, but (at the time of writing this) one is not available for Drupal 6. You may wish to keep watch on the modules list on the Drupal.org web site to see if anything comes up in future http://drupal.org/project/inactive_user
Communicating with individuals publicly
Don’t forget, we also have access to all of the communication methods available for our users to communicate with one another, such as replying to posts, commenting on content, or posting on their profiles. So if we need to contact a user, and we can contact them publicly, we can use these features.
Drupal has a number of modules available for sending emails to our users. Many of them are still currently under heavy development, or had their development stopped after the release of a previous version of Drupal. One of these modules is Simplenews, which is a native Drupal system for managing newsletters.
One limitation of the Simplenews module, and most of the modules available, is that it can’t send to all our users; it requires users to subscribe to the mailing list.
We can manage the Simplenews module via Administer | Newsletter. The features available to us are quite comprehensive. Let’s have a look at how the module works:
- Newsletters are created and managed from here
- Users subscribe to various Newsletters
- Users can be imported into Newsletters to become a subscriber
- A message is sent to a newsletter (this is referred to as an issue) by creating Newsletters content
- Issues which have been sent are saved within the module
- Issues which have not yet been sent are saved within the module as drafts
By default, we have a newsletter, which is generic to our site based on our site name.
From here we can also create new Newsletters should we wish so. The Subscriptions tab allows us to see and manage the subscriptions to our various newsletters, the Sent issues tab lists issues sent out to the newsletter lists, and the Drafts tab lists issues which are still being written. From within the Settings tab, we can set how new issues for newsletters are created, as well as the email address shown as the sender of issues.
Don’t forget to set the permissions; you want your users to be able to subscribe to newsletters.
Users can subscribe to newsletters from within their account, or we can enable blocks for the relevant newsletters we have on our site.
To send an “issue” to our newsletter list, we need to create the issue as a new content element via Create content | Newsletter issue.
We enter the subject of our email as the Title, select the newsletter to send the message to from the Newsletter drop-down list, and the message is entered into the Bodybox.
Beneath these options, we have some newsletter specific-options within the Newsletter sending options box. These options allow us to set the priority of the email message (this is often ignored by email clients), if we wish to request a receipt to see if a user has read the message (this is also often ignored by email clients) and finally, we can select a sending method.
There are three sending methods, which are:
- Don’t send now—this won’t send the message, and will save it as a draft.
- Send one test newsletter to the test address—this will send the email message to the test email addresses, which we can set in the administration area. This allows us to review the newsletter, as if we were a subscriber, make any final alterations and then send it to our list.
- Send newsletter—this sends the email to our newsletter list.
How to send an email to all our users?
We can use the module to send an email to all of our users, by taking advantage of the subscriber import feature. Within Administer | Content management | Newsletters | Subscriptions, we have the ability to Import subscriptions, as shown in the following screenshot:
Importing subscribers consists of entering the E-mail addresses (separated by a comma) and selecting the newsletter which we wish the user to subscribe to. To get all of our current members to subscribe to the mailing list, we could export all of our users’ email addresses directly from the Drupal database, using a tool such as phpMyAdmin. If we use the tool correctly, we can even get the data in a comma-separated list ready to be pasted into the form.