Я пытаюсь разработать свой собственный плагин для Wordpress, но почему-то не могу включить в него файлы javascript. Прежде чем я решил задать этот вопрос здесь, я провел много исследований, но ни одно из них не решало мою проблему. Я много читал о wp_register_script () и wp_enqueue_script (), а также о том, что мне не нужно включать оба, поэтому я решил использовать только wp_enqueue_script ().
Файл javascript находится в wp-content / snappy-list-plugin / js / public / snappy-wordpress-plugin.js, а индексный файл находится в wp-content / snappy-list-plugin / snappy- WordPress-plugin.php.
В файле snappy-wordpress-plugin.php у меня есть:
function mslb_public_scripts(){
wp_enqueue_script('custom_js', plugins_url( '/snappy-list-plugin/js/public/snappy-wordpress-plugin.js', __FILE__ ), array('jquery'), '', true);
}
что похоже на oke, но не включает файл.
Вверху файла у меня есть:
add_action('wp_enqueue_scripts', 'mslb_public_scripts');
Может кто-нибудь помочь мне с этим ?!
Я пытался добавить wp_register_script (), но он не работает
add_action('admin_enqueue_scripts', 'mslb_public_scripts');
function mslb_public_scripts(){
wp_enqueue_script('custom_js', plugins_url( '/snappy-list-plugin/js/public/snappy-wordpress-plugin.js', __FILE__ ), array('jquery'), '', true);
}
Файл snappy-wordpress-plugin.js:
jQuery(document).ready(function($) {
var wpajax_url = document.location.protocol + '//' + document.location.host + '/wp-admin/admin-ajax.php';
var email_capture_url = wpajax_url += '?action=swp_save_subscription';
$('form.swp_form').bind('submit', function(){
$form = $(this);
var form_data = $form.serialize();
$.ajax({
'method' : 'post',
'url' : email_capture_url,
'data' : form_data,
'dataType' : 'json',
'cache' : false,
'success' : function( data, textStatus){
if(data.status == 1){
$form[0].reset();
alert(data.message);
} else {
var msg = data.message + '\r' + data.error + '\r';
$.each(data.error, function(key, value){
msg += '\r';
msg += ' - ' + value;
});
alert( msg );
}
},
'error' : function(jqXHR, textStatus, errorThrown){
}
});
//stop the form from submitting normally
return false;
});
});```