ショートコードの入れ子

ショートコードの入れ子構造(囲み型のショートコードの中に自己完結型ショートコードを入れる)の簡単な実装方法を探してて、こんな記事発見。

WordPressではショートコード(shortcode)といって”[]”を使ってロジックを呼び出すことができます。多くの表示系のプラグインはPHPで記述する方法とショートコードで記事内に埋め込む方法の2通りを提供しています。
via WordPress ショートコードの中にショートコードを書く方法 | みる米技術部

いやー、助かった。

今回は記事の一部をパスワードで保護するExclusive Content Password Protectと、
Photo Galleryのショートコードを入れ子構造にしたかったんだけど、
パスワード保護のショートコードの中にギャラリーのショートコードを入れると、
ギャラリーのコードがそのまま表示されるんで頭抱えてたですよ、、、

(コードの例は時間があるときに書きます)

問題は、プラグインのphpファイルをいじるから、
囲み型の方が更新かかった時に消えちゃう可能性があることかな・・・
まあ、Exclusive Content Password Protectは・・・(ごにょごにょ)だし、
WordPressの管理画面で編集可能な個所だから、更新したときに忘れずに管理画面から

$content = do_shortcode( shortcode_unautop( $content ) );

を追記すればいいだけだけどね。
WordPressのコアファイルいじる事に比べれば、はるかにハードルは低いカスタマイズではある。

他に囲み型ショートコード使ってたかわすれたけど、
見つけたら必ず追記しとこーっと。