Если CMS подразумевает установку, то можно запрос делать разово при установке.
Если подразумевается настройка CMS, то запрос можно делать при выполнении данного действа.
А вообще, если бы меня вот так приперло, я бы сделал установку одним файлом, который подтягивал исходники с моего сервера и разворачивал на сервере клиента. Ну и у себя "галочку" при этом ставил бы.
после чего вставьте код вызова нужного компонента.
2. При вызове модального окна укажите этот файл в качестве источника. Например, bootstrap вызывает примерно так:
Если бы я сейчас начал в учебных целях писать свою CMS, я бы убил двух зайцев: писал бы ее на основе какого-нибудь популярного фреймворка (например Yii). И велосипед напишется, и буду знать фреймворк.