ブートストラップ3を使って自作テーマ作成(4)JavaScriptインクルードの設定

今回は、JavaScriptインクルードの設定を行います。ブートストラップ3のサンプル(Offcanvas)ではJavaScriptのコンポーネントを使用していますので、WordPressの機能でJavaScriptをインクルードするとすぐに動作確認出来ます。

※目次をクリックすると目次の下部にコンテンツが表示されます。

テーマ”TwentyFourteen”でのJavaScriptインクルード
WordPressの機能については”TwentyFourteen”のテンプレートファイルを流用していますので、”TwentyFourteen”での設定方法を確認します。
 
header.phpファイルには特にJavaScriptインクルードの設定はされていなく、functions.phpの下記部分で行われいます。

function twentyfourteen_scripts() {
  :
  wp_enqueue_script( 'twentyfourteen-script', get_template_directory_uri()
 . '/js/functions.js', array( 'jquery' ), '20131209', true );
}
add_action( 'wp_enqueue_scripts', 'twentyfourteen_scripts' );

add_actionで’wp_enqueue_scripts’アクションフックにインクルードするJavaScrptの設定を行っています。
 
下記サイトによると’wp_enqueue_scripts’アクションフックは”wp_head”アクションフックに関連付けられているので、wp_head関数によって実行されるようです。
【WordPress TwentyTwelve】header.phpはcssをwp_head();で読み込んでいる|ウェブシュフ
 
header.phpにwp_head();が記述されているので、そこでJavaScriptのインクルードが行われるという事になります。

ブートストラップ3のサンプル(Offcanvas)のJavaScriptをインクルード
ブートストラップ3のサンプル(Offcanvas)のJavaScriptの機能を有効にするには、ブートストラップ3のJavaScriptファイルbootstrap.jsとOffcanvas固有のJavaScriptファイルoffcanvas.j(ブートストラップソース版”examples”フォルダ内の”offcanvas”フォルダ内にある)をインクルードする必要があります。
 
上記functions.php内の”twentyfourteen_scripts()”内に追加すれば動作するのかと思ったのですが、WordPress添付のjQueryと相性が悪いようです。
 WordPress添付のjQueryを使わずにGoogleが配信しているjQueryに変更したらうまく動作するようになりました。
 
※参考にしたサイト
WordPressでjQueryを使う一番シンプルな方法
 
header.phpのwp_head()の上に下記のように記述しています。
 
<?php wp_deregister_script(‘jquery’); ?>
<script type=”text/javascript” src=”//ajax.googleapis.com/ajax/libs/jquery/2.0.3/jquery.min.js”></script>
<script type=”text/javascript” src=”<?php echo get_template_directory_uri(); ?>/bootstrap/js/bootstrap.js”></script>
<script type=”text/javascript” src=”<?php echo get_template_directory_uri(); ?>/js/offcanvas.js”></script>
<?php wp_head(); ?>

 
2014/4/15修正
下記のように修正しました。理由は、プラグインで使用しているJavaScriptがインクルードされない 参照
<?php wp_deregister_script(‘jquery’); ?>
<?php wp_enqueue_script(‘jquery’,’http://ajax.googleapis.com/ajax/libs/jquery/2.0.3/jquery.min.js’); ?>
<?php wp_enqueue_script(‘bootstrap-script’, get_template_directory_uri() . ‘/bootstrap/js/bootstrap.js’, array(‘jquery’)) ?>
<?php wp_enqueue_script(‘offcanvas-script’, get_template_directory_uri() . ‘/js/offcanvas.js’, array(‘jquery’)); ?>

動作確認
画面のサイズを小さくするとナビゲーションメニューが横棒三本のボタンに折りたたまれ、このボタンを押下すると下に展開して隠れていたメニューが表示されます。
 
サイトタイトル部分の右上に”Toggle nav”というボタンが表示され、押下すると左右に表示され、左右の隠れていた部分が表示されるようになります。
 
「ブートストラップ3を使って自作テーマ作成」の目次へ

関連記事の目次
VPSサーバーでスナップショットを取得
~障害に備え、リカバリーポイントを作成。
VPSサーバーにログインして、設定内容を確認
~グローバルIPアドレス確認、SSHキーを作成。
VPSサーバーにSSHでログイン
~Tera Term、SSH、公開鍵認証方式
yumコマンドで最新のパッケージにアップデート
~全パッケージを最新にアップデート
Apacheのインストール
~yumコマンドでApacheインストール、iptablesでファイアウォールの設定
PHPとMySQLをインストール
~yumコマンドでPHP、MySQLインストール
WinSCPを使ってWordPressをアップロード
~WinSCPをクライアントPCにインストール、ファイルアップロード方法
WordPressをインストール
~MySQLでWordPress用データベース作成、wp-config.phpファイルの設定
CentOSのファイアウォール設定
~iptablesを使ってネットワークフィルタリング設定を一から行う
OpenSSHの設定をよりセキュアに
~ログイン制限、ポート変更、認証方式
ApacheでTCPのTraceメソッドを無効にする
~Apacheの設定変更、Telnetで動作確認
ヘッダーにApacheバージョンが表示されないようにする
~Apacheの設定変更、Telnetで動作確認
Apacheでディレクトリ内一覧表示を無効にする
~autoindex_moduleのロードを無効にする
セキュリティを考慮し、MySQLの匿名ユーザーにパスワードを設定、または削除
~MySQLの匿名ユーザーにパスワードを設定、または削除
PHPのバージョンが表示されないようにする
~php.iniの設定変更
WordPressディレクトリのパーミッションをセキュアに
~WordPress用ディレクトリの所有グループ、ユーザー、パーミッション設定
パーマリンク設定時のApache設定
~WordPressパーマリンクの設定、Apache .htaccessの設定
WordPressテーマの選定
~テーマ追加の特徴フィルターの項目、テンプレートキング
WordPressで画像のアップロード、サイズ調整、リンクを設定
~アップロード画像の画像サイズ、サムネイル、画像編集、リンク設定
更新可能なRPMパッケージのリストをメールで送信する
~yumコマンド、Bashスクリプト、Cron
Linuxでディスク使用量が多いディレクトリを調べる方法(1)
~du --max-depth
Linuxでディスク使用量が多いディレクトリを調べる方法(2)
~duコマンド、sortコマンド
WordPressデータベースのバックアップとリストア
~コマンドラインでバックアップ、リストア
WordPressのバージョンアップと旧バージョンへの戻し
~データベースとディレクトリのバックアップ、リストア
BashスクリプトでWordPressデータベースを自動バックアップ
~MySQLデータベースをBash、Cronを使って自動バックアップ、メール通知
BashスクリプトでDos攻撃など大量アクセスのログを検知
~Apacheアクセスログ、Dos、Cron、メール通知
テーマ作成
 
ブートストラップ3を使って自作テーマ作成
~Bootstrap3、自作テーマ作成、TwentyFourteen
Bootstrapのフリーのテーマを使ってデザインを簡単にカスタマイズ
~Bootstrap3のスタイルをカスタマイズ
 
WordPresssショートコード
 
簡単なショートコードを作ってみる
~ショートコードの作り方
ショートコードを使って関連記事のリンクを自動で挿入
~ショートコードの簡単なサンプル
ショートコードを使ってディレクトリ内のファイル名を取得し、投稿内にリンクを挿入
~カスタムフィールド利用、PHPで日本語文字列検索などのコーディング
 
AJAX、AngularJSなどその他応用
 
WordPress投稿内でAngularJSを使用
~AngularJS、Bootstrap、アコーディオン
Bootstrap3で作成したナビゲーションメニューをAngularJSに変更
~AngularJS、Bootstrap、自作テーマheder.php
WordPressでAngularJSを使ったGoogleマップを使えるようにする
~AngularJSを使って投稿内にGoogleマップ

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください