rokkonet

PC・Androidソフトウェア・アプリの開発・使い方に関するメモ

WordPressショートコード 処理を記述したPHPファイルを呼び出す定形コード

2020 Feb. 11.


サンプル

function sample($params = array()) {
  extract(shortcode_atts(array(
    'file' => 'default'
  ), $params));
  ob_start();
  include( ABSPATH . '../../dir/my_php' . "/$file.php");
  return ob_get_clean();
}
add_shortcode('DisposeListPhp', 'sample');


理解
$params = array()
 関数引数へのデフォルト値設定

extract()
 連想配列のキーを変数名、値を変数への格納値に変換する

shortcode_atts(array('file' => 'default'), $params)
 連想配列$paramsのキーがfileならば連想配列$paramsを返す。
 キーがfileでなければキーをfile、値をdefaultとする連想配列を返す。

ob_start()
return ob_get_clean()
 ショートコード内にPHPファイルをincludeする時に必要。
 参照 https://blog.s-giken.net/250.html

add_shortcode('SamplePhp', 'sample')
 SamplePhpをタグとしてsampleショートコードを登録する。
 呼び出し元で [sample file='FILE'] と指定する

呼び出し元の[sample file='FILE']で指定したFILEが$fileに入る
(ショートコード内で拡張子を付与しているのでFILEに拡張子は不要)


参考サイト
http://hacca-debug.hateblo.jp/entry/2017/04/26/233000
https://site-support.jp/?p=405