Minify HTML with voku / HtmlMin?

I want use voku/HtmlMin in wordpress functions.php, i install composerr in theme folder and i use code:

class WP_HTML_Compression

{
    // Settings
    protected $compress_css = true;
    protected $compress_js = true;
    protected $info_comment = true;
    protected $remove_comments = true;

    // Variables
    protected $html;

    public function __construct($html) 
    {

        if (!empty($html)) {
         $this->parseHTML($html);
        }
    }

    public function __toString()
    {
        return $this->html;
    }

    protected function bottomComment($raw, $compressed)
    {
        $raw = strlen($raw);
        $compressed = strlen($compressed);

        $savings = ($raw-$compressed) / $raw * 100;

        $savings = round($savings, 2);

        return '<!--HTML compressed, size saved '.$savings.'%. From '.$raw.' bytes, now '.$compressed.' bytes-->';
    }

    protected function minifyHTML($html)
    {
      require('vendor/autoload.php');
    $htmlMin = new vokuhelperHtmlMin();

        return $htmlMin->doRemoveComments->doSortCssClassNames()->doSortHtmlAttributes()->minify($html);

      
    $htmlMin = vokuhelperHtmlMin;
        $htmlMin = new HtmlMin();
      
    }

    public function parseHTML($html)
    {
        $this->html = $this->minifyHTML($html);

        if ($this->info_comment) {
            $this->html .= "n" . $this->bottomComment($html, $this->html);
        }
    }

    protected function removeWhiteSpace($str)
    {
        $str = str_replace("t", ' ', $str);
        $str = str_replace("n",  '', $str);
        $str = str_replace("r",  '', $str);

        while (stristr($str, '  ')) {
            $str = str_replace('  ', ' ', $str);
        }

        return $str;
    }
}

function wp_html_compression_finish($html) {
    return new WP_HTML_Compression($html);
}

function wp_html_compression_start() {
    ob_start('wp_html_compression_finish');
}
add_action('get_header', 'wp_html_compression_start');

but it’s not work. How add voku/htmlmin correct?

Go to Source
Author: johm