Taming the Update Monster
Posted on August 1, 2000
by Steve WoodHave you ever spent two hours changing just one word that recurs on each page of your website? Anyone who has maintained a web site with many pages for an extended period of time knows the nightmare of having to edit a word or date that recurs on each page, such as copyright information. Having to edit every single page can be very time-consuming and tedious and often gets avoided for as long as possible (usually too long).
But it doesn't have to be that way. There are good programs now that allow us to perform "search & replace" on multiple files, but there is an even better way to accomplish this task, and you won' t have to worry about inadvertently "replacing" something by mistake. By using simple Server Side Includes (SSI), you can streamline and simplify the maintenance of your site.
SSI can be used to accomplish a variety of things on your web site including running CGI scripts and posting the results on the web page (as in polls), posting the current time and date on the page, posting the date of the last update, etc. However, in this article, we'll just talk about the simplest use of SSI, the "Include" command. Before you can implement this SSI strategy, make sure you know whether your web site host allows the use of SSI. If it doesn't, find a host that does.
The "Include" command allows you to create a text file with your common information, and then place a directive (tag) in your HTML file that "points" to the text file. When you view the web page, the server places the contents of the text file where the tag is in the HTML file. You can use this trick for anything that recurs on each page of your website. For instance, you can put a header and footer on each page. The header and footer would be contained in text files called "header.txt" and "footer.txt". These files would contain the html that recurs on each page, such as text links, contact information, copyright information, etc. In place of this html on each page, you would place these tags:
<!--#include file="header.txt" -->
Now, whenever anyone views the pages containing those tags, the server will place the contents of the text files in the appropriate place and the viewer will see the header and footer. Whenever a change is needed within the header or footer, only ONE file needs to be edited -- the text file. All of the pages using that file will be "automatically" updated. Changing the copyright date or address or phone number on every page of your web site will now take only 30 seconds because only one file has to be changed!
The easiest way to do this is to create a web page with everything you'd like to have on it. Those parts that will recur on every other page are where you will use SSI. All you have to do is "cut & paste" all of the html that will be used on each page, pasting it into a text file. Where you "cut" the html, replace it with the tag, such as:
<!--#include file="header.txt" -->
Do the same thing for the footer, if needed. Save the HTML files using SSI with the extension ".shtml". Also, depending on how your server is set up with your host, you may have to make sure the text file is in the same directory as the .shtml file.
This also makes the initial design and development of web sites go much smoother. You can now have a "template" for each page using the header and footer directives, and then simply add the content in between for each page.
I guarantee that this little trick will save you hours and hours
of tedious work. As I stated at the beginning, if you've been
through these "simple" edits before, you will need very little
convincing! Don't let that ugly monster ever rear its head again!
The author, Steve Wood, designs & hosts small business websites. He owns & runs Wood Interactive http://woodinteractive.com and RedHotHosting.com http://redhothosting.com. RedHotHosting.com provides the best hosting services and most generous Reseller Program around. Check it out today for a free trial! Send a blank email for our FREE report, "7 Secrets to a Profitable Web Hosting Reseller Program" to: email@example.com You can contact Steve at firstname.lastname@example.org
blog comments powered by Disqus