WordPress

はじめてショートコードを使ってみる:【46日目】WordPress1日1プラグイン

更新日:

ようこそのお運びで、厚く御礼申し上げます。
46日目です。今回は「ショートコード」を使ってみようと思います。

ショートコードを書いて、設定した文字列を取得してみる。

ショートコードを使って設定した文字列を取得し、記事にショートコードを記入しその値を表示します。

  1. function.phpやプラグインファイルにショートコード用の関数を作成
  2. add_shortcodeをかいて、呼び出すショートコード名と1の関数を設定する
  3. 記事内やテンプレートファイルにショートコードを書いて呼び出す

まずは、ショートコードとは何か?

WordPressを使っているとショートコードという言葉を良く聞きます。
※わかる人には「関数」みたいなものといえばわかりますが。

ショートコードとは簡単いうと「ひらけごま」といった「合い言葉みたいなものです。
※つまり「合い言葉」をいうと、「何か」を取得できます。

例1(あくまでもイメージです)
「ひらけごま」
→ 扉が開き「金貨」を取得

合い言葉をいうと、扉が開き「金貨」が取得できました。
また、ただ取得するだけではありません。

例2(こっちもあくまでもイメージ)
「ねこ」と「ぶた」を持って「ひらけごま」
→ 扉が開き「金貨」「小判」「真珠」を取得

結果が変わってきましたね。
扉の中でぶた→真珠に、ねこ→小判に変化しました。

といったようにショートコードには「値(引数)」を持たせ、結果をかえることもできます。

実際には以前書いた記事にこのような例がありますので、こちらを参照してください。
[WordPress]特定のタグのタイトルリストを表示するショートコードを実装してみる

文字列を出力するショートコードを作成してみる

今回のショートコード名は「jugem」です。
まずは、文字列を表示する部分にショートコードを記入します。

※a.記事内固定ページ内に記入する場合は、[jugem]と記入します

140306-0005

※b.single.phppage.php,header.phpなどのテンプレートファイルに記入する場合は、以下のようにと記入します

<?php
echo do_shortcode('[jugem]');
 ?>

保存をすると、実際のページには以下のように表示されます。
140306-0007

まずは、function.phpに書いてみます。

今回は、簡単にfunction.phpに以下のコードを書きました。

function paka3ShortCodeFirst() {
    $str =<<<EOS
      じゅげむ じゅげむ ごこうのすりきれ かいじゃりすいぎょの すいぎょうまつ うんらいまつ ふうらいまつ くうねるところにすむところ やぶらこうじのぶらこうじ ぱいぽ ぱいぽ ぱいぽのしゅーりんがん しゅーりんがんのぐーりんだい ぐーりんだいのぽんぽこぴーの ぽんぽこなーの ちょうきゅうめいのちょうすけ
EOS;
    return $str;
}
add_shortcode('jugem', 'paka3ShortCodeFirst');

ポイントはどこ?

今回は例1で述べたように、[jugem]とかいたら「じゅげむじゅげむ・・・」と値が表示されるコードです。

  • ショートコード用の関数を作成

    function paka3ShortCodeFirst() {
        $str =<<<EOS
            (表示したい文字列や画像、htmlタグなど)
    EOS;
        return $str;
    }
  • add_shortcodeをつかって、呼び出すショートコード名と1の関数を設定する。
    add_shortcode('ショートコード名','呼び出す関数');

    add_shortcode('jugem', 'paka3ShortCodeFirst');

    WordPress Codex 日本語版:add_shortcode

  • あとは、上記に書いた通り、表示したい部分に記事本文内にショートコードを記入します。
    (記事本文内)
    [ショートコード名]
    

    またテンプレートでもdo_shortcodeをつかって、ショートコードを記入することができます

    <?php
    echo do_shortcode('[ショートコード名]');
     ?>
    

    WordPress Codex 日本語版:do_shortcode
    the_contentのフィルターとして使われてる、この命令はまだなにかできそうですね。function.phpでもつかえそう。

コードをプラグイン用のファイルにします

それではfunction.phpに書いたコードを消して、
*******.php」というファイルを作成し、以下のコードを記入します。

このファイルを[wp-content]>「plugins」ディレクトリに入れ、管理画面で有効にして完了です。

今回のまとめ

私は「はじめて」ではないですがw、今回の1日1プラグインではじめてショートコードを扱ってみました。使い始めると便利なんですが、私の中で「ショートコード」を覚えておくことができなかったり・・・。この記事を書いていきながら、そこら辺の問題も解決できるプラグインが作成できたらいいなー。

-WordPress
-, , ,

Copyright© アルパカ@ラボ , 2024 All Rights Reserved Powered by AFFINGER5.