Открываете контроллер категории
/catalog/controller/product/category.php
Или добавляете новое поле в базу данных (для проверки закрытой категории), или ищите в файле строку
$data['categories'] = array();
и перед ней добавляете
// массив с id категорий, которые нужно закрыть
$disallow_categories = array(
12,
14,
156,
84
);
// теукщая категория находится в массиве? пользователь не залогинен? делаем редирект
if (in_array($category_id, $disallow_categories) && !$this->customer->isLogged()) {
$this->session->data['redirect'] = $this->url->link('product/category', 'path=' . $this->request->get['path'] . $url, 'SSL');
$this->response->redirect($this->url->link('account/login', '', 'SSL'));
}