STINGER8子テーマにヘッダーファイルとフッターファイルを追加する方法 | コピペから応用へ!

STINGER8子テーマにヘッダーファイルとフッターファイルを追加する方法

シェアする

  • このエントリーをはてなブックマークに追加
  • 0

WordPressの無料テーマSTINGER8について気になる記事がを見かけました。

トラッキングコードなどは、HTMLに貼り付けました。注意子テーマに入れないと親子の意味がないのは解っていますが、子テーマにヘッターphpがありません、やり方が良く理解できませんので、本テーマに貼り付けました。

自由人の旅

STINGER8子テーマには「header.php」ファイルが無いとのこと

さっそく、テスト用サイトに入れて確認しました。

本当にSTINGER8の子テーマに「header.php」どころか、「style.css」と「functions.php」しかありません。

なので、アクセス解析などトラッキングコードを入れる場合、親テーマに入れる必要があるようです。ただ、更新が来てアップデートすると追加したトラッキングコードが失われてしまいます

なお、子テーマに「header.php」を作成したして解析コードを入れただけだと表示が崩れて全く使えません。

そこで、調べていくと、ヘッダーファイル追加に2つの方法が使えることが分かりました。フッターファイル追加も同様の方法でできます。

ヘッダーファイルを追加する2つの方法

  1. 親テーマの「header.php」を子テーマにコピーする
  2. 親テーマの「header.php」に追加する形で子テーマに「header-include.php」などのファイルを新しく作成する。

1.については、親テーマをコピペするだけで出来ますが、親テーマに直接アクセス解析コードを書くのと変わりありません。

子テーマのメリットとして親テーマがバージョンアップされた場合は解析コードが消えませんが、親テーマの「header.php」が更新されたときは、子テーマにある「header.php」は古いままなので注意が必要です。

2.の方法は、親テーマのheader.phpに追加する形になるので親テーマを更新しても影響はありませんが、子テーマの「functions.php」を編集するのでソースコードに手を加えるのに抵抗がある人はお勧めしません。

もしSimplicityを使ったことがあるなら、同様のやり方でアクセス解析コードを入れることができますね。

この2つの方法について解説していきます。
STINGER8を使って説明してますが他のバージョンでも同様に行えます。

親テーマのheader.phpを子テーマにコピペする方法

親テーマのheader.phpを子テーマにコピーして持ってくるだけです。

手順は次の通りです。

  1. FTPソフトなどで「STINGER8」の親テーマのディレクトリにアクセス
  2. STINGER8の親テーマの「header.php」ファイルをコピーする
  3. STINGER8の子テーマの「header.php」に貼り付ける
  4. WordPress管理画面から子テーマの「header.php」にトラッキングコード追記する

これで、サイトの表示が乱れることもなく、追記したコードも反映されます。

フッターも「footer.php」の追加も同様の作業で出来ます。

ただ、親テーマのアップデートで、「header.php」が更新された場合は子テーマにある古い「header.php」になるので注意が必要です。

子テーマにheader-include.phpを追加する方法

子テーマの「functions.php」で親テーマと別名の「ヘッダーphp」ファイルを用意して、そこに、アクセス解析コードを追加する方法です。

先ほどと違いファイル名の「header.php」は子テーマに作成しません。新しく「header-include.php」を作成します。

あらかじめ、パソコンで「header-include.php」をファイルを作成しておいてください(中身空でOK)。

  1. FTPソフトなどでSTINGER8の子テーマがあるディリクトリにアクセス
  2. 子テーマのディレクトリに「header-include.php」をアップロード
  3. WordPressで子テーマの「functions.php」を編集
  4. WordPressで子テーマの「header-include.php」にアクセス解析コードを追加

という流れで説明していきます。「header-include」のファイル名は親テーマに無いファイル名なら変えても大丈夫です、その場合はheader-includeを置き換えて読んでください。

functions.phpの編集を間違えるとサイトが表示されなくなります(管理画面も)。なので、作業を始める前にFTPソフトなどでローカルにfunctions.phpのバックアップを取って、元に戻せるようにしてください。

ファイルマネージャーやFTPソフトで子テーマに「header-include.php」をアップロードします。(中身は空で大丈夫です)

なお、子テーマの場所は「/wp-content/themes/stinger8-child/」です。

アップロードするとファイルがファイルが付かされます。

次に、functions.phpに以下のコードを追加して保存します。

function header_php_include()  {
  include('header-include.php');
}
add_action('wp_head', 'header_php_include');

ファイル名を変更した場合は

include('header-include.php');

の「header-include」を変更します。

※保存後にページが表示されなくなったら、FTPソフトなどで元の「functions.php」をアップロードして戻します。

「header-include.php」の編集画面に戻りトラッキングコードを追記して保存します。外部ファイルのjavascriptなども「header-include.php」から読み込むことも可能です。

フッター.phpも同様に「footer-include.php」を作成して、functions.phpに以下のコードを追加します。同様のやり方で出来ます。

function footer_php_include()  {
  include('footer-include.php');
}
add_action('wp_footer', 'footer_php_include');

まとめ

STINGER8子テーマのfunctions.phpでヘッダー.phpを読み込むことで、Simplicityの子テーマにある「header-insert.php」と同様のことができます。

functions.phpを編集する際は、必ずバックアップを取ってから進めてください。

この方法はSTINGER以外に、WordPress標準テーマなどの子テーマを持たないテーマで、子テーマを作成した場合にも使えます。

スポンサーリンク



このブログはレンタルサーバーmixhost
運営してます。

シェアする

  • このエントリーをはてなブックマークに追加

フォローする