Problem beim Laden von Javascript in der Fußzeile

Ich habe ein kleines Plugin geschrieben, wo ich folgende Skripte geladen habe

wp_enqueue_script('jquery', plugins_url('/js/jquery.min.js', __FILE__),'','1.7',true); wp_enqueue_script('new-cycle', plugins_url('/js/cycle.js', __FILE__),array( 'jquery' ),'1.0',true); wp_enqueue_script('new-jcarousellite', plugins_url('/js/jcarousellite.js', __FILE__),array( 'jquery' ),'1.0',true); wp_enqueue_script('new-fancybox', plugins_url('/js/fancybox.js', __FILE__),array( 'jquery' ),'1.0',true); 

und ich habe auch einen JavaScript-Code, um cycle und fancybox-functionen (mit Parametern / Optionen geladen von Optionen und post_meta Tabellen) aufrufen

 function front_js(){ ?>  $(document).ready(function(){ $(".video-popup").fancybox(); $(".video_msgs").cycle({speed:''}); });  <?php } 

Dieser Code wird mit add_action('wp_footer', 'front_js'); zur Fußzeile hinzugefügt add_action('wp_footer', 'front_js');

Jetzt wird mein JavaScript-Code geladen, bevor alle benötigten Skripte benötigt werden

  $(document).ready(function(){ $(".video-popup").fancybox(); $(".video_msgs").cycle(); });       

und $('...').fancybox() Fehler $('...').fancybox() keine function

Ich denke es ist, weil der Code vor fancybox.js-Datei geladen wird, wo diese function geschrieben wird. Ich habe versucht, print_scripts-functionen zu verwenden, aber es wird empfohlen, dies nicht zu verwenden, und wp_enqueue_script funktioniert nur mit Dateien, die nicht mit benutzerdefiniertem JavaScript-Code arbeiten.

Gibt es eine Methode zum Laden meines benutzerdefinierten Codes nach dem Laden erforderlicher Dateien oder auf andere Weise, um diese Art von Problem zu lösen?

Es funktioniert, wenn ich alle Dateien im Header lade, aber dann erhöht es Ladezeit der Seite, die auch kein guter Ansatz ist.

Solutions Collecting From Web of "Problem beim Laden von Javascript in der Fußzeile"

Versuchen Sie den Code mit add_action('wp_footer', 'front_js', 99); zur Fußzeile add_action('wp_footer', 'front_js', 99); Wobei 99 die Reihenfolge angibt, in der die functionen ausgeführt werden. Jetzt sollte es ausgeführt werden, nachdem Ihre Skripte geladen wurden.

Anstatt den Code in function zu setzen und ihn an wp_footer .

Sie können eine andere JS-Datei in Ihrem Plugin-Ordner speichern und sie in die Warteschlange stellen wie andere Skripte, die Sie in die Warteschlange eingereiht haben.

ODER

 < ?php function front_js() { if ( wp_script_is( 'jquery', 'done' ) ) { ?>  < ?php } } add_action( 'wp_footer', 'front_js' ); ?>