ショートコードから関数への値の渡し方。extract(shortcode_atts(array(‘a’ => ‘Apple’,’bbb’ => ‘Orange’,), $atts));
function sample_callback($atts) {
extract(shortcode_atts(array(
'aaa' => 'Apple',
'bbb' => 'Orange',
), $atts));
$output = '<p>'. $aaa . ', ' . $bbb . '!</p>';
return $output;
}
add_shortcode('sample', 'sample_callback');
- array(‘aaa’ => ‘Apple’,’bbb’ => ‘Orange’,)
- 変数 aaa, bbb を初期値 ’aaa’ => ‘Apple’、 ’bbb’ => ‘Orange’ として定義
- shortcode_atts($def, $atts)
- $def: ショートコードで使用するデフォルト値を指定した連想配列
- $atts: 関数に渡すユーザーからの配列
- extract(array
&$array
)$array
内の変数を関数内の変数に変換する。(関数内で使える様にする)
ショートコードからの値の引き渡し、
- [sample]
- 引数が省略されたので、デフォルトの ‘aaa’ => ‘Apple’ ’bbb’ => ‘Orange’
- [sample aaa=”Banana”]
- ‘aaa’ => ‘Banana’ ’bbb’ => ‘Orange’
- [sample aaa=”Banana” bbb=”Grape”]
- ‘aaa’ => ‘Banana’ ’bbb’ => ‘Grape’