Не удаётся вывод суммы корзины в шапке

Работает, если url = /total и выводит {"path":0,"status":"success","message":18000} на белой (пустой) странице. "message":18000 — верно, но нужно в определённом месте и на всех страницах.

Вот это контроллер такой у меня:

public function totalAction()
{
    $total = $this->model->cartTotal(0);
    $this->view->message(0, 'success', $total ?? 0);
}

Метод cartTotal работает достойно, к нему претензий нет.

Вот это метод message:

public function message($path, $status, $message)
    {
        exit(json_encode(['path' => $path, 'status' => $status, 'message' => $message]));
    }

Вот такой javascript:

document.addEventListener('DOMContentLoaded', async () => {
    try {
        const response = await fetch(window.location.href, { method: 'POST' });
        const json = await response.json();
        
        if (json.status === 'success') {
            document.getElementById('cart-total').textContent = json.message + ' ₽';
        }
    } catch (error) {
        console.error('Ошибка при получении суммы корзины:', error);
    }
});

Ну и вывод в главном шаблоне:

<span id="cart-total"></span>

Ответы (0 шт):