固定ページでphpを使いたい

ワードプレス

2019-08-10

固定ページ・投稿ページにphpを配置できる!

例えば、お知らせの新着一覧を固定ページ上で好きな位置に配置したいな、と考えたことはありませんか?
プラグインもあるけれど、あまりプラグインが増えてもメンテナンスとか不具合とか面倒だし。

そんなときにうれしい方法がありました!なんとfunctions.phpに下記のコードを記述すれば、ショートコードの追加でphpを呼び出すことができるんです。直接php言語が使えない固定ページや投稿ページを気軽に動的なページにすることが可能です。

functions.phpを編集するときは、WordPress上で編集せずに、FTPでアップした方が安心です。
記述ミスがあった場合、画面が真っ白になってしまうことがあります💦  自信のないときはすぐに修正できるようにローカルで編集してFTPでアップするのが絶対おすすめですよ。

functions.phpに追加

function Include_my_php($params = array()) {
    extract(shortcode_atts(array(
        'file' => 'default'
    ), $params));
    ob_start();
    include(get_theme_root() . '/' . get_template() . "/$file.php");
    return ob_get_clean();
}
 
add_shortcode('myphp', 'Include_my_php');
}

 

固定ページに追加

aaaaa.phpを読み込みたい場合、固定ページに下のショートコードをテキストエディターで配置します。

[myphp file=aaaaa]

aaaaa.phpはサーバーのthemesフォルダにアップしておきます。
(…/wp-content/themes/使用しているテーマ/aaaaa.php)

 

埋め込みたいphpが表示されましたか?
アップロード先の指定を間違えていたり、ショートコードに「.php」を入れてしまうと「ファイルがないですよ」というエラー表示がでてきます。
私は呼び込みたいphpを作って満足して、アップロードし忘れてることもしばしば。

子テーマで固定ページにphpを呼び出すには?

多分、子テーマで使う方が多いですよね。子テーマを使用している場合は上の6行目を下記のように置き換えます。

include(get_theme_root() . '/' . get_template() . "/$file.php");
↓
include(STYLESHEETPATH . "/$file.php");

 

-ワードプレス

関連記事

WordPressのお引っ越し。アイキャッチ画像の移行も大丈夫?

プラグインを使ってWordPressを移行する WordPressの移行で今よく使っているのが、アイキャッチ画像もちゃんと移してくれる「Attachment Importer」です。(「WordPre …

よく使うWordPressテンプレートタグ

URLを出力するWordPressのテンプレートタグ phpファイルにテンプレートタグを使用することで、自動でURLを取得して表示してくれます。これでサイトURLが変わってもコードの修正をしなくても大 …

カテゴリーなどの一覧ページに並び順を変更できるボタンをつけたい

投稿記事一覧をソートするボタンを作りたい! よくネットショップで見かける、値段の安い順、高い順、人気順など見たい順番を選べるボタン。 WordPressのカテゴリー一覧ページなどに設置できれば、ユーザ …

カスタム投稿プラグイン「Custom Post Type UI」のお引っ越し

カスタム投稿の移行 「Custom Post Type UI」は、簡単にカスタム分類を設定して独自の投稿タイプを作れるプラグインです。function.phpに記述せずにカスタム投稿を作成できるのは初 …

MW WP Formが動かない!確認画面にいかない!原因は?

入力画面でループして確認画面やエラーの表示に遷移しない、せっかく入力したのに確認画面を押すと、リロードされて消えてしまい、先に進まない…。なかなか解決せずはまってしまったMW WP Form。試してみた内容をご紹介しています。