|
|
Document Actions
|
| Thoroughbred Champions |
Quarter Horse Champions |
|---|---|
| Man O' War |
First Down Dash |
| Secretariat |
Dashing Folly |
| Citation |
Special Leader |
| Kelso |
Gold Coast Express |
| Count Fleet |
Easy Jet |
listing:
| Thoroughbred Champions |
Quarter Horse Champions |
|---|---|
| Man O' War |
First Down Dash |
| Secretariat |
Dashing Folly |
| Citation |
Special Leader |
| Kelso |
Gold Coast Express |
| Count Fleet |
Easy Jet |

The HTML Editor is available to people who want to edit the actual HyperText Markup Language code, which web browsers use to describe web pages and web site. Learning HTML basics lets you do special things, but it isn't necessary for typical use. If you click the HTML icon you'll see a panel with the actual code, which you can edit, and then close the panel to get back to the WYSIWYG view.
The Styles pull-down menu lets you set the style for a selected block of text. Here are typical choices:

Normal is for normal text. Heading is usually bold, a slightly larger font, left-aligned, and with a single horizontal line extending across the page. Subheading is usually bold, an intermediate size font, and left-aligned. Literal is useful for quotes and for lining up text precisely, as with programming language code. Literal text is monospaced text set off by a box:
programming language code:
class SortAdvectionVelocities ___init__(self, advectionVelocities): this.advectionVelocities = advectionVelocities sortVelocities(): this.advectionVelocities.sort()
or columns of numbers:
location velocity -------- -------- vector a 21.7 vector b 15.4 vector c 48.3 vector d 38.2
You could also use a table for such data.
The zoom icon expands the edit panel to take up the full browser window. Click the icon again and it will toggle back to the normal edit panel size.
Choose file in the add item menu for a folder to upload a file:

You will see the edit file panel:

Click the Browse button to navigate to the file you want to upload from your local computer. Provide a title (you can use the same file name used on your local computer if you want). Provide a description, or select Related Item(s) if you want. When you click the save button the file will be uploaded to the folder.
Watch a video on adding a file.
Example file types include PDF files, Word documents, database files, zip files... -- well, practically anything. Files on a Plone web site are treated as just files and will show up in contents lists for folders, but there won't be any special display of them. They will appear by name in lists and will be available for download if clicked.
There are specialized add-on tools for Plone web sites that search contents of files. If you are interested in this functionality, ask your Plone web site administrator.
Add a link by clicking the menu choice in the add item menu for a folder:

You will see the edit link panel:

Good titles for links are important, because the titles will show up in lists of links, and because there tend to be quite a number of links held in a folder as a set. Paste the web address in the URL field or type it in. There is no preview feature here, so it is best to paste the web address from a browser window where you are viewing the target for the link.
Links created in this way will result in discrete content items, as compared to links embedded within web pages. Having links as discrete items lets you do things like organizing them in folders or setting keywords on them to facilitate grouping in lists and search results.
Use the add item menu for a folder to add an event:




It will not show on the main web site calendar until it has been published. <-- READ THIS!
How to Have Your Events Appear in Portlets and the calendar
As with News items, Events will not appear in the main events listing or the events portlet until they are published. You publish items using the state drop-down menu as shown in the following figure:
Watch a video on adding an event.
Use the add item menu for a folder to add a news item:

You will see the edit news item panel:

The standard fields for title, description, and related item(s) are in the panel, along with a visual editor area for body text and image and image caption fields. You can be as creative as you want in the body text area, and you can use the insert image (upload image) function to add as much illustration as needed. The images you upload for the news item will be added to the folder in which you are adding the news item.
The Image and Image Caption fields, proper, are for adding an image to be used as a representative graphic for the news item, for posting in news item listings.
How to Have Your News Items to Appear in Portlets
As with events showing up in the calendar: News items will not appear in the main web site news listing until they are published. You publish items using the state drop-down menu as shown in the following figure:
Watch a video on adding a news item.
On several of those screen captures illustrating adding content, you may have noticed a Related Items area at the bottom of edit panels. This is where you can pick related items to establish connections between content items. Once items have been related to one another, links will automatically show for related items when an item is viewed. You can't do this for folders, but you can for regular content, such as pages and images.
For example, in a folder containing several photographs, you may wish to relate two of them so that when one is viewed, a link to the other will show. First, click the image (this image is called PhotographOne.jpg) and choose the edit tab. At the bottom will be the simple Related Item(s) input area:


PhotographOne.jpg is shown greyed out (you can't relate an item to itself), and other images in the current folder are shown. If there were pages or other content items in the folder, they would show too. There is a search box if you would like to find items outside of the current folder. The list of items at the bottom has insert | view choices at far right. In this example, the insert choice is about to be made to select PhotographTwo.jpg, which will be added to the list of items relating to PhotographOne.jpg:

Now, when PhotographOne.jpg is viewed, a link to PhotographTwo.jpg will be shown at the bottom of the display:

This is an easy way to give life to your website, so that content, however nicely organized it may be within folders, will have a dynamic aspect. Use your imagination, but concentrate on making sensible choices for establishing relationships. There are other ways of making connections in Plone, through use of SmartFolders, but the ease of setting related items at the time of content creation, or upon item editing, is a feature that should not be overlooked.
The properties tab panel has input fields for basic descriptive information called metadata. Metadata is sometimes called "data about data." The panel contains settings and fields for:
The properties tab panel:

There is no requirement to specify this information, but it is a good idea to do so when there are several people involved in content creation, especially if there are multiple creators and contributors working in groups. You don't always need fields such as effective and expiration dates, language, and copyrights, but these data should be specified when appropriate. A content management system can only be as good as the data completeness allows. Specifying keywords requires attention, but if you are able to get into the habit, and are thoughtful to create a meaningful set of keywords, there is a return on the investment through searching and other facilities in Plone. You'll be able to put your finger on what you need, and can discover and use relationships within the content.
Of course, when we edit an item of content, the item already exists. Click the edit tab for an item and you will see the data entry panel for the item, along with the existing values of the item's data.
For an example of something really simple, where editing looks the same as adding, we can review how to edit a folder.
The edit panel for a folder simply shows the title and description input areas. Often a description is not provided for a folder, so the only thing to change is the title. If you do wish to give a description, which is a good idea for distinguishing folders in a list, the description can be text only -- there is no opportunity for setting styling of text, such as bold, italics, or other formatting. This keeps the descriptions of Plone content items as simple as possible.
Here is the edit panel for a folder, in this case, one called "Butterflies":

That's it. Change what you want and save, and the content item will be updated in Plone's storage system. You can repeatedly edit content items, just as you can repeatedly edit files on your local computer. By now you have appreciated that Plone stores discrete content items as separate entities, akin to "files" on a local computer, but you really don't have to think about it that way. Plone is a content management system, where the content comes in the form of numerous discrete content items that may be individually edited. Edit away at your heart's content.
For an example of editing a content item that is a bit different than adding in the first place, we can examine editing an image. Editing an Image can be done by navigating to an individual image and clicking the edit tab. Clicking the edit tab for the image, you will see the following edit panel:

Here, an image called Butterfly-small.jpg is being edited. You can change the title and description, as usual, in which case you would usually keep the setting to "Keep existing image." You can also change the image itself by checking the "Replace with new image" choice. Or, clicking the "Delete current image" choice will simply delete the image entirely. The "Related Item(s)" setting at the bottom is the same one always present for Plone content.
So, editing an image is a bit different than adding one in the first place, but not by much.
Editing panels for other content items are straightforward.
For most content items, if you want to change how it looks, you edit the content directly. But folders are a different animal. As containers of other items, folders are "where the action is" in Plone, so we will treat folder management in this and the following section.
Consider a scenario where a butterly enthusiast, John Smith, has logged in to his web site to work on the part devoted to Skipper butterflies. He navigates to the "Skippers" folder by clicking the navigation menu, which is on the left in his default Plone web site design. When he clicks the "Skippers" folder in the navigation menu, the view tab panel, or just "the view," for the folder is shown:


And, here is summary view:

And, tabular view:

And, thumbnail view, which is mainly useful for photographs, but still works for normal content:
![]()
Making a photo album is easy. Just add the photographs (images, or image files, the most common being .jpg files) to a folder and set the display view for the folder as thumbnail view. Thumbnail view will automatically handle the display as images are added to the folder, presenting a multi-page division into sets of images, as needed, as the number of images grows. If you are uploading photographic images from a digital camera or scanner, you will most likely want to resize them on your local computer before uploading them, because they are too large. This is described in a later section of this manual.
The basic list view functionality described above for folders fits the normal way we think of folders -- as containers of items -- but Plone adds a nice facility to set the view of a folder to be that of any single item contained within the folder. This takes advantage of the way the navigation system gets automatically wired up in a Plone web site as folders are created (As folders are created and published, they automatically show up in the navigation menu). Consider several scenarios where the custom display setting feature for a folder is very useful:
Watch a video about setting the page display view.
These examples illustrate that the flexibility of Plone folders is a central feature in the content management system.
Next, we move to the contents tab to see important functions for managing content.
The contents tab for folders is like "File Manager" or "My Computer" system utilities in Windows and Linux desktops and the "Finder" in Mac OS X, with similar functionality.
Clicking the contents tab for a folder, such as the "Skippers" folder below, shows the contents tab panel:

The contents tab panel is immediately recognized by observing the check boxes beside the items in the contents list. Click these check boxes to select multiple items for performing copy, cut, rename, delete, or change state operations.
Plone has a clipboard for copy and cut operations. If you check one or more items, and click cut or copy, a paste button will be added to the row of buttons along the bottom of the panel. If you then click another folder, you'll be able to paste the items there. For a cut operation, the items will remain in the source folder -- they won't disappear -- until they are pasted somewhere.
Renaming items will show a panel for entering a new name for the short name (or id) of the item, as well as the title. The distinction between short name and title is one that becomes apparent only when you rename, because Plone automatically creates the short name from the title in most Plone web sites. But the renaming operation must show you the short name as well as the title, because usually would want to change both, if changing either. Consider the following example:

If you were to change the title to "Long-tailed Skippers," you would also change the short name to "long-tailed-skippers." This keeps things tidy -- it keeps them correct, so that the URL for the item, the web address, is kept up-to-date with the actual content item. Note that the short name should contain no blanks. Use dashes for any blanks in the title, and otherwise make it a carbon copy of the title. Also, use lowercase for the short name. See also the page "What's in a Web Name?" for a description of how Plone handles web addressing and the short name. The following video also includes in illustration of renaming:
Watch a video that includes renaming an item.
The delete operation is straightforward. Click to select one or more items, and then the delete button, and the items will be deleted.
The change state operation offers a great way to change the publication state of a selection of folders, and their subfolders if you select this option. In the following example, the publication state for a folder called "Long-tailed Skippers" is being modified. Checking the "Include Folder Items" will make the state change affect all contained content. Don't forget that you can do this to, say, three folders at a time, and all of their subfolders and contained content, so that in one fell swoop you can quickly publish, unpublish, etc.

In addition to these individual action operations, reordering is a natural mouse-driven manipulation, as described in the next section.
Consider the following folder, called "Skippers," for holding information about this type of butterfly. Often, when we add content items, we don't initially get them in the order we want. The desired ordering is not always alphabetical, but in this example we can assume so. Below you see the Skipper butterfly subfolders are not in alphabetical order:

One way to move the top item, "Spread-winged Skippers," to the bottom of the list would be to click the small down arrow icon on the right, and keep working it down to the bottom. This is useful for small changes, but for such a multi-row move, it is better to click the top row and drag it to the bottom and drop it there (a so-called "drag and drop" action). Take care to click in an area of the row to be moved where the cursor is not over any text (click in the open space between the words), and simply drag and drop (hold the mouse button down as you move the item), as the following little animation illustrates:

The item that is being moved turns yellow as it is being moved. When the mouse button is released, the item stays where it was dragged. Click the view tab to see the reordered listing.
Moving items from one area to another on a website is a common task. Often this need arises with placement of content in the wrong folder. For example, if the author of the following content about Skipper butterflies realizes that a Swallowtail butterfly was mistakenly included -- the Eastern Tiger Swallowtail folder shown below -- the folder can simply be moved with a cut/paste operation:

Note that the Eastern Tiger Swallowtail folder has been checked, and that the cut button is about to be clicked. After clicking the cut button, the screen will show a new paste button. The Eastern Tiger Swallowtail folder and all of its contents are now in the web site's "memory." The Eastern Tiger Swallowtail folder does not immediately disappear, however, awaiting the actual paste operation:

The paste button is now active. The next step is to navigate to the destination folder, in this case the Swallowtails folder:

After clicking the Swallowtails folder, the paste button will continue to show, because the paste operation has not yet been completed:

And last, clicking the paste button for the destination folder adds the Eastern Tiger Swallowtail folder to its proper place in the Swallowtails folder, and cuts it from the original location, the Skippers folder, and the cut/paste operation is complete.
A copy/paste operation is identical to the cut/paste operation, except that there is no removal of content from the original folder. It works as you would expect it to work.
Watch a video about performing these operations.
.
Sometimes it is necessary to delete a content item, often to replace it with an updated version. For example, perhaps you uploaded a photograph, only to realize that you picked the wrong one to upload from your local computer. Simply go to the contents tab and find the uploaded photograph, click to check it, then click the delete button:

In the example shown above, PhotographThree.jpg is about to be deleted.
Entire folders may be deleted, so care must be taken with the delete operation, but this is true for computer use in general, and we all have learned to do a last minute self-check to make sure the delete operation is intended.
As you will see in the next section, an undo operation is available, which offers some measure of protection against inadvertent deletion and major editing operations.
The undo operation is available for undoing one or several recent changes. To undo, click the undo link to the right of your name at the top of the edit area:

After clicking undo, you will see a list of recent changes to the web site, in the order of most recent on top of the list. Click to check the actions you would like to undo, and then click the undo button at the bottom of the list:

Using undo on a Plone web site, as with using undo on computers in general, should be considered as a luxury not to be abused by overuse, as it adds a level of complexity to behind-the-scenes database storage. However, use it when you need it.
There are generally two ways you can rename an item: from the contents view or by using the [actions] menu's rename option. This section will show you how, and give you a few tips and techniques to create more publishable and accessible URLs.
When you create something in UofL's Plone CMS, the URL or short name is automatically generated, based on the Title. If your Title is really long, the URL that is automatically created will be, too. This isn't necessarily a bad thing, as search engines pay attention to your URLs. Having a descriptive URL can actually give you higher google ratings. However, there are times when you'll want your URLs to be brief, particularly for folders or documents that you want to link to easily. This is when you'll want to know how to use Plone's various renaming options.
You can rename one or more items at a time from the [contents] tab. First, select the item or items you want to rename by clicking on the checkboxes next to the title of the item(s). Then, click on the rename button.

Now you will see a "Rename Item" screen. In this instance, we are only renaming one item. TIP: You can also rename and re-Title a number of files and folders all at once!

Since we want a shorter URL part of the filename, simply change what's in the "New Short Name" field to something more brief - in this case, we'll rename the URL part from 'massive-science-experiment-from-mars.html' to simply, 'experiments.html' as shown in the following figure:

Simply click on the rename all button, and your page has a new URL!
If you're already on a page or folder, you can easily get to the Rename Item screen by clicking-on the [actions] drop-down and selecting the 'rename' option:
After selecting the rename option, you'll be presented with the same Rename Item
screen in the previous example. Simply update your URL and click on the Save All button when you are done.
Conclusion
Now that you can rename things, you can set the URL to whatever you need it to be. This is particularly helpful when you create information pages or departmental sites, and want your URLs to be easy to read and type!
Before you know it, folders and subfolders have been created on a Plone web site and content added. Content may be organized naturally by the hierarchy of folders.
Consider the butterflies web site, which would have an organization something like this, with the main areas of the web site each a few layers deep, and the butterfly pages arrayed in a hierarchy:
About History Keeping a Journal as a Kid Natural History Mentors The Present Treatment Family John Bio Other Interests Tennis Conservation Local Politics Sally Bio Other Interests Karate Cooking Edward Bio Other Interests Football Painting Elizabeth Bio Other Interests Clarinet Snowboarding Photography Equipment Techniques Favorite Photographers Butterflies Overview Biology Life Cycle Egg Caterpillar Pupa Adult Distribution Migration Field Work Projects Organizations North American Butterfly Association Lepidopterists’ Society Xerces Society Nature Conservancy Bibliography Species Treatments Swallowtails 13 species pages Pierids (Whites and Yellows) 30 species pages Hairstreaks 5 species pages Satyrium Hairstreaks 18 species pages Scrub Hairstreaks 9 species pages Blues 9 species pages Azures 9 species pages Metalmarks 3 species pages Brushfoots 4 species pages Greater Fritillaries 7 species pages Lesser Fritillaries 16 species pages Angelwings and Tortoiseshells 18 species pages Red-Spotted Admiral 10 species pages Satyrs (Browns) 13 species pages Alpines and Arctics 10 species pages Monarchs (Milkweed Butterflies) 3 species pages Skippers Spread-Wing Skippers 8 species pages Cloudy Wings 8 species pages Duskywings 15 species pages Intermediate Skippers 1 species page Grass Skippers 12 species pages Hesperia Skippers 41 species pages Roadside Skippers 16 species pages Giant Skippers 2 species pages
Each of the butterfly treatment pages has sections on identification tips, a description, and keywords. Photographs are scattered through the butterfly section for butterflies John as seen personally. He writes an observation account for each new species he photographs, providing location, habitat, and any specific behavioral observations made.
This web site has a range of content, from personal biographies and interests of John and his family, to expanded pages on photography and other topics, to the many butterfly pages and photographs. Click-navigation is effective for finding most information, and for the butterfly content the organization by taxonomy is useful and fitting for the most common needs, but this is not the only way it could be organized. For instance, the butterfly pages could have been organized by habitat, by behavior, by size, by color, by whether or not John has observed the species, etc. John was torn between these ways of organizing the butterfly pages, but chose the taxonomic structure, because grouping and relating species by evolutionary relationship is the most useful way to do it. But John discovered how Plone lets him have his cake and eat it too:
Smart folders offer a way to create separate organizational treatments for content.
A smart folder is used for building a kind of virtual container for content -- the content actually exists wherever the items are stored throughout the web site, but the smart folder finds content along the guidelines set by a search criterion and makes it appear as if the items were stored in an alternate arrangement. For the butterfly pages described in the introduction to this section, the actual storage arrangement is by taxonomic grouping (Skippers, Monarchs, Dustywings, etc.), but with smart folders there can be virtual groupings by various criteria, such as by color. The butterfly pages matching the search criteria will be shown as if they "live" in the smart folder holding butterfly pages organized by color. Of course, there must be keywords for color in the butterfly pages for this to work. Search criteria made for searching general text can assemble very meaningful arrangements also.
Learning to think about content being stored wherever it is stored, and about using custom smart folders to gather up different "views" of the content, is an important step to using Plone most effectively. It is an intelligent system.
To add a smart folder, use the add item menu, as for adding other content types:

You will see the edit smart folder panel:

Below the title and description fields is a set of fields for specifying the format of search results returned by the search criterion for the new smart folder. The four fields in the panel above are in pairs. The top two fields let you limit the search results to a number of items that will be displayed. The bottom two fields let you control which pieces of information about the search result items will be shown in the table listing of the results.
After setting the display configuration in the edit panel shown above, click the criteria tab to show the panel for setting search criteria:

The top area of the panel, Add New Search Criteria, lets you set a field and a matching criterion. The bottom area, Set Sort Order, is a simple selection for a field to sort on.
For setting the search criterion, you have the choice of these fields:

The criteria types for matching data in content items depend on which field is selected.
After saving the smart folder, the search criteria will be applied and the results shown when the smart folder is clicked. You can create any number of smart folders for such custom views. For the butterfly example described above, the keywords field could be used to match color to have a series of smart folders for "Blue Butterflies," "White Butterfles," etc.
Multiple criteria can be used for a smart folder. For example, a smart folder called "Butterflies Photographed in the Last Month," could be made by setting a criterion on Creation Date and on Item Type as Image. Such date-based smart folders are really effective to show up-to-date views of content that don't require any administrative hand-work -- once such a smart folder has been created, it will automatically stay up to date.
Note: A smart folder doesn't behave like a normal folder -- you can't add content items via the add item menu, as you can for a normal folder.
Watch a video about adding a smart folder.
You've seen how collections provide a way to augment an organization of content, with overlapping or overarching additional smart folders that key on date, or specific fields, or text searches. There is a deeper meaning to this, which gets to something called metadata, or "data about data," introduced in the section on Setting Basic Properties. Content management systems have this metadata, a kind of low-level intelligence, built into them. Plone incorporates the Dublin Core metadata element set, which was devised in Dublin, Ohio in 1995 at a library conference (Librarians are on the ones really on top of information, you know). As the name indicates, there is a core set of things one could describe for different bits of content, be they images or full documents, or whatever. The Dublin Core, properly, the Simple Dublin Core, includes the following 15 items:
There are added-on wrinkles to this core you may read about here, but for this introduction to the concept, the Simple Dublin Core will suffice. You'll find some of these under the Properties tab of any item in Plone, and several others are implied by the nature of the content itself, such as for Type and Format, or by basic record-keeping wired into Plone, as for Publisher.
We are all lazy by nature, someone said. If only we filled in this optional information for any content item we create -- Think of the vast information and power at our fingertips! An exaggeration? Perhaps, but as we explore here, the functionality is there waiting for your data-describing impulse to discover hidden potential (not so hidden -- in fact, right in front of your face).
Imagine a woman who stuffs all her content into a single big folder holding thousands of content items -- images, pages, events, news items, links -- the works. If you looked over her shoulder at this swirling mass, you might first think her to be a lazy person, or just one missing the organization gene. But you notice that she can always find stuff, and has quick search links stored away, and, when she needs to find something special, or to build a custom report, she is adept at fast assembly. How does she do it? She does it by dedication to filling out those metadata fields and by taking advantage of those clever smart folders.
The one-folder woman is using Plone as a content management system de rigueur. (Of course, it is so easy to also organize by folders, even in some crude sense, if you really are missing the organization gene). You might think such dedication should be limited to very large organizations, or especially to those cases where finding connections within information can bring significantly greater understanding -- or, potentially, wealth. But think of all those photos you've been taking with your digital camera. You have had the presence of mind to fill in at least the description field, haven't you? You know how quickly months become years, and 100s of photos become 1000s. You get the idea.
The payoff to using an intelligent system properly is efficiency and the discovery of relationships, perhaps subtle.
In the upper right corner of the edit panel for any content type -- folders, images, pages, etc., and any specialized content types -- there is a menu on the right for publication state. This state menu has settings for controlling publication state:
At UofL, These are the default transition options to change state that appear in the state: drop-down:
The header for the menu will show the current publication state for the content item, such as state: public draft, as shown above. Public draft is the initial state when you create a content item -- an uploaded image, a page, a news item -- and in the public draft state, as the name indicates, the content item will generally be available to visitors to the web site. There are several subtleties about this, however. Content items in public draft state may or may not be shown in menus, but they could be seen by search engines and by direct access by web address. So, if the item is definitely meant to be hidden from view, because it is very rough draft perhaps, the make private menu choice is the appropriate step after the content item has been created.
Also, and this will be very important, certain content types, such as news items and events, will not appear on the website as you expect, until they are explicitly published.
Store this in your memory: Publication state is important!
Publication state can be changed only by users whose accounts have the necessary permissions. The menu choices in the state menu will reflect existing permissions settings. For example, in a big newspaper web site, a reporter could add pages for news articles, but the state menu will not show a publish menu choice, only a submit menu choice. This is because a reporter must submit articles up the line to the editorial staff for approval before publication. If your account has the permissions, however, the publish menu choice will appear and you can simply publish in one step.
For an editor, a content item that has been submitted may be published or rejected, either outright, because it is an inappropriate submission for the situation, or for the more typical reason that the content item needs revision.
After a content item has been published, it may be retracted, to change the state back to public draft state, and from there set to private, if desired. The menu choices in the state menu will change accordingly.
Consideration should be given to retracting ("unpublishing"), or setting to private, any content that has become obsolete or undesired for some reason. Setting to private will take the item from public view and from showing up in search results, but will keep it around in case the format or the actual material (text, images, etc.) is needed later. This is especially true for content relating to events that may recur or to one-of-a-kind creations. The decision to delete or to set to private may depend on whether or not the content exists elsewhere, on a local computer. If the content is large in size, in the sense of disk space taken, perhaps saving to a local computer is warranted before deletion, if space on the website server computer is an issue.
The Require Login and Restrict Access transitions are specific to UofL. They provide extra functionality beyond the default security states.
Require Login allows you to require that a person login with a valid
UofL userID before they are allowed to view a piece of content. It's
great for restricting access to forms or semi-restricted content so
only people with an active UofL account can view content.
UofL's Restrict Access option adds a bit more security to an item. It sets an item so it is Restricted Access, and allows you to create read-only intranets to secure access to sensitive information. Many people will use this for restricting access to a folder that contains items such as phone lists, budget spreadsheets, or any other kind of information that they only want available to a select few users. You can grant those users the "Restricted User" role for that folder by using the folder's Sharing tab.
The state menu has an advanced... item:

which brings up the advanced state panel:

Below an explanation section at the beginning of the panel, there is a check box showing the content that will be affected by this change of publication state. It shows that the folder "Long-tailed Skipper" will be affected by this state change.
The next field, Include folder items, is a check box for controlling whether the state change affects this item only (the "Long-tailed Skipper" folder) or the items it contains and all of any subfolders and other contained items. This is an important check box. It lets you easily change the availability of an entire section of a website. For example, the "Long-tailed Skipper" folder could contain four subfolders, for photographs, species occurrence descriptions, taxonomic history, and behavior descriptions, all of which has been kept private during the initial work to build up this content. All of it could be immediately made public -- it could be published -- by checking this box and checking publish at the bottom before saving.
Likewise, an entire section could be immediately made private. For example, if an automobile rental agency decided to remove a car model from its fleet, an entire section of their website devoted to this car model, with several subfolders full of pages, images, and files, could be set to private.
The next two date fields are for effective date and expiration date. Their meanings are straightforward. If there is a window of time, for which a content item or a set of content items is valid for publication, it may be set with these fields.
A comment lets you attach an explanation to all content affected by the state change. This is especially useful when several people are working on a website, and a person less familiar with an area of the web site looks at content and wonders why it isn't published. They wonder, "This information looks good. Why isn't it published already?" Then they read a comment that says something like, "Don't publish until Richard checks on copyright issues regarding the items described here." Using comments is a good idea for sensitive information, even if you are the only person working on the web site, because you might forget why you made a decision about publication state.
Finally, at the bottom there is a choice of several available states for this action. It will vary, depending on the present state of the item. For example, if the item is currently in a published state, there won't be a choice for publish, if the item is presently in a private state, there won't be a choice for make private, etc. If an item is published already, there will be choices in this bottom part of the panel for reject and retract, for "unpublishing" at item, setting it back to public draft or then to private state.
Watch a video about controlling publication state.
The state menu has a choice for policy:

Workflow is an advanced subject. It involves creation of a more regimented control of content creation, review, and publication. If you have a user account on a typical small Plone site, you will probably not encounter custom workflow policies, because there isn't a need for this more sophisticated control. But, the potential is there for using this functionality, as it is built in to Plone.
For an introduction to the workflow concept, consider an example involving a web site for a newspaper business, for which these different groups of people are at work:
A workflow policy, sometimes abbreviated to workflow, describes the constraints on state-changing actions for different groups of people. Once the workflow policy has been created, it needs to be applied to an area of the website for the rules to take affect. In the example of the newspaper web site, a workflow policy would be set up and then applied to the folders where reporters do the work of adding news articles. Then, reporters create stories and send them up the line for review and approval:

Reporters would add news articles and would submit them (the publish menu choice is not available to them). Likewise, editors may reject the article for revision or they may, in turn, submit the article up the line to a copy editor for final proofreading and publication.
Configuring a workflow policy is a matter of applying it to an area of the website. The policy menu choice brings up the workflow policy panel:

This small panel contains a link with the explicit title, "Add a workflow policy's local configuration in the Folder," which offers an intermediate check to make sure the intention is clear. Clicking the link brings up a workflow scope selection panel:
In this example, there is only one workflow policy available, "Default Policy," which is the standard workflow policy for Plone web sites. In the newspaper business example, there would be a policy here called something like "Editorial Review Policy." The choice here is between setting For this Folder, to apply the policy the contents of the folder itself, and the Below this folder choice, to apply the policy to any subfolders, as well. After saving, the workflow policy would be in effect for this area of the web site.
The sharing tab panel is a large panel with many input fields:

The top box, called "Assigned Roles," shows existing settings for sharing of this item. It lists John Smith as the Owner of the item. That means that John Smith has the right to change the item, even delete it. This is similar to privileges of the Manager role. Buttons at the bottom allow you to change the assigned roles or delete them.
The next box, called "Add Sharing Permissions to Users," has a search function for finding specific users. Once found, sharing privileges are set via the buttons at the bottom of the box.
The next box, called "Add Sharing Permissions to Groups," works the same way, except it is targeted at whole groups of users. For instance, on a web site for a community group, there could be five groups, one for each main committee of the organization. Perhaps this item is a folder to contain documents maintained by the "Recruitment" committee. Sharing permissions could be set for the "Recruitment Committee" group, and all users within it would have the same privileges. Very easy, and very powerful.
The "Advanced Settings" box is for controlling sharing access within a hierarchy of folders. There can be sophisticated arrangements for sharing, to manage "groups within groups."
Finally, the "Change Ownership" box at the bottom has a link to change ownership -- akin to "reassigning" -- to another user.
PloneFormGen is an add-on product for Plone that allows you to create custom web forms easily. Forms can email results to someone, and even the store the information submitted so you can download it later and open it directly into your spreadsheet or database.
This tutorial will cover many of the features of PloneFormGen, but will not delve into the more complex topics that require knowledge of computer programming languages. Additional documentation can be found in the documentation FAQ section and at Plone.org
Name
Phone Number
How did you like the pizza?
What's your school or business unit?
I want a call back.
To get started building a custom form using PloneFormGen, you must first create a Form Folder. A form folder is a lot like a normal Plone folder - you use it to organize and hold other types of content.
Click Add Item (or Add to Folder) and choose Form Folder from the drop-down menu
Provide a Title and Description for the form. You can
also change the wording of the Submit button or turn off the cancel
button if you wish. Ignore Action Adapter and Thanks Page for the time
being and just click on Save at the bottom.
By default, a form starts with E-Mail Address, Subject and Comments.
Before you learn how to add new fields, or change existing ones, let's look at how you can add some simple text above and below the form.
You may want to include instructions to your site visitor about how to fill out your form, or what the purpose of the form is supposed to be. You can add that descriptive text as follows:
There are a lot of different types of fields you can use. You've probably seen many of those types of fields around on forms you've already used on other sites on the internet such as text boxes, selection lists and radio buttons, checkboxes, and so on.
Let's start with the field types you'll likely use most often.
Navigate to your Form Folder and click on the Add Item drop-down. A long list of items - most of them field types- will appear. There are a lot of choices. The most commonly used field types are:
| Field icon selection |
Field name |
What it does |
|---|---|---|
| string field | This is the most common field type. Just a 1-line input box. | |
![]() |
text field | Also known as a "text area" field. These are multi-line input fields. |
![]() |
selection field | Can be either radio buttons or a drop-down list. |
![]() |
boolean field | Checkboxes |
And, here's what these basic field types look like:
Each field type has it's own special icon. You can (usually) guess what each does by the icon. The icons may help you recognize the different field types and what they do.
Configure the Mailer Adaptor
Joining a Plone Site
Presuming the site you are accessing
permits users to sign themselves up from the web (this is the default),
you can join a Plone site via the following steps:
1. On the homepage, click on the 'join' link in the blue bar at the top. Result: The Registration Form screen appears.
2. On the Registration Form screen, complete the Personal Details section.
3. Click on the 'register' button.
Logging In
Once you have joined a Plone site, you can log in.
1. On the homepage, click on the 'log in' link. Result: The Please Log in screen appears.
2. On the Please Log in screen, fill in the your user name and password
3. Click on the 'log in' button.
Setting Preferences
1. Log in to site.
2. Select Preferences.
3. Select Personal Preferences.
4. At this point you can change your name, your email address, content editor and upload a portrait.
5. Save when you are finished.
6. Go back to the Preferences page and select change password. Enter info here to change your password
Anatomy of a Plone Site
no content
Adding Content - The Basics
The following procedure outlines the basic steps for adding content to
a Plone site. Steps may vary depending on the specific type of content
you add.
1. Log in to the site.
2. Navigate to the location (folder) where you want the item to appear.
3. In the view portlet(or tab), select the arrow next to add a new item.
4. Click on the item that you would like to add.
5. Fill out the appropriate fields and information.
6. Click Save when you are finished.
Using External Editor
Follow the steps below to use External Editor to edit your content.
Note: You must have the desktop portion of External Editor already
installed.
1. Navigate to the document you would like to edit.
2. In the View tab, you should see a pencil with a circular arrow near the mail and print icons. Click on this icon.
Result: a dialog box will pop up briefly. Your document will open in the appropriate program.
3. Make your changes in the document.
4. Save and close the document.
5. Refresh the page in Plone.
Result: your edits should now appear in the plone.
Add a User
How to add a user.
1. In the Plone Site Setup, select the Users and Groups Administration link.
2. Click the Add New User button under the Users Overview heading.
3. Fill out the Registration Form with a user name, user ID, email address, and password.
4. Click the Register button.
5. You will be taken back to the Users Overview page and should see a note at the top of the section that says User Added.
Add a Group
How to add a group
1. In the Plone Site setup, select the Users and Groups Administration link.
2. You will see two tabs. Select the Groups tab.
3. In the Groups Overview section, select the add new group button.
4. Fill out the Group Properties form with a short name, title, description, and email.
5. Click Save.
6. You will be taken back to the Groups Overview page and you should
see a note at the top that says a new group has been added.
Reset a Password
How to reset a password for a user.
1. Access the Users and Groups Administration page.
2. Search for the user that needs a password reset.
3. Select the reset password box.
4. Click the apply changes button.
The password is now reset. The user will receive an email with a new password.
Advanced Topics
Add a Product
Basic procedure for adding a product.
1. Download the add on product that you want into a working folder.
2. Extract the file into the Product directory. You will have to create a new folder for that product to extract into.
3. Restart Zope. (in the ZMI, Control Panel, restart button)
4. Log into the Plone as the administrator.
5. Go to Plone setup.
6. Go to Add/Remove Products.
7. Select the product you want to add and click Add. Your latest product should now be installed.
Please also see the using third party products tutorial
1. Navigate to the piece of content that you want to change.
2. Click on the Edit tab.
Result: The Edit view appears and you are ready to begin making your edits
3. Make your edits.
4. Click on the Save button.
Result: you will receive a confimation that your edits have been saved.
As of version 3.0, Plone supports locking to prevent two people from making changes to the same content item at the same time and overwriting each other’s changes.
Locking is implicit: a lock is automatically obtained when someone edits a content item, and it’s automatically removed when that user:
Result: When a content item is locked, other users see a lock icon on the view tab. When another user clicks on the Edit tab of a locked item, he's presented with a lock notification, instead of the edit form:

Plone uses a cooperative locking system. By default, locks can be 'stolen'. When a content item is locked and another user attempts to edit it, he’s notified about the lock and given the opportunity to unlock it:

Result: When a user unlocks a content item, he's presented with the edit form and is able to save changes.
When a user edits a content item and his session terminates abnormally (e.g. he closes his browser, his computer or browser crashes, his network connection is lost), the lock remains in place. This situation can be resolved in two ways:
The locking mechanism described here is not only used when editing through-the-web, but also when the user edits a content item:
How does your role compare to other user roles in these different scenarios?
In the following pages, comparisons are made to show the range of possibilities. You could have a limited role on the Plone site you use, but by learning about other examples, there will be a greater awareness for understanding the potential, and for appreciating the level of sophistication already present on the Plone web site you use. We pick a few examples here that are by no means exhaustive, but hopefully offer a fair illustration.
Now that you have an appreciation of how Plone works, and before we get into the example scenarios, a few comments about the open-source, collaborative nature of Plone's development are appropriate. People involved in writing code, documenting, and testing Plone share a vision of support for open-source sofware. The term refers to the openness of code to community development, and for use by whomever wants to use it, even those interested in commercial uses and derivatives. This stands in sharp contrast to so-called proprietary software, wherein an individual author or a company creates and improves code as their judgment and needs dictate. Proprietary software isn't bad, it is just different. Plone, along with most other open-source software, uses the GNU General Public License, or GPL, which offers needed protections against unfair exploitation, but serves to engender a greater sense of community and the power of common will toward the greater good.
Often people misinterpret some aspects of open-source software, by immediately, and superficially, associating the concept with a simple notion of being "free." First, they miss the point that it might not actually be free (See the GNU FAQ and their discussion of free software concepts.). Second, open-source software really shouldn't be thought of as "free," because a great deal of monetary resources go into it. There is a cost for humans doing practically anything. Consider the electricity to run computers and lights for people working on software, or the cost of plane tickets for programmers to attend a collaborative development jam-session called a sprint, or salaries or parts of salaries. The individual participants may be lone citizen developers or writers or testers, who contribute out of their pocket, or they may be employees of non-profit organizations or for-profit businesses, who are on salary. Regardless, there is money involved in development of open source software -- lots of it. Furthermore, Plone has a typical modern-day scale. Development of software such as Plone is a global effort, with many countries the world over having several active individuals involved.
From this discussion, you may gather why proponents of open-source software recognize it as first-class software, not software that should automatically, or necessarily, play second-fiddle to proprietary software.
Developers of Plone believe that the open-source model is viable and preferred for much software development. This doesn't imply that proponents of open source software such as Plone snub their noses at all commercially developed software. No, they simply recognize the viability of the model, and use it when they can.
But isn't Plone free for people to use? True, usually there is no price tag associated with downloading and installing Plone (Again, see the discussion of free software concepts). Don't forget the costs associated with paying for a web server computer and bandwidth, custom installation and maintenance, and the cost of training. These costs would be necessary, even if Plone cost $1,000,000 to download, but just because it doesn't, they should not be ignored. Nothing is free. Companies, organizations, and other institutions who help with Plone development understand this idea, and see a good return on investment, and embracing the leverage afforded by the open-source model.
Once you have examined the potential of the open-source model, you feel the common spirit.
Now for some example scenarios of using Plone.
The development of Plone is an open-source, collaborative process. People involved in writing code, documenting, and testing Plone share a vision of support for open-source software. The term refers to the openness of code to community development, and for use by whoever wants to use it, even those interested in commercial uses and derivatives. This stands in contrast to so-called proprietary software, wherein an individual author or a company creates and improves code "in-house," as their judgment and needs dictate, keeping it private and releasing software as executable programs, without the source code.
Plone, along with most other open-source software, uses the GNU General Public License, or GPL, which offers needed protections against unfair exploitation, and through this protection engenders a sense of community and the power of common will to share in development.
Often people misinterpret some aspects of open-source software by immediately, and superficially, associating the concept with a simple notion of being "free." First, they miss the point that open-source software might not actually be free (See the GNU FAQ and their discussion of free software concepts.). Second, open-source software really shouldn't be thought of as "free," in the absolute sense, because much monetary resources go into it. There is a value connotation here, with the idea of being "free" spurring notions of worth and quality. Consider the electricity to run computers and lights for people working on software, or the cost of plane tickets for programmers to attend a collaborative development jam-session called a sprint, or salaries or parts of salaries. The individual contributors may be lone citizen developers or writers or testers, who contribute out of their pocket, or they may be employees of non-profit organizations or for-profit businesses, who are on salary. Regardless, there is money involved in development of open-source software -- lots of it. Furthermore, Plone has a typical modern-day scale. Development is a global effort, with many countries the world over having several active individuals involved.
Proponents of open-source software recognize mature projects as first-class software, driving much of the everyday churning of the Web and a myriad of software projects. Developers of Plone know that the open-source model is viable and prefer it for software development. Once you, as a regular web site user, have examined the open-source model and explored software projects that use it, hopefully you will feel the common spirit. For those involved in the development, testing, and improvement of Plone, the common spirit is manifested daily through email and chat communications about the software, and when people meet for development "sprints," and when there are large annual meetings. Sprints are a lot of fun and allow programmers and documenters to meet face-to-face and get to know each other, building the sense of community.
And now for the bottom line -- Plone is free for people to use, right? True, there is no price tag associated with downloading and installing Plone, and this is certainly no point to be missed. Don't forget the costs associated with paying for a web server computer and bandwidth, custom installation and maintenance, and the cost of training.
Plone is used in a wide variety of settings, including:
For specific examples, browse the list of sites that use Plone.
Open-source software is widely viewed as the preferred model for software development.
Plone uses the Python programming language for software code and the Zope object database system for data storage. As a regular user of Plone, you probably won't even see mention of Python and Zope, but they are there, forming the important underlying software infrastructure. You will encounter some aspects of Zope if you take on web site administration tasks, but as a regular user who logs in to a Plone-based web site you will not. Still, you may wish to understand how Plone is built.
Both Python and Zope follow the open-source model described above. Separate online communities exist for each, and there is synergy, with the development of one affecting the others. As a programming language, Python is the most generic and "low-level" of the three. Python is a great computer language, favored for its clear syntax and rules and for its range of application to day-to-day programming tasks and to full-blown software projects. Zope found a niche as a Python-based data storage system that emphasizes a programming style of saving and manipulating information as naturally defined objects in the programming code itself -- a kind of organic approach for software. Zope is flexible, and can extend its intelligence to interface with traditional database storage.
Python and Zope are robust, having been developed and widely used in scientific research, industry, and education, and mature, having marched through many development cycles. Look at the websites, python.org and zope.org, for more details if you are interested in learning more, but fear not if you want to be pleasantly unaware of these details and happy as a regular user of a Plone web site.
Do you know what goes into making a web site?
You could use any number of technologies to make a web site. You could learn HTML (Hypertext Markup Language, the standard "web site code") and write web pages from scratch. Or you could use a web page creating software like Microsoft's FrontPage or Adobe's GoLive, or you could use a template-based web page-creating program. You could learn to upload web site files to a web server computer using ftp and other file management tools. Or you could use the upload facilities in web site-building programs such as those mentioned above. You could explore the details of how Microsoft's Internet Explorer browser, Apple's Safari browser, the Opera browser, the Firefox browser, etc. handle the specifics of formatting web pages, and you could make adjustments to your homegrown web pages to insure compatibility with these browsers. Or you could use web site-building software to take care of those details. You could learn about database table design in full-featured database software, such as PostgreSQL or MySQL, and how to construct search queries using their lingo.
You get the idea -- building a web site, no matter what choices are made for tools and techniques, involves a lot of low-level, persnickety details. Plone is good at navigating these waters. Web page creation can be a challenge, but Plone handles it well. File management and transfer from local computers to web servers is cumbersome, but Plone makes it easy. Browser compatibility is a big deal and is a constant hassle, but Plone smooths out the wrinkles to maximize consistency. Data storage involves learning intricate details peculiar to the database software world, but Plone, because of its marriage with Zope, essentially weaving data storage into the system so that users don't even have to think about it.
Specialized content types a Plone web site contains vary, depending on which add-on software programs are installed. Explore the products area of plone.org to see many examples in numerous categories. The number and quality of add-on software choices is growing, so check back occasionally to see new postings. You would have to ask your web site administrator to install such add-on software.
Data entry panels vary for specialized content types, but generally will look like those for the built-in content types. Consider the following data entry panels for a content type called Location, which is part of an add-on software program called Maps. The Maps software allows Location content items to be added to a Plone web site, and a Google Maps display will automatically result. Location content items have the usual Title, Description, and Related Item(s) fields, as well as three fields unique to the Location content type:

The location field shows a Google map with a marker. The marker can be moved to the location desired. Normal zooming and panning seen in web browsers showing Google maps are available also, making this a very interactive data entry field. You can type the latitude and longitude in the text box above the map, in lieu of using the map. There is a pull-down menu field for setting the color of the map marker icon, and there is a text box for entering a full description for the location, which may include images. Upon saving the location, it will appear on a Google map on the Plone web site dedicated to showing such locations.
Expect similar unique approaches for other specialized content types.
As with any other folder, you can edit the top-level or "home" folder of your UofL Plone site. your site's home folder has several extra configuration settings In addition to the items you might expect for a regular folder.
Follow these steps to start editing the home folder:
You should now see a page full of options. The items you can change include:
In a UofL site, the first few options are the same for every folder. The rest can let you set what items display on your pages site-wide and change the look and feel of your whole site. Lets examine these home folder options in brief detail.


Think of your site's home folder as any regular folder, where you can set the Title that is displayed, except the home folder sets the site-wide navigation and display title. For example, to change the title of a site from "Workshop" to "Plone CMS Workshops at U of L", all you would have to do is change what's typed in the Title field, and scroll to the bottom of the page and hit the Save button.
As we covered in the manual's introduction, you can change the way a Plone CMS site looks by simply applying a different skin. The University of Louisville's Plone implementation has two default themes, one for Left Navigation, and another for Top Navigation.
Selecting a Theme/Skin
A theme is also known as a skin. If you're school, department, or organization has it's own skin, you can select it from the Site Skin drop-down menu. Your particular instance may have more or fewer skins available to it beyond the default U of L Top Navigation and Left Navigation skins.
There are a number of portlets available to you. In the context of a default U of L skin, portlets are special chunks of information that display in the right hand column of your site. A portlet may contain news items, special announcements, events, or even a custom piece of text you create. The most common portlets are:

To turn on a portlet, simply click on it in the list of portlets. To rearrange the portlets, click on the item you want to move, and use the movement arrow buttons on the control bar just below the portlets selection box.
Global Site Links are extra navigational elements that some U of L themes employ. Use these to highlight specific pieces of content that you feel are important. They provide another method to access content beyond the "regular" navigation, but outside of the regular navigation space.
The UofL Top Navigation skin places the items you specify in Global Site Links at the top-right corner of the screen, just below the search box. The UofL Left Navigation theme places the global site links at the top of the left column, just above the navigation.
To place a global site link, click on the browse button. This will display a pop-up window. From the list of items displayed in the pop-up browser, find the item you want to have lited, and click on the "insert" link, then close the window. The item you selected will appear in the list of Global Site Links.
Remember to save your changes! Simply click on the save button at them bottom of the edit page to commit all the custom changes to your site.
If you're going to attempt to build a custom theme for a site, you'll need to know or learn how to control your HTML displays with Cascading Style Sheet markup (CSS). There are also a number of tools we recommend you use to speed-up your development.
Using these tools will allow you to inspect, test, and understand the details of your Plone markup. With these, you can create a CSS file to override what's delivered in your selected theme, allowing customizations that can change your site's visual appearance without having to create an entirely new theme product.
If you don't have any experience with using CSS, there are a number of sites where you can start learning.
http://www.w3schools.com/css/
Some U of L skins allow you to make modifications to the CSS
The documentation area has a section dedicated to basic use for content editors. You will find additional help documentation, some repeating some of the coverage treated in this manual and some focusing on solving more specific problems.
You may wish to navigate through the other help documents for site administration, changing the visual design, and programming, but keep in mind that many of these help documents are task-specific and get get very technical.
The treatment presented in this page should be useful to you, even if you wish to do as little site administration as possible, because somebody has to perform these tasks. For you, site administration and programming tasks might be handled by someone else, but learning about the range of possibilities will open your eyes to the potential of Plone web sites, and you might think about things to ask your web site administrator about.
A web site administrator is the go-to person for technical help, software updates, and technical guidance. For large web sites, multiple people serve in a site administration team, with specialization in the handling of such things as user accounts, site design, database maintenance, and programming. We can keep it simpler here, though, and think about how a sole site administrator, the owner of a personal web site, would use Plone.
Typical uses of Plone for personal web sites include sharing family photographs, keeping a blog, following a specific area of interest, maintaining a fan site, presenting teaching materials, and showcasing photographs, artwork, songs, or other creative work. The basic functions described in this manual are used, in addition to site administration tools and some level of web site programming.
We can use the butterfly enthusiast (lepidopterist) as an example of a person who steps beyond basic user tasks to build a personal web site. The lepidopterist is very knowledgeable about butterflies and wishes to share with the world, but also wants to collaborate with other butterfly people, interested individuals and scientists alike. Plone is a great tool for this job. The lepidopterist learns that people use Plone for small web sites and dives in.
Imagine three lepidopterist personas of differing ilks, in regard to experience and confidence in computer use:
These personas span the range of Plone web site owners, the first wearing only the hat of plone-user, the second wearing two hats, the plone-user hat and plone-site-administrator hat, and the third, appropriately, wearing three hats, the hats for plone-user, plone-site-administrator, and plone-site-programmer. Let's compare these personas.
John-the-normal-person is in luck. He has a friend who makes web sites with Plone. He asks the friend to set him up a web site and to tell him what to do. The friend installs Plone on his own web server, registers a domain name for the web site, and wires and plumbs it all up. He even designs a nice butterfly logo and sets custom colors and a background image for the site. All John-the-normal-person has to do is learn about Plone from a user's perspective (using this manual and other user-oriented documentation on plone.org). That's it. John-the-normal person is on the Internet map.
John-the-normal-person asks his friend, who acts as site administrator for his web site, to set him up a regular user account, johnsmith. His friend creates the johnsmith account, and gives it full access rights to the web site by setting Manager role for the account. John-the-normal-person logs in as johnsmith and sees the green tabbed interface, with the tabs available anywhere on the site. He learns how to create folders first, and goes about creating a hierarchal structure of folders and subfolders for his bio and contact information, an area for family photos, and folders for the butterfly information. He learns the procedures for preparing images from digital photographs of his family members and of all those butterflies, and spends much time working through existing data and photographs, and uploads files and images. He writes web pages for butterfly groups and species following a simple template of his own design. After a few months of this basic, but intensive work, he is able to develop a monthly routine of updating the website with new butterfly images and descriptions.
Whenever John-the-normal-person has a question, he enjoys the luxury of asking for help from his friend, who is able to log in using the all-powerful admin account. There are some site administrator tasks for which John asks for guidance from his friend, but, for the most part, he maintains the website on his own. Site administration tasks he does for himself include:
For communications, John-the-normal-person interacts with other butterfly enthusiasts very effectively using E-mail. When there is a need to communicate about a specific butterfly, the natural hierarchical organization of folders makes it easy enough to refer to specific pages.
Elizabeth-the-web-page-builder has experience making web pages, and took a short-course in web page design using HTML coding. With this substantial background, she has the confidence to download Plone to her local computer and install it. This enables her to learn the bells and whistles of Plone without having to hassle with and learn about installing Plone on a web server -- yet. After following the directions to install Plone on her computer, she reads documentation about playing the role of web site administrator.
Elizabeth-the-web-page-builder uses the admin user account and the special password for admin provided by the installation software upon its conclusion. Elizabeth logs in as admin, after reading more documentation. She doesn't bother setting up a regular user account for herself, because she knows she can just use the admin account for site administration as well as for regular user tasks, as she will be the only user. As admin, she follows recipes on plone.org to change the logo and layout, the theme of the web site. She learns about the power of using cascading style sheet (CSS) definitions to easily alter the look of the web site, and how to make whole-scale changes to the site by installing new custom themes. She works on the theme for her new web site on her local Plone installation, until she is satisfied with the design.
Elizabeth-the-web-page-builder investigates options for hosting her web site on a web server, and explores different hosting providers that specialize in Zope web server software, the robust system that provides the understructure of Plone. She chooses a hosting provider and contracts web hosting services for a year. Elizabeth-the-web-page-builder sees the powerful features of Zope, but defers to the hosting provider for site setup tasks and installation of Zope and Plone on the server. The hosting provider also helps her with installation of her custom theme, already developed on her local Plone installation. Her new live web site has her custom logo, color scheme, and layout.
In the early stages of creating her web site, Elizabeth-the-web-page-builder performs the normal user tasks of creating folders, uploading files, adding photographs and graphics, and web pages to build the actual content of the site. Like John-the-normal-person, Elizabeth-the-web-page-builder performs basic site administration tasks using the special panels available to the admin user, but steps beyond site administration to the level of Plone web page building, and learns how to add custom page templates that access data objects stored in Plone's (and Zope's) storage system. With page templates, custom forms software downloaded from Plone.org, and a little bit of page template scripting, she learns to build a map system that shows distribution maps for any selection of butterflies on her website.
For communications, Elizabeth-the-web-page-builder installs a message board system in her Plone web site, along with enabling visitor commenting throughout the site. There is nothing terribly fancy about these communication functions, which augment standard E-mailing, but they get the job done effectively.
Sally-the-programmer knows much about web servers, web page building, and programming for the Web, having worked as a Java programmer in several stints, before taking a job as a history teacher and IT specialist at a high school. Her interest in butterflies is a passion, but she has substantial interest in web programming and web site databases. Sally-the-programmer already administers web servers, one a leased server she uses for her own website, for several friends, and for several local organizations, and several other school servers. Like Elizabeth-the-web-page-builder, Sally-the-programmer installs Plone and Zope on a local PC and uses the admin account to kick the tires, and then she takes the more technical step to examine the innards of the system by cruising the filesystem and browsing code. Learning Python by example and by reading several books and web sites, she builds on her Java programming experience, and embraces Python for its clean syntax. She dives into learning from the many examples of Plone/Zope software applications that she downloads from the Web. She learns that Plone/Zope applications are built with Archetypes, a kind of high-level API (Application Programming Interface) used to write custom software for the system. She uses her local installation of Plone and Zope for software development and testing of custom Archetypes-based content types, and maintains a production installation on her web server.
Development of custom content types for her butterfly web site consumes her for some time, as she vigorously examines existing software applications and reads through tutorials on Plone.org. She develops several custom types, one called ButterflySpecies, for containing generic static information about a butterfly species, another called ButterflyTaxon, a so-called "folderish" content type for storing the species descriptions, and another called ButterflyObservation, for describing field data. Installing these types on her server system, she writes a Python program to "populate" the butterfly web objects from a text file containing existing formatted descriptions and data. Once complete, Sally's web site functions well as a streamlined system, requiring a minimum of effort to add new butterfly coverage.
Sally-the-programmer takes advantage of the built-in intelligence of the system, and adds to it with custom search result boxes, a focus feature, and a calendar-based view of the butterfly data. These elements are placed along the side of her website and as portlets placed intelligently through the pages of the web site, and are driven by a set of custom page templates and Python scripts that provide an interface to the underlying custom butterfly types. For communicating with other butterfly enthusiasts, a message board and visitor commenting are enabled for the site, in the same way Elizabeth-the-web-page-builder set up her web site, but Sally-the-programmer creates specific connections to the custom butterfly content types through use of smart folders, so that message board, commenting, and email traffic regarding different species are listed and coordinated in several very useful views.
These three personas illustrate different ways to accomplish the same thing. Is any one of the three web sites necessarily and demonstrably better than the others? No, a person with little or no artistic talent, or programming skills, but with clear thinking, can build and maintain a great web site, just by using the built-in functionality of Plone. Use of custom smart folders in a stock Plone web site offers substantial power to yield similar results to those of the advanced programming treatment described in the third example. There are undoubtedly differences in convenience and presentation, but they aren't overly significant -- Plone and Zope are "out-of-the-box" web performers. Customization and development of specialized software only adds to a full-featured base.
So, whatever your experience and perspective, when you feel the need or want to expand your knowledge, use the documentation area of Plone.org, or buy a Plone and/or Zope book to dive in to the deeper waters of site administration and programming!
