WP ショートコードを作成する

funnctions.phpに記述していきます。

管理画面の固定ページや投稿ページからテーマフォルダ内の画像パスをショートコードで記述する

※注意点:クラシックエディターにするか(プラグイン:Classic Editor(表示オプションでスラッグを表示する))カスタムHTMLで入力

/**
 * 管理画面からテーマ内の画像パスのショートコード[theme_img]
 * 記事から挿入例:<img src="[theme_img]/assets/img/test.png" alt="" />
 */
function shortcode_theme_img() {
    return get_template_directory_uri();
}
add_shortcode( 'theme_img', 'shortcode_theme_img' );

定型句を表示する場合

/**
 * 簡単な定型句ショートコード
 */
function shortcode_test() {
    return "「ショートコードのテストです」";
}
add_shortcode( 'test', 'shortcode_test' );/**

使う時は投稿画面から[test]と記述します。

リンクを含む場合

/**
 * リンクを含むショートコード
 */
function shortcode_twitter() {
    return 'こんにちは!ナカシマ(<a href="https://twitter.com/kanakogi" target="_blank">@kanakogi</a>)です。';
}
add_shortcode('twitter', 'shortcode_twitter');

状況に応じて変化するショートコード

/**
 * 状況に応じて変化するショートコード
 */
 function shortcode_apple($atts) {
     $atts = shortcode_atts(
         array( 'num' => 5 ), //numの初期値を設定
         $atts,
         'apple', //ショートコード名を指定(オプション)
     );
     return "リンゴが" . $atts['num'] . "個ありました。";
 }
 add_shortcode('apple', 'shortcode_apple');

使う時は[apple num='100']と記述すると、「リンゴがり100個ありました」となります。

[apple]だけだとデフォルトの設定値5が入り、「リンゴが5個ありました」になります。

HTMLを共通化するショートコード

/**
 * HTMLを共通化するためのショートコード
 */
function shortcode_price( $atts, $content = null ) {
    return '<div class="wrap"><em>価格</em>:' . $content . '</div>';
}
add_shortcode( 'price', 'shortcode_price' );

使う時は[price]1200円[/price]とします。

テンプレートファイルで