投稿ページや固定ページに直接phpコードが書けるプラグイン「Exec-PHP」は、セキュリティ面に問題があるようなので使わない方が良い。しかし、phpコードを投稿ページや固定ページに書きたい時が出てくるので、外部のphpファイルをインクルードする方法があったので書いたコードのメモ書きです。
[adsense]
投稿ページや固定ページ内にPHPファイルをインクルードするコード
function.phpに下記のコードを追加してショートコードを使って実現する。
[crayon]
/* 記事内にphpファイルをインクルード */
function Include_my_php($params = array()) {
extract(shortcode_atts(array(
‘file’ => ‘default’
), $params));
ob_start();
include(get_theme_root() . ‘/’ . get_template() . “/myphpfiles/$file.php”);
return ob_get_clean();
}
add_shortcode(‘myphp’, ‘Include_my_php’);
[/crayon]
※ phpファイルを格納する専用フォルダ(myphpfiles)内にphpファイルは作成する。
※ フォルダは適用しているテーマフォルダの直下に作成する。
投稿ページ・固定ページに書くショートコード
仮に’test.php‘を読み込む場合は下記の様にショートコードを書く
[crayon]
[myphp file=’test’]
[/crayon]
まとめ
プラグインを自作する程でもない時に便利です。カスタムフィールドを変数で使えるかやってみましたが問題なく動作しました。
WordPressのテーマカスタマイズとかプラグイン作成にオススメの本
コメント