I had a request from a client to remove a lot of the default features from the gallery main page, and to leave behind just the albums (remove categories, latest additions, etc.). Searching your forum, I found this thread, and alas, presumed it was a similar issue. But I'll take your word on the original post.
Anyway, if it's of some help, to address hiding certain elements on the main page, I changed the code in the index.php file, by commenting out (using /* ... */) most of the case situations I didn't need. Beginning at line 777:
switch ($matches[1]) {
case 'breadcrumb':
// Added breadcrumb as a separate listable block from config
if (($breadcrumb != '' || count($cat_data) > 0) && $cat != 0) theme_display_breadcrumb($breadcrumb, $cat_data);
break;
/* case 'catlist':
if ($breadcrumb != '' || count($cat_data) > 0) theme_display_cat_list($breadcrumb, $cat_data, $statistics);
if (isset($cat) && $cat == USER_GAL_CAT) {
list_users();
}
flush();
break; */
case 'alblist':
list_albums();
flush();
break;
/* case 'random':
display_thumbnails('random', $cat, 1, $CONFIG['thumbcols'], max(1, $matches[2]), false);
flush();
break;
case 'lastup':
display_thumbnails('lastup', $cat, 1, $CONFIG['thumbcols'], max(1, $matches[2]), false);
flush();
break;
case 'lastalb':
display_thumbnails('lastalb', $cat, 1, $CONFIG['thumbcols'], max(1, $matches[2]), false);
break;
case 'topn':
display_thumbnails('topn', $cat, 1, $CONFIG['thumbcols'], max(1, $matches[2]), false);
flush();
break;
case 'toprated':
display_thumbnails('toprated', $cat, 1, $CONFIG['thumbcols'], max(1, $matches[2]), false);
flush();
break;
case 'lastcom':
display_thumbnails('lastcom', $cat, 1, $CONFIG['thumbcols'], max(1, $matches[2]), false);
flush();
break;
case 'lasthits':
display_thumbnails('lasthits', $cat, 1, $CONFIG['thumbcols'], max(1, $matches[2]), false);
flush();
break; */
case 'anycontent':
if ($cat == 0) {
ob_start();
/**
* Any php code or HTML can be put in this file and will be displayed
*/
include('anycontent.php');
$anycontent = CPGPluginAPI::filter('anycontent',ob_get_contents());
ob_end_clean();
echo ($anycontent);
}
flush();
break;
}
That worked great for my needs, but I hear what Nibbler is saying regarding the config settings, which would have been simpler:
Those are all easily controlled by configuration options.