如何强制主题使用Wordpress jQuery?

时间:2013-01-20 18:03:31

标签: php jquery wordpress

我安装了一个新的很棒的主题,并在努力工作后让它工作。一切都运行正常,除了“添加媒体”,“添加链接”和“HTML编辑器”。

我根据官方诊断说明阅读了如何诊断问题并将其发布在Wordpress.org论坛上,因为他们告诉我,但我还没有回复,我认为无论如何我都不会得到。< / p>

我用过这个:

define('SCRIPT_DEBUG', true);

它确实解决了“添加媒体”和“HTML编辑器”的问题,但没有解决“添加链接”的问题。当我点击它时,它会打开,但是屏幕变灰并且盒子在左下角很远,我无法用“取消”按钮(see here)关闭它。

我确实尝试禁用所有插件,但它不起作用(see here)。

总之,问题是主题可能有自己的jQuery版本,而Wordpress 3.5也有自己的版本。如何强制主题使用Wordpress的jQuery?或者强制Wordpress使用主题的jQuery?任何可以修复编辑器的东西,我都希望如此。

编辑:只是为了让它更清晰。与插件没有冲突。冲突发生在Wordpress的jQuery和主题的jQuery之间。

如果有帮助,这就在头文件中。

    <?php
    wp_enqueue_style("jqueryui_css", get_stylesheet_directory_uri()."/css/jqueryui/custom.css", false, $pp_theme_version, "all");
    wp_enqueue_style("screen_css", get_stylesheet_directory_uri()."/css/screen.css", false, $pp_theme_version, "all");
    wp_enqueue_style("tipsy_css", get_stylesheet_directory_uri()."/css/tipsy.css", false, $pp_theme_version, "all");
    wp_enqueue_style("fancybox_css", get_stylesheet_directory_uri()."/js/fancybox/jquery.fancybox.css", false, $pp_theme_version, "all");
    wp_enqueue_style("flexslider_css", get_stylesheet_directory_uri()."/js/flexslider/flexslider.css", false, $pp_theme_version, "all");

    $pp_advance_enable_responsive = get_option('pp_advance_enable_responsive');

    if(!empty($pp_advance_enable_responsive))
    {
        wp_enqueue_style("grid_css", get_stylesheet_directory_uri()."/css/grid.css", false, $pp_theme_version, "all");
    }

    if(isset($_SESSION['pp_slider_style']))
    {
        $pp_slider_style = $_SESSION['pp_slider_style'];
    }
    else
    {
        $pp_slider_style = get_option('pp_slider_style');
    }

    if($pp_slider_style=='full')
    {
        wp_enqueue_style("pp_slider_style", get_stylesheet_directory_uri()."/css/fullslide.css", false, $pp_theme_version, "all");
    }
    wp_enqueue_style("colorpicker.css", get_stylesheet_directory_uri()."/js/colorpicker/css/colorpicker.css", false, $pp_theme_version, "all");
?>

<script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=false"></script>

<?php   
    wp_enqueue_script("jquery", get_stylesheet_directory_uri()."/js/jquery.js", false, $pp_theme_version);
    wp_enqueue_script("jQuery_UI_js", get_stylesheet_directory_uri()."/js/jquery-ui.js", false, $pp_theme_version);
    wp_enqueue_script("swfobject.js", get_stylesheet_directory_uri()."/swfobject/swfobject.js", false, $pp_theme_version);
    wp_enqueue_script("colorpicker.js", get_stylesheet_directory_uri()."/js/colorpicker.js", false, $pp_theme_version);
    wp_enqueue_script("eye.js", get_stylesheet_directory_uri()."/js/eye.js", false, $pp_theme_version);
    wp_enqueue_script("utils.js", get_stylesheet_directory_uri()."/js/utils.js", false, $pp_theme_version);
    wp_enqueue_script("fancybox_js", get_stylesheet_directory_uri()."/js/fancybox/jquery.fancybox.pack.js", false, $pp_theme_version);
    wp_enqueue_script("jQuery_easing", get_stylesheet_directory_uri()."/js/jquery.easing.js", false, $pp_theme_version);
    wp_enqueue_script("jQuery_hint", get_stylesheet_directory_uri()."/js/hint.js", false, $pp_theme_version);
    wp_enqueue_script("jQuery_validate", get_stylesheet_directory_uri()."/js/jquery.validate.js", false, $pp_theme_version);
    wp_enqueue_script("jQuery_tipsy", get_stylesheet_directory_uri()."/js/jquery.tipsy.js", false, $pp_theme_version);
    wp_enqueue_script("reflection_js", get_stylesheet_directory_uri()."/js/reflection.js", false, $pp_theme_version);
    wp_enqueue_script("browser_js", get_stylesheet_directory_uri()."/js/browser.js", false, $pp_theme_version);
    wp_enqueue_script("flexslider_js", get_stylesheet_directory_uri()."/js/flexslider/jquery.flexslider-min.js", false, $pp_theme_version);
    wp_enqueue_script("marquee_js", get_stylesheet_directory_uri()."/js/jquery.marquee.js", false, $pp_theme_version);
    wp_enqueue_script("jwplayer_js", get_stylesheet_directory_uri()."/js/jwplayer.js", false, $pp_theme_version);
    wp_enqueue_script("gmap_js", get_stylesheet_directory_uri()."/js/gmap.js", false, $pp_theme_version);
    wp_enqueue_script("custom_js", get_stylesheet_directory_uri()."/js/custom.js", false, $pp_theme_version);

    /* Always have wp_head() just before the closing </head>
     * tag of your theme, or you will break many plugins, which
     * generally use this hook to add elements to <head> such
     * as styles, scripts, and meta tags.
     */
    wp_head();
?> 

2 个答案:

答案 0 :(得分:1)

请参阅wordpress论坛上的this discussion,了解原因,原因为何以及可用的解决方法。

这对我有用:


// Include this in functions.php or the theme
if( !is_admin()){
    wp_deregister_script('jquery');
    wp_register_script('jquery', ("http://ajax.googleapis.com/ajax/libs/jquery/1.9.0/jquery.min.js"), false, '1.9.0');
    wp_enqueue_script('jquery');
}

答案 1 :(得分:1)

// only for Themes since WordPress 3.0
function jquery_190() {
    if ( !is_admin() ) { // actually not necessary, because the Hook only get used in the Theme
        wp_deregister_script( 'jquery' ); // unregistered key jQuery
        wp_register_script( 'jquery', 'http://ajax.googleapis.com/ajax/libs/jquery/1.9.0/jquery.min.js', false, '1.9.0'); // register key jQuery with URL of Google CDN
        wp_enqueue_script( 'jquery' ); // include jQuery
    }
}
add_action( 'after_setup_theme', 'jquery_190' ); // Theme active, include function

MORE INFO

相关问题