WordPressでPHPファイルを読み込む(インクルードする)方法
  • WordPressでPHPファイルを読み込む(インクルードする)方法
  • 記事公開:2017/08/13
  • 最終更新:2017/08/17

WordPressでPHPファイルを読み込む(インクルードする)方法

WordPressでPHPファイルを読み込む(インクルードする)方法をご紹介しています。共通するコードを1つのファイルにまとめるときなどに役立つカスタマイズ方法です。興味のある方は、参考にしてください。

この記事は約 7 分で読めます。

WordPressでPHPファイルを読み込む(インクルードする)とは?

WordPressでは、テーマファイルの中で、別のPHPファイルを読み込むことができます。
PHPファイルをインクルードするとも言い方もありますね。

例えば、テーマファイル【page.php】の中で【test.php】を読み込むなど。

このPHPファイルの読み込み(インクルード)に関して解説をしていきます。

どんな時にPHPファイルを読み込む(インクルードする)のか?

どの様な場面で、PHPファイルの読み込む(インクルードする)する機会があるのでしょうか?

機会は色々とあるかと思うのですが、個人的には「共通するコードを1つのPHPファイルにまとめる」というケースが一番多いと感じています。共通のコードを1つのファイルにまとめ、各テンプレートファイルで読み込めば、そのコードを更新する時に1回の更新で済みます。

具体的な使い方としては、アドセンスのコードをPHPファイルに記述して各テンプレートファイルで読み込む使い方などがあります。

あとは、既存のテーマをカスタマイズす時、追記するコードは別のPHPファイルを作成して読み込む使い方も考えられます。こうしておけば、元からあったコードと追記したコードが一目瞭然になるので、後々の作業でコードがゴチャゴチャになるのを防ぐことができます。

この他にも、PHPファイル読み込む機会は色々とあるかと思いますので、覚えておいて損はありません。

WordPressのテーマファイル内でPHPファイルを読み込む(インクルードする)方法

テーマファイルに外部PHPを読み込ませる方法は簡単。
PHPファイルを読み込みたい箇所に、以下のコードを記述するだけです。

<?php include_once("ここにPHPファイルのパスを記述"); ?>

【ここにPHPファイルのパスを記述】部分に、読み込みたいPHPファイルへのパスを記述します。

例えば、【page.php】の中で【test.php】を読み込みたい場合で、【test.php】が【page.php】と同じ階層にある場合は、以下のように記述します。

<?php include_once("test.php"); ?>

このコードを記述するだけで、その部分に読み込んだPHPファイルの内容が表示されるようになります。

上記の例で言えば、【test.php】に「こんにちは!」と記述されていた場合、【page.php】で上記のコードを記述した個所に「こんにちは!」と表示されます。

ただし、この方法はテーマファイルの中だけに限ります。
固定ページや投稿でPHPファイルを読み込む方法は次の項目で解説します。

WordPressの固定ページや投稿でPHPファイルを読み込む(インクルードする)方法

固定ページや投稿でPHPファイルを読み込む(インクルードする)方法をご紹介します。

WordPressの固定ページと投稿では、PHPコードを記述しても正常に動作しません。
なので、先ほどご紹介したコードでは、PHPファイルを読み込むことができないのです。

解決方法としては、プラグインを導入して固定ページと投稿でPHPコードが使えるようにする方法があるのですが、個人的にプラグインの数が増えるのは好みではりません。

そこで今回は、ショートコードを活用してPHPファイルを読み込む方法をご紹介します。

まず、PHPファイルを読み込むためのショートコードを作成しましょう。
functions.phpに以下のコードを追記するだけでOKです。

//ショートコードを使ったphpファイルの呼び出し方法
function my_php_Include($params = array()) {
extract(shortcode_atts(array('file' => 'default'), $params));
ob_start();
include(STYLESHEETPATH . "/$file.php");
return ob_get_clean();
}
add_shortcode('myphp', 'my_php_Include');

[WordPress]ショートコードでPHPテンプレート(ファイル)を呼び出すより抜粋

このコードを追加する事で、ショートコードでPHPファイルを読み込めるようになりました。
あとは、固定ページか投稿でPHPファイルを読み込みたい箇所にショートコードを記述します。

例として【test.php】を読み込むものとします。
その場合は、以下のように記述します。

[myphp file='test']

ショートコードは、ビジュアルエディタに記述しても正常に動作しません。
必ず、テキストエディタに記述してください。

今回は【test.php】を読み込むものとして解説をさせていただきました。
別のPHPファイルを読み込みたい場合、上記ショートコードの【test】を変更してください。

【test】部分に読み込みたいPHPファイルの名前を記述すればOKです。

まとめ

WordPressでPHPファイルを読み込む(インクルードする)方法をご紹介しました。

  • 共通するコードを1つのPHPファイルにまとめる時などに使える方法です。
  • テーマファイル内では、PHPコードでPHPファイルを読み込みます。
  • 固定ページや投稿では、ショートコードを使ってPHPファイルを読み込みます。

今回のコンテンツで不明な部分があれば、お問い合わせからご連絡ください。

この記事が気に入ったら【いいね】しよう!

Wordpressサイトのカスタマイズで
お困りではありませんか?

あなたのWordpressサイトを、ご希望に沿ってカスタマイズいたします。
次に該当する方は、お気軽にご相談下さい。

  • Wordpressサイトをカスタマイズしたいが、やり方が分からないで困っている。カスタマイズの知識が豊富な人に任せたい。
  • Wordpressサイトをカスタマイズしたいが、自分でカスタマイズする暇がない。カスタマイズが得意な人に丸投げしたい。
  • Wordpressサイトをカスタマイズしてみたが、上手くカスタマイズできなかった。カスタマイズ経験が豊富な人に任せたい。
  • Wordpressサイトをカスタマイズしてみたら、バグが発生して困っている。正常に動作するように正しくカスタマイズしてほしい。

一つでも該当する方は、以下のリンクからチェックしてみてください。

詳細を確認する

著者:とあるWEBディレクター

岡山在住のWebディレクターです。Wordpressを使ったWEBサイト制作を中心に7年間ほど活動させていただいています。

Wordpress関連の記事でお役に立てれば幸いです。

【関連記事】あなたが興味のありそうな関連記事をご紹介します。

  • WordPressのカテゴリー一覧で投稿数がゼロのカテゴリーも表示する方法

    2015-05-29

    WordPressサイトのカテゴリー一覧をwp_list_categoriesで表示させると、投稿数がゼロのカテゴリーが表示されません。今回は投稿数がゼロでもカテゴリーを表示させる方法をご紹介します。 記事を読む

  • WordPressのアイキャッチのパスだけを取得するコード

    2015-11-18

    WordPressのアイキャッチのパスだけを取得するコードをご紹介します。アイキャッチ画像のURLだけを取得したい方は参考にしてください。たった1分でアイキャッチの画像パスだけを取得する方法が分かります。 記事を読む

  • WordPressで自動的に記事のQRコードを生成する方法

    2015-02-11

    WordPressで自動的に記事のQRコードを生成する方法をご紹介します。記事を投稿するだけでその記事のQRコードが自動生成されます。コピペだけで実装できますので、気になる方は参考にしてください。 記事を読む

  • WordPressを最新のバージョンにアップデートする方法

    2016-01-13

    WordPressを最新のバージョンにアップデートする方法をご紹介します。WordPressをアップデートする機会は多いです。アップデートしたことが無い方は参考にしてください。2分後にはWordPressを最新のバージョンにアップデートする手順をマスターできます。 記事を読む

  • WordPressの投稿や固定ページにGoogleマップを埋め込む方法

    2016-01-11

    WordPressの投稿や固定ページにGoogleマップを埋め込む方法をご紹介します。ワードプレスの投稿や固定ページにGoogleマップを埋め込見たい方は参考にしてください。3分で埋め込み方をマスターすることが出来ます。 記事を読む

コメントを残す


(必須)

CAPTCHA