rlemire's answer is an interesting one, and another variation. I think an issue with iframes etc., is making sure searches etc. go to the right place is going to be more work. But it's do-able. I'll leave it to rlemire to decide if he wants to expand on his comments/solution.
Going back to my solution, here's how I'd do it
I can't quite do it with the links from bookdealers' site, as the pages all contain the header tags, etc. (so these pages would need editing before you could use my concept)
Let's try it another way. Remember I am using [ ] instead of greater-than/less-than signs in this post, because I don't want to post real HTML
A normal HTML page would look something like this
[HTML]
[HEAD]
[TITLE]Page Title Here[/TITLE]
[/HEAD]
[BODY]
[More HTML tags etc for top of page design]
The text of the page would go here
[More HTML tags etc for bottom of page design]
[/BODY]
[/HTML]
Right now, if I had two similar pages, the HTML code for both pages would probably be virtually identical except for the little bit which says "The text of the page would go here".
So if I had index.htm and page2.htm then both files would be nearly identical, except for that little bit.
For example index.htm might contain
[HTML]
[HEAD]
[TITLE]Page Title Here[/TITLE]
[/HEAD]
[BODY]
[More HTML tags etc for top of page design]
This is the index page
[More HTML tags etc for bottom of page design]
[/BODY]
[/HTML]
And page2.htm might contain
[HTML]
[HEAD]
[TITLE]Page Title Here[/TITLE]
[/HEAD]
[BODY]
[More HTML tags etc for top of page design]
This is page2
[More HTML tags etc for bottom of page design]
[/BODY]
[/HTML]
So first, I cut the top part (above the text) and put it into a separate file (in the include folder), called top.inc. This file would contain
[HTML]
[HEAD]
[TITLE]Page Title Here[/TITLE]
[/HEAD]
[BODY]
[More HTML tags etc for top of page design]
Next I do the same for the bottom part, and make bot.inc in the include folder containing
[More HTML tags etc for bottom of page design]
[/BODY]
[/HTML]
Next I set up an Activ Variable called top, which includes HTML from top.inc. And a variable called bot, which includes HTML from bot.inc.
Next when I create index.htm, I realize that I don't need to duplicate all that stuff, I just reference top and bot :-
NOTE: Really use square brackets for this
[={top}]
This is the index page
[={bot}]
And when I do page2.htm, I create page2.htm like this
NOTE: Really use square brackets for this
[={top}]
This is page2
[={bot}]
Finally, in the compiler, I go to the Files tab, and make sure the PreProcessor is enabled for both index.htm and page2.htm
Now what I have done, is allow me to create 2 pages on a common template (but I could follow the same principle for more HTML pages too), without duplicating lots of HTML code.
Finally to answer why I couldn't quite do this with bookdealers' top.html and bottom.html ....
If you open top.html or bottom.html or index.html in a text editor, (like Notepad etc), you will see that they are all in themselves complete pages, including the HEAD, /HEAD BODY, /BODY HTML, /HTML tags... unlike the example I just gave.