Master Template for Class Web Sites
Introduction to the Template
We are pleased to announce the availability of a new master template for creating class web sites. This template is based on the Joomla Content management system used successfully by the classes of 1972 and 1969. All of the software used in this template is open-source and most of it is free.
You can see what the template looks like before it is customized for your class at www.hrtemplate.org. (You can log in using user name 'TestUser' and password 'letmein'). We describe key features and benefits here.
You can install and run this template on your own server, or you can use one of several inexpensive hosting companies who specialize in hosting Joomla sites. Here is a Web page that lists some of the hosting companies.
If you would like to pursue using this template, you can email Bill Bean or call him at 617-864-6813.
The rest of this page (and subsidiary pages) is documentation of the template. In order to use the system effectively and to understand the documentation you will need to absorb a certain amount of jargon. We'll try to make it as painless as possible.
The template was originally written to run on on Joomla 1.5. Recently, a new version 1.6 (and even more recently 1.7) of Joomla has been released. The new versions have major differences from 1.5 and many of the programs that we use had to be modified to run in 1.6/1.7 This work is complete and as of October 2011 we are in the process of upgrading the individual sites.
As of 12/12 all of the sites are using Joomla 2.5.
Introduction to Joomla
Joomla is a free, open-source, extensible content manager. A content manager is a program that you install on a Web server that allows you to easily create a Web site and to manage the content that appears on the site. That is the core function of Joomla. The rest of those adjectives mean that you can use it without charge; you are free to modify it to suit your own needs; and that the basic system can be extended by adding other, independently developed modules to it.
The key pieces of Joomla Jargon that you must master before we go on are:
- Article: Just what it sounds like. A piece of text that you've written and would like to display on your Web site.
- Components: Programs that provide Joomla with extra capabilities such as displaying Google maps, or displaying galleries of photographs. A component is generally responsible for a whole operation involving one or more pages.
- Modules: Programs that produce output that can be displayed on your Web pages. A module might produce a list of your users, or a list of upcoming events, for example. The difference between a component and a module is that a component is responsible for a complete operation and possibly multiple pages, a module for only one block of output on a page - such as a poll.
- Plugins: Simple programs that extend the functionality of Joomla or of a module or component.
- Front End/Back End: The front end of the system is what your users see. It's the part of the system that's open to the world, or to your registered users. The back end is a more private part of the system that allows you to administer the Web site. The back end has all the controls you need to set up and manage the site.
- Menu: A grouping of menu items. There can be more than one menu on your site and pages can have individualized menus. Menus can also be set to display to only certain classes of users (registered or guest, for example).
- Menu Item: A single entry on a menu. It controls the text that appears on the menu and also what happens if the user selects it. A menu item, for example might take you to an article, or to a gallery of photographs.
The home page for Joomla is here.
Components Used in the Template
All of these components are included in the Master Template. Here, we list them and provide links to their Web sites where you can often find documentation and futher information.
Community Builder - Community and social networking features;
GMapsPro - Google Maps showing your users' locations;
Event List - Lists of events;
ExposePrive - Photo galleries;
Kunena - Forum;
Kunena Latest - A module that allows you to display the latest posts in the forum in a box on your front page.;
Sticky Message Pro - Displays a floating message on selected pages;
CBMailing - Handles bulk email to lists of classmates;
Google Analytics Brige - Adds Google Analytics tracking data to pages;
AllVideos - Provides audio and video both from the server and from other services such as YouTube.
AltHome - Allows you to specify an alternate home page for logged-in users.
GoogleVerify - Allows you to add the Google verification tag to your headers.
CB Photo Gallery - Provides a tab next to the user profile for the display of photographs.
Application for handling email - PHPList
We were not able to find a satisfactory component to handle email that was integrated with Joomla. We ended up using a separate application called PHPList. This is a robust program designed to handle subscriptions to email lists. More information is available on the PHPList home page. We use only the mailing engine from PHPList but it has a plethora of other features, which, in principle, we could use. They include automatic handling of bounced emails, click tracking in outgoing mail, and public subscribe/unsubscribe pages.
Getting Started for Webmasters new to the Template
When your site is first up you have a lot to learn quickly. This section packages together links to the most critical information. We suggest that you either read through this section first, or else refer to it often as you start to work on your site.
That covers the very basics. Once you've worked your way through these links you should be ready to explore on your own. Don't forget to check the How-to section below. It has a wealth of information on how to accomplish various tasks.
The initial configuration of the Web Template requires classmates to register before they can see most of the site. Registration is a multi-step process. First the classmate fills out a registration form with required information. Then the system sends the classmate an email asking him/her to confirm receipt. (This is done to ensure that we have a good email address.)
Once the classmate confirms receipt by clicking on the link in the confirmation email, the system sends an email to the system administrator notifying him/her that a new user is awaiting approval.
Your job as Webmaster is to respond to that email by going to the front end of the site and logging in as an administrator. Once you do so, you will see a menu group on the left hand side labelled "CB Workflows". Under it there will be a link to a list of classmates awaiting approval. You can view their registration information by clicking on their user name. Then you could, for example, look them up in the latest Class Report to verify that they really are a classmate. Once you are convinced, you click the "Approve" button and the system will notify the classmate(s) that they have been approved.
One thing that you should be aware of is that a substantial number of people either never get the first email message asking them to confirm their address (because of spam filters), or they don't read it and therefore don't confirm the address. The solution is to log in to the back end and go to Joomla->Components->Community Builder->User Management. On the to right you will see a drop down box that says "Select user status" Click this and select "Unconfirmed". That will list all the users who have registered but not confirmed their email. If they are more than a day old, I send them an email along the following lines:
Hi xxxx, I noticed that you started to register at hr65.org about a week ago and that you never confirmed your email address. Probably the email from the site got stuck in your spam filters somewhere. I am going to go ahead and approve your registration, so you should be able to log on with the user name and password you originally set up. Let me know if there's any problem, and sorry for not noticing sooner. Bill hr65.org Webmaster
You can confirm their email and approve them by clicking on the user's name in the User Manager, and then clicking the "Profile" tab and then the "Contact Info" tab under it. Then set the "Confirm User" field to "Yes" and "Approve User" to "Approved".
IMPORTANT: There are two places in the menu system where you can manage users. You should always use Joomla->Components->Community Builder->User Management. Never Joomla->Site->User manager. The reason is that the basic Joomla user registration system does not have the features we require so we have installed an add-on component called Community Builder and we should always mange users through Community Builder.
Bugs and Other Things You Should Know
Joomla is open-source software and is built by volunteers. Occasionally, for no obvious reason, some of the administrative features will work in Firefox and not in Internet Explorer. If you think that one of the administrative menus isn't working the way it should, try using Firefox!
Remember, this is a Wiki and depends on user content. If you figure out how to do something that isn't covered here, please add it so others can benefit.
Class of '65 Case Study
This pdf contains the handouts for a presentation of which parts of Joomla are responsible for creating which pieces of the final Joomla web page. The full presentation discusses how to identify components, modules, and plugins, and how to find them in Joomla's menu structure.
How to install a Joomla Security Patch
From time to time Joomla will issue minor upgrades that include security fixes. We strongly recommend that you install these patches. You can subscribe to the email Joomla Security Newsletter here. You can also get information about Joomla security issues on the Joomla Site administration page by opening the "Joomla! Security Newsfeed" on the right of the page.
Information on how to install a security patch can be found here, look near the bottom of the page, or search for "patch".
Links to Outside Sites
Setting up from Scratch - No Template
This section documents the process of setting up a site like the template from scratch. It is intended for use in the unlikely event that somebody needs to start fresh. You should not need this information. It is here only as a matter of public record.