Generating the HTML Pages
We’re finally ready to actually create our HTML pages. It’s taken a lot of work to get to this point, but if you’re like me and can remember grinding through the creation of lots of individual HTML pages by hand, this part is going to seem pretty cool.
Generating the Individual Company Listings
First, we’ll output each individual company listing, which we do with the following chunk of code:
# write out each company listing foreach my $co_name (sort keys %listing) { my $path = "$base_path/$listing_path{$co_name}"; my $title = "$co_name ($show_name exhibitor listings)"; my $content = <<"EOF"; <P ALIGN="center"><STRONG><A HREF="$base_url/">Exhibitor Listings Index</A></STRONG></P> $listing{$co_name} EOF &write_page($path, $title, $content); }
No new Perl features in there at all. We use a
foreach
loop to cycle through all the company
listings in the %listing
hash, and for each
company create three scalar variables:
A
$path
variable, consisting of an appropriate filesystem path for this page, based on the$base_path
configuration variable and the entry for this company from the%listing_path
hashA
$title
variable, with a suitable title for this listing’s HTML pageA
$content
variable, containing the part of the finished HTML page that will be specific to this company’s listing page
Once we’ve populated these three variables, we use them as
arguments to a subroutine named
&write_page
, which writes out those pages to
disk. Here’s what that &write_page
routine, ...
Get Perl for Web Site Management now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.