ホームページ > 記事 > ウェブフロントエンド > WordPress が CDN_javascript スキルを使用した後、ブログ投稿にコメントできないエラーを解決する
comments-ajax.js が CDN によってキャッシュされた後、多くの人が (ajax を使用して) 返信できないという問題に遭遇します。この点に関して、私の以前のアプローチは、cdn がこのファイルをキャッシュすることを禁止し、そのままにしておくというものでした。
元の解決策は、comments-ajax.js の最後にある次のとおりです。
var i = 0, got = -1, len = document.getElementsByTagName('script').length; while ( i <= len && got == -1){ var js_url = document.getElementsByTagName('script')[i].src, got = js_url.indexOf('comments-ajax.js'); i++ ; }
追加:
js_url = js_url.replace('CDN地址','你的域名');
これで問題は解決します。
例:
js_url = js_url.replace('jb51.b0.upaiyun.com','jb51.net');
この目的のために、いくつかの便利な変更を加え、「}」の後に
を追加しました。var dm = js_url.match(/http:\/\/([^\/]+)\//i); js_url = js_url.replace(dm[1],'你的域名');
これで、cdn ドメイン名を確認して入力する手順が 1 つ減り、独自のドメイン名を入力するだけで済みます。例は出しません。
もちろん、最後にキャッシュを更新することを忘れないでください。 cdn
の comments-ajax.js ファイルを更新します。WordPress が 3.6 にアップグレードされた後、jQuery はバージョン 1.10.2 を使用し、古い jQuery コードとの互換性を保つために jQuery Migrate が使用されました。ということで、もう一つお願いです。
この jQuery Migrate は、jQuery 1.9 以降で削除または廃止された API を検出して復元するために使用できますが、呼び出しが少しだけ増えています。これは私たちへの思い出でしょうか。新しい jQuery 関数の機能をできるだけ早く使用したいですか? !