Чтобы выбор города заработал, измените строку в index.php так:
if (!cmsUser::isLogged() && $_SERVER['REQUEST_URI'] != "/auth/register" && $_SERVER['REQUEST_URI'] !="/geo/widget/city") { header("Location: /auth/register");}
Как-то несправедливо, что гости ничего посмотреть на сайте не могут, но рекламу смотреть обязаны.
Если хотите оставить нормальный вид главной страницы, то надо делать не колхозным способом,(который я же и предложил
), а как в начале темы и советовали. Всем виджетам на сайте ставите галку "не показывать гостям"
а на главной вывешиваете виджет авторизации "показывать только гостям".