Pregunta

Tengo una url absoluta en mi hoja de estilo. http: //localhost/images/myimage.jpg .

También tengo una clase de configuración con la siguiente constante

const SITE_ROOT = 'http://localhost/images'

En las páginas php escribo config :: SITE_ROOT. " /myimage.jpg" de modo que cuando muevo el sitio al servidor de producción puedo cambiar la raíz del sitio en una ubicación central.

¿Hay alguna forma de hacer esto en mi hoja de estilo sin ponerlo en la página? Las URL relativas no son una opción porque estoy usando reescrituras de mod y las URL relativas no funcionan.

¿Fue útil?

Solución

Puede escribir su constante SITE_ROOT en los archivos CSS analizándolos con PHP. Agregue esto a .htaccess :

AddHandler application/x-httpd-php .css

Luego incruste PHP en los archivos CSS como lo haría en cualquier archivo .php .

Otros consejos

No hay forma de hacer esto con CSS. Si desea hacer algo como esto, puede convertirlo en un archivo PHP y usar variables de esa manera.

¿Pero no podrías simplemente usar URL absolutas?

background-image: url(/images/myimage.jpg);

Funcionará en cualquier servidor, no es relativo y encontrará los archivos desde la raíz.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top