WordpressのAPIに一覧を表示する関数はあるの?
ありません。
ショートコード名がわかっていれば、存在を確認するshortcode_exists関数があります。ショートコード名が知りたいって時には使えませんよね。
ショートコード一覧を表示する方法
ご存知のようにワードプレスはPHPで作られています。日本語マニュアルもWordPress Codex 日本語版でしっかり整備されています。オリジナルのソースコードも見ることができますよね。
4.9.4のワードプレスのショートコードのソースがあります。tags/4.9.4/src/wp-includes/shortcodes.php
別にリンク先は見なくてもいいです。ショートコードを実行する方法の関数(do_shortcode)、ショートコードを追加する(add_shortcode)、ショートコードを削除する(remove_shortcode)などの関数のソースコードがリンク先にあります。
一覧を表示する関数はありませんよね。でもショートコードはどこかに保持されています。それがわかるんです。$shortcode_tagsです。
ここに全部格納されています。
グローバル変数で参照できます。つまり以下のようなカスタム関数やプラグインを作ることでショートコードの一覧を表示することができます。
function ショートコード一覧( $atts ) {
global $shortcode_tags;
$ret="<ol>";
foreach( $shortcode_tags as $name => $obj ){
ob_start();
print_r( $obj );
$content = ob_get_contents();
ob_end_clean();
$ret .= "<li>{$name}:{$content}</li>";
}
return $ret . "</ol>";
}
add_shortcode('list_shortcodes', 'ショートコード一覧');
この関数をfunctions.phpに入れるか、独自のプラグインを作って見てください。
記事や固定ページに[list_shortcodes]と書いて、プレビューボタンでショートコード一覧を見ることができますよ。
- 初期費用0円(2022年8月4日に撤廃)
- 安定したサイト運営が可能(CPU/メモリ リソース保証 6コア/8GB〜)
- 契約中は独自ドメインつき 独自ドメイン永久無料特典があります
- 最大10日間無料で、サーバーのお試し利用ができます
- ディスクキャッシュも高速 NVMe SSDを採用(300GB〜)
- 大量アクセスでも安心 転送量は無制限
【このカテゴリーの最新記事】
-
no image
-
no image
-
no image
-
no image