El mejor enfoque que me viene a la mente es dynamic generate un archivo LESS usando PHP (incluyendo tus vars).
1 \ Deberá incluir una nueva hoja de estilo en sus páginas HTML.
<link rel='stylesheet/less' href='css/style.php' />
2 \ En su style.php
incluyen su PHP vars de la siguiente manera:
<?php header("Content-type: text/css; charset: UTF-8"); ?>
@brand_color_1 = <?php echo $brand_color_1; ?>;
/* Add all other vars do you need. */
3 \ A continuación, en la parte inferior (o después MENOS declaración var) de esta style.php
agrega todos sus importaciones necesarias de la siguiente :
<?php
header("Content-type: text/css; charset: UTF-8");
@brand_color_1 = <?php echo $brand_color_1; ?>;
/* Add all other vars do you need. */
@import "style.less";
?>
Esto funciona como un reloj.
Hay un artículo que puede read about CSS Variables with PHP escrito por Chris Coyier.
Otra no se recomienda alternativa que está compilando archivos MENOS en el lado del cliente, que podría manualmente compilarlas y pasar PHP vars haciendo lo siguiente:
<script type="text/javascript">
var colors = '';
colors += '@brand_color_1: <?php echo $brand_color_1 ?>;'
colors += '@brand_color_2: <?php echo $brand_color_2 ?>;'
colors += '@import "style.less"';
// Add other imports.
var parser = new (less.Parser)();
parser.parse(colors, function(err, tree) {
var css = tree.toCSS();
// Add it to the DOM maybe via jQuery
});
</script>
¿Cómo está convirtiendo su LESS en CSS? –
Configurar el lado del cliente ahora mismo. Estoy buscando algo como: href = "styles.less & var = FFF" – Chords
Bueno, la noción de que alguna vez hubo variables se ha ido una vez que la compiló. Si te estás moviendo para hacerlo del lado del servidor de lo que seguramente es posible, aunque no estoy seguro de cómo. Lo mejor que puedo pensar es hacer que PHP genere una hoja de estilo LESS con esas variables y que luego compile con todo lo demás. –