1: You will need to give the div that holds the homepage center content an id so it can be addressed in the stylesheet. Actually, if you used define_main_page.php to hold the homepage content, there would already be a div id to use (#indexDefaultMainContent {margin-top: 2.0em}). You apparently put the homepage content in its own <td> in tpl_main_page.php.
2: The principle will be the same. Do you want the border around the entire center column content, or around selected portions of it? Some center column elements may have enough components already, while some (like centerboxes) may need another wrapper div. If you want the whole center content bordered in one box, you probably need to add a couple of wrapper divs in tpl_main_page.php just inside the <td valign="top"> that holds the whole center, perhaps something like
PHP Code:
<td valign="top">
<div id="centerTop">
<div id="centerBottom">
...
</div>
</div>
</td>
You may want to locate the wrapper divs elsewhere inside that cell, as there are a number of elements like banners and breadcrumbs that you might want outside of the box. Just be careful not to overlap element opening and closing tags.
You can put the box top and bottom bg images in the relevant divs with padding to clear the bg; all pages will have a .centerColumn class on the main content div that can hold the straight side borders.
This is what outputs the main content:
PHP Code:
<?php
/**
* prepares and displays center column
*
*/
require($body_code); ?>
so if you want to box only the main content, you would put the wrapper divs just above and below it.
This will apply to all pages, so if you don't want the homepage to get the same box, you can specify
Code:
#indexHomeBody #centerTop {background: none;}
#indexHomeBody .centerColumn {background: none;}
#indexHomeBody #centerBottom {background: none;}
More tweaks will undoubtedly be needed, but that is the gist of it.
3: This is probably going to require a bunch of custom PHP coding. Since there are many files that work together to display any one page, you don't necessarily want to tell the latest file date, as that might not be relevant to the content. You would probably want to get the $current_page_base to tell what type of page you are on, look up the last-modified date in the relevant table in the database, and handle that for output. Sounds like more trouble than it's worth unless you are a whiz with PHP and MySQL.
Thanks for the banner offer! I'll pm later.