Sie sollten darauf hingewiesen werden, dass nicht alle Plugins / Themes die Warteschlange verwenden. Als ich anfing, mich mit allen ausgegebenen JavaScripts und CSS-Dateien zu befassen, habe ich mich einfach in die in die Warteschlange gestellten Dateien eingebunden. Dies führte dazu, dass ich nur 2 von 10 JavaScript-Dateien und 1 von 3 CSS-Dateien erhielt.
Hier sind einige schnelle PoCs. Weder getestet noch gedacht, um Sie in die richtige Richtung zu bringen, wenn Sie codieren können. Sobald ich nach Hause komme, werde ich etwas Passenderes und Funktionaleres zusammenschlagen.
add_action('wp_print_scripts','head_files');
function head_files(){
global $wp_scripts, $auto_compress_scripts;
print 'print out head.js';
$queue = $wp_scripts->queue;
$wp_scripts->all_deps($queue);
$to_do = $wp_scripts->to_do;
$headArray = array();
foreach ($to_do as $key => $handle) {
$src = $wp_scripts->registered[$handle]->src;
$headArray[] = $src;
}
print 'print out head.js("'.implode("'",$headArray.'")';
}
(Grundsätzlich wurde der größte Teil des Codes aus dem JS & CSS Script Optimizer geklaut. )
add_filter('wpsupercache_buffer', 'head_files' );
function head_files($buffer){
if ( $fileType == "js" ){
preg_match_all('~<script.*(type="["\']text/javascript["\'].*)?src=["\'](.*)["\'].*(type=["\']text/javascript["\'].*)?></script>~iU',$content,$matches);
$headArray = $matches[2];
}
print 'print out head.js';
print 'print out head.js("'.implode("'",$headArray.'")';
return $buffer;
}
Verwenden der WP Super Cache-Ausgabepufferung.
</body>