Как динамически управлять путями в статических файлах CSS с помощью проекта воспламенителя кода MVC - PullRequest
3 голосов
/ 08 июля 2011

Я создаю сайт / codeigniter-проект, который использует представления, которые ссылаются на внешние CSS-файлы.

Повсюду в представлениях моего проекта / веб-страницы я могу управлять путями URL-адресов изображений, ссылок и т. Д., Создавая их из установочной переменной base_url. У меня нет никакого контроля над статическими, связанными внешними файлами CSS. Это означает, что всякий раз, когда мой основной URL-путь изменяется для моего сайта, я должен просматривать мои CSS-файлы и выполнять глобальный поиск / замену, чтобы обновить все мои пути.

Чтобы решить эту проблему, я подумал о создании контроллера просто для загрузки файлов CSS / JavaScript и обработки реальных файлов как представления с помощью хуков, но @WesleyMurch сказал мне об этом:

Использование контроллера для обработки возврата настроенных файлов CSS и Javascript с codeigniter

Как я могу динамически назначать базовые пути для моих ресурсов CSS, чтобы мне не приходилось выполнять глобальный поиск и заменять каждый раз, когда я обновляю базовый путь моего сайта?

1 Ответ

1 голос
/ 08 июля 2011

Для этого я использую файл представления, содержащий код CSS со всеми переменными.Единственное изменение заключается в том, что вы должны установить соответствующие заголовки для CSS

Создать function style в вашем контроллере и настроить его на отображение соответствующего файла представления (style.php).Кодируйте все свои CSS с php-кодом в style.php.

Установите следующие заголовки в начале функции:

header("ContentType: text/css");
header("Expires: <some far future expiration time or use mod_expires with apache>");
...