Articles for Admin (Production)
Articles are created and maintained through an application we call "CS"; CS stands for "Community Server". CS is a perl-based web publication designed to enable many users to login to a common environment where they can create and update information. CS uses a database system where each component is defined within one or more tables.
CS records are used to hold all sorts of information...everything from actual content to templates and layout components to queries.
Logging into CS
Here's the main "home" URL for the oreillynet.com install of CS:
http://www.oreillynet.com/cs/admin/home
This installation of CS contains content for oreillynet.com, openp2p.com, ONLamp.com, ONJava.com and all of their related sub-sites (DevCenters). Other sites (XML.com, perl.com) have their own CS installs.
You log into CS with your regular oreillynet.com user id and password. Your account has been added to the admin "community", however, so you have the ability to edit information that regular users do not have.
NOTE: If you ever have to send an URL for a CS item to an editor, be sure to change the "/admin/" part of the url to "/editor/" -- that part of the URL indicates the community the user is a part of, and editors are usually not part of the admin community.
Finding Articles
To edit articles, you'll make changes to CS records in the "a" table. Article records also interact with other tables in CS that hold information about authors, subjects, etc.
When you are logged into CS, you'll notice links on the left navbar for articles grouped by various subjects. Next to each listing are three characters, each one with a link: < x > Each of these symbols corresponds to a "status" field setting for articles:
< Final -- the "past" -- articles that have been set to final are "published" articles
x Draft or Hold -- "current" work -- articles being worked on by editors and production. The "Hold" status is used by copy editors to indicate that the article has been copy edited
> Planned -- articles not yet uploaded, for the future
In most cases, the "x" will get you a listing that will include an article you need to work on (unless you haven't created the record yet!)
Creating Articles
There are several helpful links to the side of the form that you'll see when editing or creating an aritcle record. These links take you to information about the standards we adhere to when working with article records or help explain more about a particular field.
Article records in CS contain the descriptive information about an article. Most of these fields will be filled in by the editorial staff (they are also used to generate metatags when articles are actually displayed). But at minimum, you'll want to have an article title, publish date, and subject. If you have content for the article, you also must have something in the "filename" field (use the link next to it to build a standard URL for the article). If you need to make a change to an article record, use the Modify Record option at the top of the record display.
The filename field holds the location of the HTML file with the actual article content. These files are stored on the server named "water". The pathing shown in cs starts from the "/title/oreillynet/htdocs" directory on water.
Editing Articles
To edit the content of the article, you can use either of two of the menu options: Edit Article File or Check Out. The "Edit" option allows you to edit the content directly in the CS interface, and is useful for minor changes. The "Check Out" option allows you to save the file to your local drive and work on it offline.
NOTE: When you click on "Edit Article File", "Check Out" or "Modify Record", you are putting a lock on the current database record. No one else may update or change it. If you don't want to make changes, be sure to use the "Cancel" button so the record lock is released. (If you just hit "back" in your web browser, the lock is still effect). If you have checked out a file, you must either check it back in or use the "Edit Article File" to save the current file to release the lock. An easy way to fix this: if you find that you have an article record locked inadvertently, just go to the record and select "Edit Article File", then click on "submit" at the bottom.
When editing articles, you only need the "guts" of the article itself. There are several CS tags used to pull information from the CS article record and other places in CS automatically. We use these for things like the article title, byline, etc.
We always try to do our coding in an XHTML-compliant way. We always use "H2" for the article title (H3 for subheads within the file). For shading of sidebars, we almost always use "#efefef" for a light gray that works with any of the article templates (the template of an article is determined by it's "subject" setting in CS).
Graphics are stored on water in the same directory as the article, in a "graphics" subdirectory. For example, if you need a figure1.gif to appear in an article who's filename is "/onjava/2001/08/01/ejb.html", the graphic lives at "/onjava/2001/08/01/graphics/figure1.gif". This is very important for some of the redirects in place on the sites. (If you have example files for an article, they live in a similar "examples" subdirectory).
As you are working on an article, keep the status set to "Draft" (or "hold" if it's been copy edited). The "Final" status will allow the article to appear live on the site via queries or RSS feeds. Note: we can't actually prevent users from seeing an "article in progress" -- we just don't make the URL public until it's ready.
The final URL of the article is dependent upon which site it appears on (eg. www.oreillynet.com, www.onjava.com, www.openp2p.com, www.onlamp.com, etc.). In general, you can put the site URL, followed by "/pub/a", followed by the filename. In the example above, this article would appear at http://www.onjava.com/pub/a/onjava/2001/08/01/ejb.html.