Включить JS-файлы в пользовательский плагин Wordpress - PullRequest
0 голосов
/ 19 мая 2019

Я пытаюсь разработать свой собственный плагин для 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; 

    });

});```

1 Ответ

0 голосов
/ 19 мая 2019

Правильное действие wp_enqueue_scripts

 add_action('wp_enqueue_scripts', 'mslb_public_scripts');

 function mslb_public_scripts(){
   wp_register_script('custom_js', plugins_url('/js/public/snappy-wordpress-plugin.js',__FILE__ ), array('jquery'), '', true);
   wp_enqueue_script('custom_js');
 }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...