[雑記]WordPressのショートコードって閉じなくていいのかな?

WordPress
この記事は約5分で読めます。

そういえば、ショートコードには「閉じ」があると思いますが、書かなくても大丈夫?

ショートコードの「閉じ」、要る?要らない?

リンクをはてなブログカード形式に表示する「popo-HatenaBlogcards」を作ってみたわけですが、そういえばこのショートコード、「閉じ」を意識していません。

「閉じないとダメかな、ドキドキΣ(゚ロ゚)o゙」

 

試しに、閉じるショートコードを書いてみたりしてテストしてみます。

 

以下、けっこう雑に書いているので、興味のある方だけどうぞ(^-^;

パターン1:ショートコードを「閉じない」

ショートコード blogcard だけ記述して、/blogcard は記述しません。さらに直後に文字列「てってけてー(^-^)o」を記述してみした。

[blogcard url="https://popozure.info/20150719/7710"]てってけてー(^-^)o

てってけてー(^-^)o

→ 想定どおり大丈夫です。ショートコード直後の文字列も普通に表示されています。(もしかしたら、「閉じ」が無い、行儀の悪い状態なのかな?Σ(゚ロ゚)o゙)

パターン2:ショートコードを「閉じる」

ショートコード blogcard に対して、/blogcard も記述します。間に文字列「てってけてー(^-^)o」を記述してみました。

[blogcard url="https://popozure.info/20150718/7695"]てってけてー(^-^)o[/blogcard]

→ ショートコードに挟まれた文字列は表示されませんでした。「閉じ」を書くと、自動で処理をしてくれるようです。

パターン3:「閉じる」「閉じない」混在

ショートコードを4回記述しますが、3回目だけ閉じてみました。

[blogcard url="https://popozure.info/20150711/7607"]てけ1(^-^)o
[blogcard url="https://popozure.info/20150618/7529"]てけ2(^-^)o
[blogcard url="https://popozure.info/20150605/7412"]てけ3(^-^)o[/blogcard]てけ4(^-^)o
[blogcard url="https://popozure.info/20150606/7417"]てけ5(^-^)o

てけ4(^-^)o

→ 「閉じ」があるので、最初に出現した

までが「ショートコードに囲まれた文字列」として扱われたようです。

てけ4(^-^)o
てけ4(^-^)o
までが組み合わせになっているようです。

結果:閉じなくてOKっぽい(^-^)o

「WordPress Codex日本語版」の「ショートコード」を見ても、特に「閉じ」が必要とかは書いていません。

公式で提供されているショートコードも「閉じていない」ものが多くあります。

 

ショートコードに囲まれた内容については、第二引数に格納されているようです。

そういえば、初めてお試しで作ってみたショートコードのソースには、第二引数で $content を取得してたりしました(^-^;

「popo-HatenaBlogcards」は第二引数を取得すらしていないのは行儀が悪いのだろうか?(^-^;

多分、パラメータも必要なければ第一引数も書かなくて大丈夫なはず…。

 

結果としては「閉じなくてOK」という感じですが、むしろ、ちゃんと閉じて囲むタイプのものを作ったつもりのとき、「閉じ」が無くても普通に呼び出してくれちゃうので、注意が必要かも知れません。

コメント

タイトルとURLをコピーしました