【问题标题】:Wordpress: Load only one jquery script on websiteWordpress:在网站上仅加载一个 jquery 脚本
【发布时间】:2012-01-09 10:35:19
【问题描述】:

即将启动一个 WordPress 网站,但注意到它当前正在加载两个 jquery 文件,一个在 wp-includes 中,一个来自我的header.php,有没有办法让 wordpress 加载 wp-include 上的一个前端?做了相当多的搜索,唯一提到这一点似乎包括以下代码,但我找不到任何关于它的文档,有什么想法吗?

<?php wp_enqueue_script("jquery"); ?>

【问题讨论】:

    标签: php jquery wordpress


    【解决方案1】:

    从 WordPress 3.3 开始,这是最好的方法,使用正确的钩子:

    if (!is_admin()) add_action("wp_enqueue_scripts", "my_jquery_enqueue", 11);
    function my_jquery_enqueue() {
        wp_deregister_script('jquery');
        wp_register_script('jquery', "http" . ($_SERVER['SERVER_PORT'] == 443 ? "s" : "") . "://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js", false, null);
        wp_enqueue_script('jquery');
    }
    

    【讨论】:

    • 谢谢,看起来很棒,我认为这会出现在我的主题 functions.php 中是否正确?非常感谢!
    • 没问题。你是对的,这在你的主题function.php中
    【解决方案2】:

    您需要在 header.php 中 &lt;?php wp_head(); ?&gt; 之前包含以下代码

    <?php wp_enqueue_script("jquery"); ?>
    

    您可以从 header.php 中删除其他 jquery 包含

    【讨论】:

    • 谢谢,但是这似乎是最后在 jquery 中加载的,这反过来意味着我的其他脚本没有正确初始化,它们被包含在头部的底部作为“" 有什么想法吗?
    • 在你的脚本包含之前包含这一行
    • 我目前有以下似乎不起作用:&lt;?php wp_enqueue_script("jquery"); ?&gt; &lt;?php wp_head(); ?&gt; &lt;script src="/wp-content/themes/eog/js/jquery.ticker.js"&gt;&lt;/script&gt; &lt;script src="/wp-content/themes/eog/js/jquery.cycle.lite.js"&gt;&lt;/script&gt; &lt;script src="/wp-content/themes/eog/js/scripts.js"&gt;&lt;/script&gt;
    • 你能检查是否包含jquery吗?
    • 它似乎包含在内,但在使用入队脚本时最后加载
    【解决方案3】:

    除了 Aram Mkrtchyan 所说的之外,您还可以使用 wp_enqueue_script() 将脚本加入队列。

    <?php
        wp_enqueue_script('jquery');
        wp_enqueue_script('your_script', "path/to/your/script.js" , array('jquery'));
    ?>
    

    wp_enqueue_script() 的第三个参数告诉 WordPress,your_script 依赖于 jquery,所以只有在 jquery 加载后才加载它。

    【讨论】:

      【解决方案4】:

      实际上,你需要使用admin_init钩子让它在管理部分工作:

      function jquery_for_admin() {
        wp_enqueue_script('jquery');
        return;
      }
      
      add_action('admin_init', 'jquery_for_admin');
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2016-02-02
        • 2021-08-25
        • 1970-01-01
        • 1970-01-01
        • 2015-02-04
        • 2019-07-15
        • 2017-12-19
        • 1970-01-01
        相关资源
        最近更新 更多