Juntar todos os ficheiros CSS com PHP

php css wp

Vamos ver um pequeno script onde usando um pouco de PHP permite compilar diversos documentos de CSS, em um único arquivo CSS. Isto não só reduz o tamanho total do arquivo, mas também faz com que sejam efectuados menos pedidos HTTP ao servidor quando são carregadas as páginas. Um site rápido equivale a uma boa experiência do usuário e também agrada aos mecanismos de pesquisa.

Assim cria um documento .php e insere o seguinte código:

<?php 
header('Content-type: text/css');
ob_start("compress");

    function compress( $minify ) 
    {
	/* remove comments */
    	$minify = preg_replace( '!/*[^*]**+([^/][^*]**+)*/!', '', $minify );

        /* remove tabs, spaces, newlines, etc. */
    	$minify = str_replace( array("rn", "r", "n", "t", '  ', '    ', '    '), '', $minify );
    		
        return $minify;
    }

    /* css files for combining */
    include('reset.css');
    include('application.css');
    include('responsive.css');

ob_end_flush();
?>

Agora no arquivo header.php em vez de chamar a stylesheet chama o arquivo que criaste. Por exemplo, eu criei o aqyuivo «minified.css.php», então vou chamar esse arquivo no header.php do meu tema da seguinte forma:

<link href="<?php bloginfo(template_directory); ?>/assets/css/minified.css.php" rel="stylesheet" />

Isto não só torna seu site mais rápido, mas também permite que se trabalhe com vários arquivos em desenvolvimento sem ter que comprimir manualmente cada antes de empurrar para a produção.

Espero que seja útil…

Deixe uma resposta

O seu endereço de email não será publicado. Campos obrigatórios marcados com *