it-swarm.com.de

verwenden von wp_enqueue_script zum Anhängen von jquery-ui

Ich versuche, jquery-ui mit wp_enqueue_script zu laden. Ich kann überprüfen, ob die Abfrage geladen ist. jquery-ui ist registriert, d. h. die Ausgabe von var_dump (wp_script_is ('jquery-ui-tabs', 'registered')); is bool (true) gibt an, dass es registriert ist, aber nicht in die Seite aufgenommen wird.

Ich benutze WordPress Version 3.3.1

Was läuft falsch?

Ich hänge den relavanten Snippet aus functions.php aus meinem Theme an.

<?php
function my_scripts_method() {
  wp_register_script('jquery');
  wp_register_script('jquery-ui-core');
  wp_register_script('jquery-ui-tabs');
}
add_action('wp_enqueue_scripts', 'my_scripts_method');
?>
1
viyyer

Hier ist eine alternative Möglichkeit, ein beliebtes Skript wie jquery-ui zu laden (mit Google Api's).

<?php  
// first, check to see if jquery-ui is already loaded 
if( !wp_script_is('jquery-ui') ) { 
        // you don't have to use googleapi's, but I think it helps. It saves the user's browser from loading the same script again if it has already been loade>
    wp_enqueue_script( 'jquery-ui' , 'https://ajax.googleapis.com/ajax/libs/jqueryui/1.8.16/jquery-ui.min.js' );
}   
?>  

* Wenn Sie immer noch Probleme haben, versuchen Sie, den vollständigen Pfad zum "siteroot" zu verwenden. Dies ist normalerweise das Verzeichnis, in dem Sie den Ordner "wp-content" finden. Laden Sie also jquery-ui lokal aus Ihrem Themenordner, wenn keine Verbindung besteht. versuchen Sie etwas wie:

    <?php  
// first, check to see if jquery-ui is already loaded 
if( !wp_script_is('jquery-ui') ) { 
    wp_enqueue_script( 'jquery-ui' , '/home/<myusername>/<mysite.com>/wp-content/themes/<mycustomthemename>/js/jquery-ui.min.js' );
}   
?>  

Dies funktioniert nur, wenn Sie die Datei in diesem Ordner und in einem js-Ordner haben, den Sie innerhalb des Themas erstellt haben. Dies ist nicht empfehlenswert, wenn Sie Websites auf eine andere URL ändern müssen. In diesem Fall müssen Sie jedoch nur den Ordner aktualisieren.

1
amatusko

Ich glaube, Sie suchen nach wp_enqueue_script und nicht nach wp_register_script.

Wenn das Skript mit WordPress kommt

 wp_enqueue_script( 'jquery-ui' );
3
Shane

jQuery und jQuery-ui sind bereits bei WordPress registriert. Sie müssen sie in die Warteschlange einreihen, um sie auf die Seite zu laden. Sie verwenden jedoch ' wp_register_script () ' anstelle von ' wp_enqueue_script () ' in Ihrer ' my_scripts_method () ' - Funktion.

Bitte benutzen Sie den folgenden Code:

function my_scripts_method() {
  wp_enqueue_script('jquery');
  wp_enqueue_script('jquery-ui-core');
  wp_enqueue_script('jquery-ui-tabs');
}
add_action('wp_enqueue_scripts', 'my_scripts_method'); 

Hinweis: Möglicherweise möchten Sie sie mit ' wp_script_is () ' bedingt laden. Beispiel:

if( !wp_script_is('jquery-ui-tabs') ) {     
  wp_enqueue_script('jquery-ui-tabs');
}
0

Sie sollten neue Skripte mit der folgenden Methode registrieren:

wp_register_script('jquery-ui', get_template_directory_uri().'/js/jquery-ui.js');

Wenn Sie WordPress derzeit über ein neues Skript ohne Quelle informieren, müssen Sie auch eine Verknüpfung zu Ihrer Quelle herstellen.

Nachdem Sie das Skript registriert haben, müssen Sie es in die Warteschlange stellen, um es in Ihrem Thema zu verwenden:

wp_enqueue_script('jquery-ui');

Tun Sie das nach den Zeilen wp_register.

0
Asko