So after much buggering around, scraping the internet for tiny morsels of information and generally breaking things I managed to get my blog to show up as the root of the site.
What a joke! Here’s what I did to make it work.
1) Created a new DTML Method called blogroot in the zope root folder
2) Entered the following code into the method:
<dtml-unless "1+(.string.find(PATHINFO, manage))">
<dtml-if "1+(.string.find(PATHINFO, manage))">
<!– this shouldn’t appear –>
<dtml-elif "1+(.string.find(PATHINFO, blog))">
<!– path was blog –>
<dtml-else>
<dtml-call "REQUEST.path.append(blog)">
</dtml-if>
</dtml-unless>
3) Created a Site Access Rule using the blogroot DTML method.
Seems easy eh? Well, thankfully I managed not to nuke the zope /manage area and could undo some of my changes before I found the solution. It only took me an hour and a half. :/
I realise now that to access any other folders within this zope instance the folder either has to be within the blog folder rather than the Zope instance’s root folder or added to the dtml-elif statements to make sure the path doesn’t have blog added to it.