I’m creating a plugin that has some external Javascript and some AJAX calls … but I don’t know the best way to make reference to the admin-ajax.php
file since the path requires some input from PHP (paths and such).
Should I declare a global javascript variable?
What is the best way to accomplish this?
What you need to do is register and/or enqueue your script and then use wp_localize_script
to include a Javascript variable on your page. The Codex page has this example:
wp_enqueue_script( 'some_handle' );
$translation_array = array(
'some_string' =>
__( 'Some string to translate' ),
'a_value' => '10'
);
wp_localize_script( 'some_handle', 'object_name', $translation_array );
You can then access the variable with, to quote the same Codex page:
<script>
alert(object_name.some_string); // alerts 'Some string to translate'
</script>