Hinzufügen eines jQuery-Skripts zum WordPress-Administrator

Lesezeit: 2 Minuten

Aus irgendeinem Grund kann ich die WordPress-/wp-admin-Seiten nicht dazu bringen, eine einfache Abfragedatei auszuführen. Es funktioniert nur, wenn ich jquery in meiner „functions.php“ in meinem Theme-Ordner deregistriere, aber dann muss ich alle jquery.ui-Dateien separat neu registrieren, was mühsam ist. Ich verwende die Multisite-Installation von WordPress 3.0. Ich versuche, die Kerndateien von wp nicht zu berühren.

Es wird in der Quelle angezeigt und verlinkt auf die Datei, aber das Skript wird nicht ausgeführt. Hier ist, was ich in meiner Functions.php habe:

function my_script() {
if (!is_admin()) {
    wp_deregister_script('jquery');
    wp_register_script('jquery', 'https://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.min.js', false, '1.4.4');
    wp_enqueue_script('jquery');
    wp_enqueue_script('custom_script', get_bloginfo('template_url').'/js/myScript.js', array('jquery'));
}
if(is_admin()){
    wp_enqueue_script('custom_admin_script',  get_bloginfo('template_url').'/js/admin_script.js', array('jquery'));
}   }

add_action(‘init’, ‘my_script’);

Hier ist meine JQuery-Datei (admin_script.js):

$(document).ready(function(){
alert("Hello"); });

Jede Hilfe wäre großartig.

  • Da ich mir nie sicher bin, ob es keinen Konflikt geben wird, verwende ich dies standardmäßig, da es sich darum kümmert und ich bei meinem Normal bleiben kann: (function($){ // alle meine jQuery mit $(‘selectors ‘) })(jQuery);

    – David Hobs

    25. September 2012 um 21:37 Uhr

Beachten Sie, dass die in WordPress enthaltene jQuery ausgeführt wird NoConflict-Modus Soweit ich weiß, bedeutet das, dass es keine gibt $aber stattdessen jQuery. Das ist wahrscheinlich der Grund, warum Sie die integrierte jQuery abgemeldet und die von Google CDN verwendet haben. Das läuft wahrscheinlich nicht in diesem Modus.

Ich habe keine Erfahrung mit WordPress, daher kann es sein, dass ich hier einen Fehler mache. Stellen Sie einfach sicher, dass die integrierte jQuery verfügbar ist, und laden Sie Ihr Skript.

function my_script() {
    if (!is_admin()) {
        wp_enqueue_script('custom_script', get_bloginfo('template_url').'/js/myScript.js', array('jquery'));
    }
    if(is_admin()){
        wp_enqueue_script('custom_admin_script', get_bloginfo('template_url').'/js/admin_script.js', array('jquery'));
    }   
}

Ändern Sie Ihre zu verwendende admin_script.js jQuery stattdessen $.

jQuery(document).ready(function(){
    alert("Hello"); 
});

Sehen Sie, ob das für Sie funktioniert. Wenn Sie es verwenden möchten $ Du könntest wahrscheinlich schreiben var $ = jQuery; oben in Ihrer admin_script.js.

  • jQuery übergibt sich tatsächlich selbst als erstes Argument der aufgerufenen Funktion, sodass Sie schreiben können jQuery(document).ready(function ($) { $('#blah').click(); }); usw. Oder natürlich einfach jQuery(function ($) { $('#blah').click(); });.

    – alnorth29

    26. Juni 2015 um 15:58


Benutzeravatar von NewUser
Neuer Benutzer

Das können Sie so machen

<?php add_action( 'admin_enqueue_scripts', 'function_name' ); ?>

Dies kann so verwendet werden

<?php 
  add_action( 'admin_enqueue_scripts', 'load_custom_script' ); 
  function load_custom_script() {
      wp_enqueue_script('custom_js_script', get_bloginfo('template_url').'/js/custom-script.js', array('jquery'));
  }
?>

Weitere Hilfe finden Sie in der Dokumentation Hier

1452080cookie-checkHinzufügen eines jQuery-Skripts zum WordPress-Administrator

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy