В backend/Controllers/PageAdmin.php есть такой код
$id = $pagesRequest->getId();
if (!empty($id)) {
$page = $backendPagesHelper->getPage((int) $id);
} else {
$page = new \stdClass;
$page->visible = 1;
}
Редактирование нового объекта проходит мимо $backendPagesHelper->getPage, и это создает некоторые неудобства при создании модуля.
Как я понимаю, причина в том, что захотели сделать новый объект сразу активным (целесообразность чего весьма сомнительна). Но даже если решили такое реализовать, надо бы при этом не портить текущее единообразие.
В большинстве прочих сущностей такого недостатка нет.
Подобное сделано для статей блога, но там сделано не столь грубо, а весьма аккуратно. Надо бы и для страниц поправить сей момент...