Ich versuche, Skripts auf benutzerdefinierten Post hinzufügen / bearbeiten Seiten, aber nicht funktioniert
PHP Code, (es funktioniert und Get Js Code)
if(strstr($_SERVER['REQUEST_URI'], 'wp-admin/post-new.php') || strstr($_SERVER['REQUEST_URI'], 'wp-admin/page-new.php')) { wp_enqueue_script('myscript', 'http://exemple.com/wp-content/themes/theme/js/rt_api.js');
Das Problem ist Js Code nicht geben Ergebnis:
Überprüfen Sie meinen Js und HTMl Code
Es gibt ein paar Dinge, die Sie tun wollen, damit Sie die Arbeit einbeziehen und im Allgemeinen besser. Hier ist der vollständige Code:
function my_theme_enqueue_admin_scripts() { $screen = get_current_screen(); // This is how we will check what page we are on if ( in_array( $screen->id, array( 'post', 'page') ) && $screen->action == 'add' ) { // Use get_template_directory_uri so we don't need to hardcode the URL to our theme folder wp_enqueue_script('myscript', get_template_directory_uri().'/js/rt_api.js'); } } // This action will call your function at the right time to enqueue your script for the admin area add_action( 'admin_enqueue_scripts', 'my_theme_enqueue_admin_scripts' );
admin_enqueue_scripts
, um unsere function aufzurufen, um das Skript zur richtigen Zeit in den Admin-Bereich einzuordnen $screen
Objekt, das WordPress für den Admin-Bereich erstellt, um zu signalisieren, welche Seite gerade angezeigt wird. Es hat eine Reihe von Attributen darauf. In unserem Fall überprüfe ich $screen->id
wenn es 'post'
oder 'page'
, und $screen->action
wenn es 'add'
. get_template_directory_uri()
, um die URL zum get_template_directory_uri()
zu erhalten. Auf diese Weise können wir unser Thema in jedem WordPress-Setup verwenden, ohne die URL zu unterbrechen. Verwenden von jQuery in Ihrem Skript
Wenn Sie jQuery in Ihren Skripten verwenden, können Sie das $
direkt verwenden, da die Version von jQuery, die in WordPress enthalten ist, das $
shorthand für jQuery
deaktiviert. Dies liegt daran, dass es früher üblich ist, dass mehrere JavaScript-Bibliotheken $
.
Sie haben zwei Optionen in Ihrem Javascript, um jQuery zu verwenden.
Die erste besteht darin, jQuery
anstelle von $
:
jQuery('#my-id').on('click', function() {} );
Die zweite besteht darin, den Code Ihres Skripts in eine Self-Calling-function einzubinden. Sie übergeben jQuery
als Parameter und benennen dann das Argument $
:
(function( $ ) { // your code here })( jQuery );
Debugging-Tipps
vergewissern Sie sich, dass Ihr ‘meinscript’ ausgedruckt wird, indem Sie die Seitenquelle anzeigen
Überprüfen Sie, dass die gedruckte URL korrekt ist (es ist einfach, einen Tipperrors zu haben)
Stellen Sie sicher, dass das Javascript nicht errorsfrei ist
ist ein anderes Skript, das auch das Handle myscript
, um einen Konflikt zu erzeugen