概要
WordPressの固定ページでphp処理をしたくて作ったコードです。
目次リンクの自動生成のページでタグを生成するのに使っています。
今ならjavascriptでも同じ機能作れそうですが、このときはなんかphpファイル読み込みたかったんでしょう…。
コード
テーマのfunction.php内に下記を記述します。
同じ階層の「load_file_short_code_target」に同名ファイルがあったらrequire_onceで読み込む、なければ何もしないよというショートコードです。
// phpファイルをロードする
function load_file_short_code($atts) {
extract(shortcode_atts(array(
'file' => null,
), $atts));
$file_path = __DIR__.'/load_file_short_code_target/'.$file;
if(file_exists( $file_path )){
require_once ( $file_path );
}else{
// ファイルがなければ何もしない
}
}
add_shortcode('load', 'load_file_short_code');
使い方
1.上のコードを書いたfunction.phpのあるフォルダと同じ場所に「load_file_short_code_target」というフォルダを作ります。
2.この「load_file_short_code_target」の中に読み込みたいphpファイルをコピーします「hoge.php」
3.phpを読み込みたい、固定ページや投稿ページに下記のようにショートコードを書くと「load_file_short_code_target」フォルダの下の「hoge.php」が読み込まれます。
[[load file=hoge.php]]
注意としては、本文より先にショートコードが読み込まれてしまうので、記事の途中とかでは使えないぐらいですかね…。
おわり。
