2012-05-04 3 views
0

このプラグインに関してはあまり助けにはならないと思いますが、とにかくここに行きます。W3総キャッシュキャッシュされていないjavacriptsの前にCDN jqueryをロードしていません

他の誰かが以前にこの問題にぶつかったと確信しています。

私はこれらがW3トータルキャッシュの設定ですWP 3.3.2およびW3トータルキャッシュ0.9.2.4

を実行している - http://www.diigo.com/item/image/2no8j/qgct

示すように、私はフックを経由して私のJavaScriptをロードしています:

add_action('wp_enqueue_scripts' , 'woodworks_load_scripts', 11); 

    function woodworks_load_scripts() { 

    global $post, $Post_UI_Tabs; 

    $js_dir = STYLESHEET_DIR . 'js/'; 
    $admin_dir = STYLESHEET_DIR . 'admin/'; 
    $jquery_ui = JQUERY_UI; 


    wp_deregister_script('thickbox'); 
    wp_deregister_script('swfobject'); 
    wp_deregister_script('jquery'); 

    wp_register_script('jquery', 'http://code.jquery.com/jquery-latest.min.js', false, '1.7.2', true); 

    wp_enqueue_script('jquery'); 

    if(woodworks_has_tabbed_content($post)){ 
    wp_enqueue_script('jquery.ui', "{$jquery_ui}", array('jquery'), 1, true); 
    $Post_UI_Tabs->has_tabs = true; 
    } 

    if('award' != get_post_type($post->ID)) { 
    wp_enqueue_script('main', "{$js_dir}main.js", array('jquery'), 1, true); 
    wp_enqueue_script('supersize', "{$js_dir}supersized.3.1.3.min.js", array('jquery'), 1, true); 
    } 

    if('award' == get_post_type($post->ID)){ 
    wp_enqueue_script('jquery.cycle.all', "{$js_dir}jquery.cycle.all.js", array('jquery'), 1, false); 
    } 


    if(is_front_page()){ 
    wp_enqueue_style('home', STYLESHEET_DIR . 'stylesheets/home.css', array(), 1, 'all'); 
    wp_enqueue_script('jquery.cycle.all', "{$js_dir}jquery.cycle.all.js", array('jquery'), 1, true); 
    } 

}

あなたはwoodworks.org(キャッシュされていない)対woodworks.signalsinteractive.com(キャッシュを持っている)を比較し、ソースを見ることができます違い。

キャッシュされたバージョンの後にキャッシュされたjQueryが呼び出されるという問題があります。したがって、jQueryの定義されていないエラーが発生します。

答えて

1

私はこの問題を解決するために、concatenated/minified jsファイルにjqueryを縮小しなければなりませんでした。これは私のやり方です:

  1. 一般設定で、ミニモードを手動に設定します。
  2. [縮小]タブに移動し、[JSファイル管理]の下でjquery URIをファイルURIに追加します(例:http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js)。 「すべてのテンプレート」と「埋め込み」に設定します。

これは私のために修正されましたが、あなたはもはやGoogle CDNed jqueryを使用していません。

関連する問題