js文件不包含在wordpress的主题中

时间:2014-05-15 07:37:21

标签: javascript php ajax wordpress wordpress-plugin

我是wordpress的新手。我已经创建了一个插件,它运行正常。现在我改变了我的wordpress主题(创建了我自己的主题)。问题是当主题是我的主题时,插件中的js文件不包括在内。 js文件包含在其他主题中。我该怎么做才能解决这个问题。

我在插件第一页中使用了以下代码来加载Jquery

add_action('init', 'register_script');
function register_script() {
    wp_register_script( 'custom_jquery', plugins_url('/js/bootstrap.js', __FILE__), array('jquery'), '2.5.1' );
    wp_register_script( 'custom_jquery1', plugins_url('/js/jquery.min.js', __FILE__), array('jquery'), '2.5.1' );
    wp_register_script( 'cust_pluginjs1', plugins_url('/js/pluginjs.js', __FILE__), array('jquery'), '2.5.1' );
    wp_register_style( 'new_style', plugins_url('/css/style.css', __FILE__), false, '1.0.0', 'all');
    wp_register_style( 'new_style1', plugins_url('/css/bootstrap.css', __FILE__), false, '1.0.0', 'all');
    wp_register_style( 'new_style2', plugins_url('/css/font-awesome.css', __FILE__), false, '1.0.0', 'all');
    wp_localize_script( 'cust_pluginjs1', 'myAjax', array( 'ajaxurl' => admin_url( 'admin-ajax.php' )));

}
add_action('wp_enqueue_scripts', 'enqueue_style');

function enqueue_style(){
   wp_enqueue_script('custom_jquery');
   wp_enqueue_script('custom_jquery1');
   wp_enqueue_script('cust_pluginjs1');
   wp_enqueue_style( 'new_style' );
   wp_enqueue_style( 'new_style1' );
    wp_enqueue_style( 'new_style2' );
}



.js文件中使用的Jquery是

function domainsort(type)
{
  // jQuery.post('http://localhost/wptest/wp-admin/admin-ajax.php',data )
    jQuery.ajax({
                type: 'POST',
                url: myAjax.ajaxurl,
                data: {
                    action: 'sortfn',
                    sortId: type,

                },

                success:function(data){
                    if(data){
                     jQuery(".tablenpage").html(data);
                    }

                },
                error: function(MLHttpRequest, textStatus, errorThrown){
                    alert(errorThrown);
                }
            });
}

1 个答案:

答案 0 :(得分:0)

你在这里完全注册/排队错误。您正在一个挂钩到init的函数中注册脚本,然后将它们排入另一个函数并将其挂钩到wp_enqueue_scripts

您应该将wp_register_script()wp_enqueue_script()放在同一个函数中,然后该函数应该挂钩到wp_enqueue_scripts

修改

您绝不能使用init挂钩来排队脚本或样式。正确使用的钩子是wp_enqueue_scripts