FAQ

Just another 仙台入門new weblog

­

ショートコードとは

2009年 5月 26日 admin

WordPress 2.5で新しく追加されたショートコード API機能は、コンテンツ記事投稿に用いるマクロコードの作成する機能を備えています。ショートコードの単純な例は次のとおりです。

ショートコードと呼ばれるものは、phpを使ったコードスニペットと思えばいい。
以下のように、BBコードに似ている。

[関数名 第二引数以下]第一引数[/関数名]
 
または、
[関数名 /]
 
または
[関数名 引数]

このように、開始タグ 終了タグがhtmlの< >と置き換わった記述構造になっていてる。

さて、スニペット関数ですが、

function caption_shortcode( $atts, $content = null ) {
    extract( shortcode_atts( array(
       'class' => 'caption',
       ), $atts ) );
 
    return '<span class="' . attribtue_escape($caption) . '">' . $content . '</span>';
}

extractは、連想配列を、キー名変数に割り当てます。従って、$_GETなどの処理をする場合、サニタイズ漏れが発生する事などから、信用の出来ないモノには使わないようにしようという声もあります。

wp_htmlspecialcharsは、配列内で再帰的に動作する様子。

compactとセットで吉。

等のような記述を、codexで示しています。

注意点と思われること

[my-shortcode 123] は $atts= array( 0=> 123 ) を生成します。
等のような記述を、codexで示しています。

参考URL

.
© FAQ Entries (RSS) and Comments (RSS)