[resolved] Built-in scripts that should be enqueued in footer are enqueued in header (1 post)

  1. szaqal21
    Posted 2 years ago #

    Built-in scripts (added in wp-includes/scripts-loader.php) for example this:
    $scripts->add( 'jquery-ui-core', '/wp-includes/js/jquery/ui/jquery.ui.core.min.js', array('jquery'), '1.10.3', 1 );
    should be printed in footer (last argument: 1) and this works fine when I don't use AssetsMinify. But when I activate AM I can see them being printed in header. I've made some search and found the potential problem. In AssetsMinifyInit.php near line 187 there is a check:
    if ( empty($wp_scripts->registered[$handle]->extra) )
    and this is ok for scripts being enqueued by user but not built-in scripts I think. I've printed out $wp_scripts before that line and I can see that built-in scripts have 'extra' attribute set to empty instead they have 'args' attribute set to '1'. So my conclusion is to modify the above conditional to this:
    if ( empty($wp_scripts->registered[$handle]->args) && empty($wp_scripts->registered[$handle]->extra) ).


Topic Closed

This topic has been closed to new replies.

About this Plugin

  • AssetsMinify
  • Frequently Asked Questions
  • Support Threads
  • Reviews

About this Topic


No tags yet.