「javascript」コード内で「$」という記号(変数)に「jQuery」の機能(物体)を詰め込んでいる。それによって「$」で書き始めると「jQuery」の機能を使用可能となる。その記号「$」には元々特別な意味はなく、単にjQueryの機能を詰め込まれているというだけなのです。ここで問題が起こります。「$」に他のライブラリも詰め込まれることがあるこれは大変です。ただの記号「$」に他のライブラリが詰め込まれることもあるのです。有名なところでは本文でも何度か出てきている「prototype.js」です。それによって「$」を使ってjQueryを呼び出しているつもりでもprototype.jsが呼び出されてしまうことがあるのです。javascript(に限りませんがスクリプト言語一般)は一度エラーが発生するとそこで処理を中断する場合と続行する場合があります。中断された場合には以降のコードが動作しないため、百鬼夜行のエラーが発生します。この記号の衝突を横文字で「コンフリクト」といいます。ここで天下のWordPressは考えました。全てのライブラリが分け隔てなく暮らせるよう、滞りなく運用されるためには...そう出来ることは一つ、混乱の元である「$」を封印したのです。事情をよく知らない我々はつい「$」から書き出しをしてしまい、ページ表示に支障をきたしスライダーが突然動かなくなるのです。あっちを直せばこっちが動かぬ状態で茫然自失。結果プラグインコード一つ一つにjQueryライブラリをあてがってみるのです。※何故それで「$」が動作する(ことがある)のかは後述WordPressでは、実行されるjavascriptのコード全体における名前空間・グローバルスコープにおいて「$」を各ライブラリが取り合わないよう調整しています。グローバルスコープは「<script>」タグをまたいでも有効です(これ重要)。見た目的に独立してそうで実は裏で繋がっているのです。//記号$1をアラート出力。hoge!が出力される。//記号$2をアラート出力。hoge!は出力されない。ローカルで定義したから</script>「$(function(){」で書き始めるということは、グローバル空間で「$」に「jQuery」が詰め込まれていることを期待しています。WordPressが「wp_head()」で出力するjQueryでは「$」に何もセットさせないため、動作しません。jQueryライブラリをコード手前で直接読み込むと「$(function()」は動作します。ライブラリコード内でグローバル空間の「$」に「jQuery」をセットするためです。これはWordPressの意図するjavascriptコード空間のルール(「$」の扱い・衝突回避)に反します。ティッシュがないから手で鼻水をかむのと一緒でやむを得ない事情がない限りはやめたほうがいいのです。「$」ではなく「jQuery」で呼び出す「$」がないとjQueryが呼び出せないじゃないか!いいえ、実は「jQuery」という記号に「jQuery」の機能が詰め込まれているという事実。「$」ではなく「jQuery」。