WPの記事内でphpを使う[ショートコード]
wordpressの記事内でphpを使いたいってことはよくあるのだけれど、プラグイン「Exec-PHP」を使うのはセキュリティー上よくないってことがよく言われていたし、phpを記事内で使用するのはあきらめていました。
ただ、今回どうしても必要な状況でどうしようかと思案していたところ、ショートコードで読み込む方法を発見!
今後も役立ちそうなのでメモ残しておかなければ。
まず、ワードプレスのテーマ内、
fanctions.php内にショートコードの設定を記述
function Include_my_php($params = array()) { extract(shortcode_atts(array( 'file' => 'default' ), $params)); ob_start(); include(get_theme_root() . '/' . get_template() . "/shortcode/$file.php"); return ob_get_clean(); } add_shortcode('onphp', 'Include_my_php');
今回はテーマフォルダーの中にshortcodeというフォルダーを作ってそこに読み込むphpを配置。
shortcode/exeample.php
というファイルを読み込んでくれたら成功!
ちなみに、子テーマで使用する場合は
include(get_theme_root() . '/' . get_template() . "/shortcode/$file.php");
の部分を
include(STYLESHEETPATH . "/shortcode/$file.php");
に置き換えます。
記事内でのショートコードの記述は。
[onphp file='example']
でOK。
これでexample.phpの内容が表示されます。