オリジナルショートコード作成

概要説明

プラグインを使って管理することが多いですがfunctions.phpに記述を加えることでショートコードを追加することが可能です。PHPからもショートコードは利用可能です。広告用のコード、ウィジェット、何回も使う記述はショートコード管理がおすすめです。

function my_short_code_name() {
    // 処理内容をこちらに記述
}
add_shortcode('任意のショートコード名', 'my_short_code_name');
[任意のショートコード名]

使用時は上記の書式で使用します

例 ) Google AdSense呼び出し用ショートコード

functions.php
/*----------------------------------------------------
 ショートコード : アドセンス表示
----------------------------------------------------*/
function my_short_code_adsense() {
    $code = <<< EOF
<script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=xxx" crossorigin="anonymous"></script>
<ins class="adsbygoogle"
     style="display:block; text-align:center;"
     data-ad-layout="in-article"
     data-ad-format="fluid"
     data-ad-client="xxx"
     data-ad-slot="xxx"></ins>
<script>
     (adsbygoogle = window.adsbygoogle || []).push({});
</script>
EOF;
    echo $code;
}
add_shortcode('ad', 'my_short_code_adsense');
[ad] で使用可能

 

例 ) 投稿IDを渡してパーマリンクを表示

functions.php
/*----------------------------------------------------
 ショートコード : パーマリンク取得 ( 引数 : id )
----------------------------------------------------*/
function my_short_code_get_permalink($atts) {
    extract( shortcode_atts( array(
        'id' => '',
    ), $atts ) );
    return get_permalink( $atts['id'] );
}
add_shortcode('link', 'my_short_code_get_permalink');
[link id=投稿ID] で使用可能

// 結果 ) https://functions.fs-create.net/archives/92

例 ) パーマリンクを使用したaタグの取得

functions.php
/*----------------------------------------------------
 ショートコード : タイトルリンクタグ取得 ( 引数 : id )
----------------------------------------------------*/
function my_short_code_get_post_link( $atts ) {
    extract( shortcode_atts( array(
        'id' => '',
    ), $atts ) );
    return '<a href="'.get_permalink( $atts['id'] ).'">'.get_the_title( $atts['id'] ) . '</a>';
}
add_shortcode('linka', 'my_short_code_get_post_link');
[linka id=投稿ID] で使用可能

// 結果 )

オリジナルショートコードを作成

PHPからショートコードを使用する場合

<?php echo do_shortcode('[ad]'); ?>
<?php echo do_shortcode('[link id="投稿ID"]'); ?>

WordPress Developer Resources

関連機能

  1. WordPress お問合せフォームの郵便番号に入力したら住所を自動で入力する機能を追加 ( Contact Form 7 )

  2. 指定タグの何回目といった処理を行いたい場合

  3. 表示前にフックして出力テキストを置換する

サイドバー

よく使うカスタマイズ

最近の記事

アニメの名言集

いかに鞘から抜かずにおくか
そのために我々は死にものぐるいで
剣を振っとるのだ

バガボンド
by 柳生石舟斎

Profile

PAGE TOP
Amazon プライム対象