Plone and Content Management

Plone and Content Management

Loyola University Chicago Loyola eCommons Computer Science: Faculty Publications and Other Works Faculty Publications 7-2004 Plone and Content Management George K. Thiruvathukal Loyola University Chicago, [email protected] Konstantin Läufer Loyola University Chicago, [email protected] Follow this and additional works at: https://ecommons.luc.edu/cs_facpubs Part of the Computer Sciences Commons Recommended Citation George K. Thiruvathukal, Konstantin L?ufer, "Plone and Content Management," Computing in Science and Engineering, vol. 6, no. 4, pp. 88-95, July/Aug. 2004, doi:10.1109/MCSE.2004.19 This Article is brought to you for free and open access by the Faculty Publications at Loyola eCommons. It has been accepted for inclusion in Computer Science: Faculty Publications and Other Works by an authorized administrator of Loyola eCommons. For more information, please contact [email protected]. This work is licensed under a Creative Commons Attribution-Noncommercial-No Derivative Works 3.0 License. Copyright © 2004 George K. Thiruvathukal, Konstantin Läufer PROGRAMMINGS CIENTIFIC P ROGRAMMING Editors: Paul F. Dubois, [email protected] George K. Thiruvathukal, [email protected] PLONE AND CONTENT MANAGEMENT By George K. Thiruvathukal and Konstantin Läufer ITH THE ADVENT OF THE WEB, TIM cation server infrastructure; it runs on most modern operat- ing systems. We’ve even set it up at Loyola University W BERNERS-LEE AND HIS TEAM AT CERN Chicago in the Department of Computer Science. Besides being two faculty members who rely on Plone to host all our CREATED A FRAMEWORK THAT SPARKED A REVO- Web content, we have recently customized Plone for our de- partment’s public Web site (www.cs.luc.edu). The end result LUTION. THIS REVOLUTION AND THE DOT-COM is a site on which content can be maintained entirely over the Web at zero cost to our department. Everything you see on era that followed it are well known, so we won’t rehash them our Web pages was generated by a unique combination of here, but we do want to reflect on why Berners-Lee and his plaintext authoring, clever plug-ins, and a site-wide style. team created the Web in the first place. The idea was to look beyond FTP and establish a more sophisticated protocol for Plone disseminating scientific information. Although nobody would Plone lets you organize your public (Web) life: by using it, stu- argue that HTTP and HTML are anything but ground- dents, colleagues, and outside collaborators and researchers breaking, current search technology makes it abundantly clear can find your papers and teaching materials. However, the that we need better ways of organizing Web content. word plone doesn’t signify anything. We even checked the dic- Perhaps nowhere other than in academic and scientific cir- tionary to see if it was one of those words we forgot to study cles is the need for better approaches to managing individual, for the SATs or GREs. All indications are that it’s not a word— community, and research content more apparent. Most Web at least, not in English—so is it a noun? A verb? Some other sites are maintained by authors who cobble together HTML part of speech? In our own work, we tend to use it like this: pages, many of which bear that evil “under construction” em- blem or aren’t kept up to date. Worse, most maintainers don’t • Have you ploned today? Did you plone home? have time to invest in learning HTML properly, despite the • Your page appears to be a plone of my page. wealth of authoring tools that aim to simplify the task of mak- • If you were prehistoric, you’d probably be called a ing consistent and attractive Web pages. plonosaurus. Content management systems (CMSs) have been the sub- ject of commercial and open-source community interest for Before we get into trouble with more bad puns on words some time. A CMS is the only way to support distributed that aren’t even words yet, let’s dive into Plone and explore content development, let alone facilitate content mainte- its vocabulary and salient features. nance. CMSs take off where most Web authoring tools give up—for example, as good as Dreamweaver is as an HTML Typed Content authoring tool, it’s inadequate for maintaining even small A key aspect of Plone is support for the notion of typed de- portal sites managed by a few developers. The model of fault content. With XML, we see this notion in the form of publishing remains FTP (not exactly known for its security), document type definitions (DTDs). The same idea applies which offers no direct support for version control. to Plone, just in a more user-friendly manner: Plone users In this column, we’re going to look at Plone can do almost all their work without thinking about markup, (www.plone.org), which we feel is one of the best CMSs but they can still use XML to customize content appearance. available today. Even better, it’s distributed under a free Other CMSs support similar principles, but in Plone, the open-source license: the cost of getting started is only lim- notion of typed content is similar to what we see in operat- ited to the time you have available to set up the software on ing systems, with the added twist of rich metadata that is a server. Plone is written in Python and uses the Zope appli- content-type-specific. 88 Copublished by the IEEE CS and the AIP 1521-9615/04/$20.00 © 2004 IEEE COMPUTING IN SCIENCE & ENGINEERING Case Study: A Multisite Server upgrade to Plone 2.0 is planned. Each of the various sites for an Academic Department mentioned is realized as a separate Plone site living within the Zope instance. This allows each site to be customized et’s look at the Plone-based Web server we set up in separately with respect to visual design, logos, and so on. Lthe Department of Computer Science at Loyola Uni- The resulting site URLs are www.cs.luc.edu:8080/site1, versity Chicago. www.cs.luc.edu:8080/site2, and so forth. We’re running Apache 2.0.47 as a front end. This lets us Requirements integrate the various kinds of content as required. Using The requirements for this setup were an inexpensive com- Apache’s name-based virtual hosts and the ModProxy mod- modity hardware and operating system; multiple sites on ule in conjunction with a Zope “virtual host monster,” we one server, including public content, departmental in- can transparently assign one or more different host names tranet, individual faculty members’ sites, and project sites; to each site, making the sites look like separate servers. The customization of the visual design of each site to match virtual hosts can be found at site1.cs.luc.edu, site2.cs.luc. the PR department’s requirements for public sites and fac- edu, and so forth, mapping to the site URLs given earlier. ulty members’ preferences for individual and project sites; In addition, the Apache ModProxy and ModAlias mod- and integration with static legacy content, including a ules let us have a static (X)HTML home page whose layout public home page with a different layout than the rest of is as required by our PR department; we can transparently the site as well as faculty members’ existing static pages expose the original faculty home pages that still reside on and scripts. our old server. Simply specifying a custom logo and some custom cascading style sheets customizes most of the Solution Plone sites, as does changing the layout of the various We came up with a flexible yet easy-to-manage solution page components into columns. This type of customiza- that leverages the Zope and Plone technologies described tion requires no programming and, optionally, only lim- in the main article. For under US$2,500, we put together a ited knowledge of (X)HTML. dedicated single-processor server with a five-disk SATA Our public site has to satisfy the PR department’s require- RAID with one terabyte of usable capacity. This server runs ments, including showing a different banner image for Gentoo Linux, which offers excellent optimization capabili- each section of the site. We were able to address this re- ties and configuration management. We are currently run- quirement by writing a small Python script that we ning a single instance of Zope 2.6.1 with Plone 1.0.1; an dropped into the site’s styles module. Here are Plone’s standard content types: Plone is not limited to the content types described here— for example, plugins are tremendously powerful and a key • Folders let you collect other content, including nested folders. ingredient to Plone’s success—but we won’t cover such con- • Documents can be written in plaintext, HTML, or a vari- cepts here. Suffice it to say that plugins are to Plone what ant of plaintext known as structured text. Documents are the extensions framework is to Python: new components can rendered according to cascading style sheets (CSSs). be introduced to support new content, in some cases with- • Links let users create a symbolic name for any external out even having to restart the Zope server. URL to be referenced—for example, cise can be created as an internal name for whenever we want to reach Content Properties www.computer.org/cise. In addition to managing various typed content, each content • Files allow a symbolic name to be associated with docu- item can have one or more associated properties. Properties ments not written in plaintext or markup that need to be let us go beyond the typical Web site configuration and in- incorporated into portal sites.

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    9 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us