Introducing Plone

Is Plone the killer app that will bring Zope-based content management to the masses?
Creating a Plone Site

Creating a Plone site is extremely easy from within the web-based Zope management interface. From the add product menu, choose the Plone site. You will be prompted to enter several pieces of information:

  • the ID of the site, which will be part of the URL;

  • the title of the site, which will appear at the top of each page;

  • whether the site should have its own user folder or should inherit users from the surrounding Zope site;

  • a description of the site; and

  • the type of site you're creating (for now, leave it at the default Plone).

When Zope finishes creating a new instance of the Plone site, the large pane in the Zope management interface changes dramatically. An introductory message appears in the middle, a toolbar slides across the top, and information, including a calendar, shows up in rectangles along the left and right sides.

The interface for modifying a Plone site is significantly different from the standard Zope interface. Whereas Zope normally displays the same screens for all users and only presents the management interface when the /manage method call is tacked onto a URL, Plone modifies its output according to the current user's permissions. So although guests can navigate only through the site's content, administrators are shown tabs, such as view, edit, properties and state, and can see all items on the site, including those not yet published.

Luckily, the Plone user interface is fairly straightforward for administrators. To modify the contents of a page, click on the edit tab. You can then edit the content, including its URL and summary information, using your web browser. The summary information appears in search results. Plone uses JavaScript to make the user interface easier to understand for nontechnical users; for example, clicking on any HTML widget, such as a text area or radio button, in the Plone editing interface brings up a tooltip-like description of what should be inserted.

Content added or modified using the web-based Plone interface can be in plain text, in HTML or in Zope's structured text format, which uses punctuation and indentation as formatting mechanisms. I prefer to use structured text as often as possible, using HTML only when I want to format a page in a way that structured text doesn't allow.

Surrounding the main document on a page are multiple portlets, accessories that add to a site's content. Plone comes with several portlets by default, including a list of news stories, a list of events, a calendar that displays today's date and highlights any events during the current month and a list of relevant documents on the current site.

To add a new document, first move to the contents view by clicking on that link in the navigation portlet. This produces a list of documents in the current folder. You then can select a new content type from the add new item in the upper-left corner. It's important to realize a new document is created as soon as you click on add new document; following that, you are modifying its properties and content.

By default, Plone allows you to create a number of different content types:

  • Folders allow you to structure your site with a hierarchy. Just as a disk, static web site or Zope site contains files in folders, Plone sites can contain folders. The title of each published folder is displayed in the navigation portlet.

  • Documents are the most common item on Plone sites and can be formatted in HTML, structured text or plain text. Most of the time, you probably will want to create a new document.

  • Images can be in nearly any format, including JPEG, PNG and GIF.

  • Files are items you want users to be able to view or download but that don't have a MIME content type that Plone can work with easily. Some examples are QuickTime movies, audio clips and Microsoft Office documents.

  • Events are short documents with a starting and ending date and are highlighted in the calendar portlet.

  • News items are short documents displayed in the news portlet. This is a good and easy way to publish press releases, for example.

Plone also comes with links, which are URLs of interest to the outside world, and topics, which are predefined searches within the site. An increasing number of other content types are emerging for Plone, such as a weblog and a photo album.

Publishing Documents

When you create a new piece of content in Plone, it is in the visible state by default. This means that if people know the URL, they can get to your document with their web browsers. The content does not appear, however, in searches or in the navigation portlet.

To publish content, click on the state tab at the top of the page. (From the contents view, you can publish multiple pieces of content simultaneously with the state button at the bottom of the page.) This brings you to a page that asks when the content should first be published, when it should expire and any comments you wish to make about the decision to publish the document. The dates you enter are the final arbiter, meaning that a published document will be visible only between its starting and ending dates. This allows you to enter content days or weeks before it should be exposed to the general public, without having to change its state to published at the appropriate time.

Once published, a document appears in full-text searches. It also is visible within any folder that lacks a default index_html document.

One of my favorite Plone features is properties. Each document can be assigned one or more properties by the properties management tab at the top of the screen. When a user views the content, the related portlet lists all of the other documents on the site that share one or more properties with the current one. This allows site visitors to find easily other content that might interest them.