2016-04-17 6 views
0

Ich schreibe ein Plugin für WordPress, und ich verwende einen benutzerdefinierten Beitragstyp, der vom Plugin erstellt wurde.jQuery läuft nicht im WordPress-Backend, bis Post veröffentlicht wird

Ich habe einige jQuery zum Postbearbeitungsseite hinzugefügt. Als ich es schrieb, schaute ich mir einen veröffentlichten Post an, und alles funktioniert gut.

Aber wenn ich einen neuen Beitrag zu erstellen versuchte, bemerkte ich, dass jQuery nicht mehr funktioniert.

Nach einigen Tests, bemerkte ich, dass jQuery läuft nicht vollständig, wenn der Beitrag nicht veröffentlicht wird.

Ich habe versucht, diesen einfachen Code console.log('jQuery is running'); ausführen, aber nichts an unveröffentlichten Beitrag anhängen (neue Beiträge).

Haben Sie eine Idee auf, was appening?

UPDATE: Ich habe etwas falsch in der Art, wie ich das Skript in die Warteschlange einreihte.

Dies ist, wie eigentlich i enqueue mein Skript

function enqueue_scripts_back_end($hook) { 
if ('post.php' != $hook || 'post-new.php' != $hook) { 
    return; 
} 

wp_enqueue_script('aws_app_js', plugin_dir_url(__FILE__) . 'app.js'); 
} 

add_action('admin_enqueue_scripts', 'enqueue_scripts_back_end'); 

Ich brauche meinen Code auf die Post-new.php Seite zu bewerben, hier funktioniert nicht

Antwort

1

Ok ich auf dem richtigen Weg war und endlich habe ich gelöst!

Das Problem war auf der Bedingung || (oder), nach 5 Stunden Kodierung war ich ein wenig verwirrend.

Da ich möchte, dass mein jQuery auf der post-new.php und post.php läuft, ist die Bedingung & & (und), also ist die korrekte Enqueue diese.

function enqueue_scripts_back_end($hook) { 
if ('post.php' != $hook && 'post-new.php' != $hook) { 
    return; 
} 

wp_enqueue_script('aws_app_js', plugin_dir_url(__FILE__) . 'app.js'); 
} 
add_action('admin_enqueue_scripts', 'enqueue_scripts_back_end'); 

Vielen Dank!

Verwandte Themen