Creating new pages

Step zero is to read the PHP Security Guide. Your web pages are now active PHP programs and thus security is everyone's business.

Before starting, ensure WebMaster has put these files in your project home directory: template.php and _projectCommon.php

Configure _projectCommon.php to specify the theme you want, and to add any project-wide navigation links you need. Uncomment (remove the leading "#") from the lines as required.

Copy template.php to a new name. For instance, index.php or downloads.php

Edit your new PHP page, and modify the page-specific settings, such as title, keywords, author, and page-specific Nav bars. Use a descriptive title and keywords to help search engines find your site easily.

. Commit your PHP page to the repository. It will be accessible from the web shortly.

If the page is replacing an old .html page, modify your html page to redirect to the new page (see Preserving Links).

Preserving links (using redirects)

Your old file.html has been replaced with file.php, so you want file.html to transparently redirect to file.php

In the example above if you did not have the !important tag the font would remain bolded on your pages.

Project Status Infrastructure

Eclipse projects belong to a larger community - Eclipse - which is comprised of a not only the committers and developers on the project, but also the developers on other projects, plug- in developers outside the Eclipse projects, and the entire ecosystem surrounding Eclipse. In order to keep all these people up-to-date on the direction and status of the Eclipse projects, each project needs to provide timely and accurate descriptive and status information.

The project status information (files) drive a number of the eclipse.org web pages including the dashboard, the timeline, lists of projects, lists of mailing lists and newsgroups, status pages, and more.

In both cases the final parameter is optional. If specified, it can be either 'short' or 'long' (default). Dates can be specified either as strings (that are parseable by strtotime()) or as UNIX timestamps.

RSS Feeds

Pages that provide an RSS feed can override the default site-wide RSS feed icon that is located in the Phoenix page header. Overriding the site RSS feed will also add a <link rel="alternate"> tag to the page header, making your page easy to subscribe to from browsers that support it.

To override the site RSS feed, simply define $App->PageRSS and $App->PageRSSTitle in your page-specific settings, as in the example code below. These settings may also be defined in _projectCommon.php so that your RSS feed is available throughout all the pages in your web space

Wiki Pages as Project Pages

The Eclipse skin now supports making pages on wiki.eclipse.org look like pages on www.eclipse.org. See here .

To use this feature all you need to do is add the following line to the top of a wiki article

{{#eclipseproject:toplevel.project}}

Note that url entries for the left nav in the Projectinfo DB have to be fully qualified(http://) and must belong to an Eclipse.org website, or else they will not be displayed.

The Metadata supports 2 style features for the custom left nav. First the 'separator' option will cause the entry to appear in a light-purple box with a 'down' arrow on the right side. Secondly the 'indent' option will change the distance of your text/url from the left side of the page. The default indent value(and lower limit) is 0, and the upper limit is 5

Custom Left Nav

It's possible to use the leftnav defined in your project meta data for the Wiki on your eclipse.org project pages as well. Use the following code slice:

$Nav->addMetaNav("project.name");

Just insert this before you call $App->GeneratePage(). and it will load the left nav from the Meta data. The entries on the left nav have the same restrictions as those for the wiki. You can even combine this with the $Nav->addCustomNav() function to add extra items to a default left nav defined in the Meta data.