ショートコード #1

 
オヤビン

20150805-1

WordPress は記事中に直接 PHP のプログラムを埋め込む事ができません。

PHP のプログラムが書けるとやれる事が飛躍的に上がりますが、記事中に直接書いても上手くいきません。そりゃそうですね。記事は HTML の書式に従うのですから。

そこで便利なのが WordPress に用意されているショートコード。その仕組みを使う事で、記事に PHP の実行結果を埋め込む事ができます。

functions.php

20150805-2

自作の PHP コードを書く場所は 外観 → テーマの編集 にある functions.php です。
そのファイルへショートコードの宣言と実現部を書く事でプログラムが簡単に呼び出せる様になります。

書き方は以下のとおり。

1
2
3
4
5
6
/* Delphi流に言うとショートコードの宣言 */
add_shortcode('ads', 'ads_fnuc');
/* Delphi流に言うとショートコードの実現部 */
function ads_fnuc() {
    return '<a href="http://www.amazon.co.jp/" target="_blank">アマゾン</a>';
}

上記のショートコードは記事中に [ads] と書くだけで呼び出され、記事中にアマゾンへのリンクが転記されます。
使い方は 「お買い物なら [ads] で!」 の様に書く感じ。
すると  「お買い物なら アマゾン で!」 と表示されます。

この程度なら記事に直接書いてもいいのでありがたみは感じませんね。しかし、アマゾンを止めて楽天に変えようと思ったとき等、過去の記事を修正するのが大変です。ショートコードにする事によっていつでも文字列が変更でき、過去の記事にも反映されるので、ショートコードが生きてくるわけです。

極簡単な例を出したのでショートコードの凄さにはピンと来ないかもしれませんが、とても複雑なプログラムを書く事もできるので、究極のカスタマイズが可能になります。

当サイトでもあっちこっちに自作のショートコード(PHPプログラム)を使っていますが、表には出て来ないのでどこで使われているか分かりませんよね(笑)

それにしても WP は素晴らしい。こんな仕掛けまで用意してくれ、至れり尽くせりです。



  1. ask-evo

    むむ、このくらいなら自分でもちょっとしたの書けそうですねw
    問題は何に使うかw

    ポチ

    1. delphian

      見た目で何となく分かるコードですよね。
      難しく感じない程度のものから始めると覚えるのも苦にならないと思います。
      ポチ(笑)

  2. reota

    一時期は毎日wordpressと睨めっこしていた気がしますが、最近は平和な日々を送っています。
    おかげで半分くらい忘れている気がします・・・。

    1. delphian

      時々触らないと分からなくなりますよ~(笑)
      特に言語はしばらく書かないと あれれ? となります。

  3. bluem

    おはようございます(^^
    これはteltelさんも、作業が随分と楽になるでしょうね♪
    私も良い勉強させて貰いましたです。
    reotaさんと同じく、ここの所はスマホ弄りに精を出しておりまして、WPは記事をUPするだけの状態になっておりました(笑)
    もちょっと体裁をいじりたい所とか、そのままになってるので気が向いたら追々やっていきます(^^

    1. delphian

      記事中やウィジェットエリアに独自の何かを置きたい場合はショートコードが便利です。
      アイディア次第で何でもできるので、勉強してみて下さいな。

  4. jerry

    おはようございます
    さすがWP!
    無料なのに気が利いてますね。
    askさんも書いてますが使い道があれば便利そうですよね(^_^)
    ポチッ!

    1. delphian

      WPは凄いですね。このような仕掛けもちゃんと用意してくれているし。
      コードはそのままに return = ”; とすれば何も出力しないので、リンク表示が不要になった時にも楽に修正できますよ。

  5. teltel

    本当にお世話になりっぱなしで・・・
    感謝感謝です。

    ポチッ!

    1. delphian

      うははw [bm] で楽になったっしょ~(笑)
      ポチ、┏O)) アザ━━━━━━━ス!

  6. iMovie

    こんにちは
    ショートコードは、プラグイン入れて使ってます。
    記事修正を考えると、functions.phpに置くのが良さそうですね。
    最近は、WPを弄っていないなぁ~
    見直してみようと、思います。

    1. delphian

      ショートコードは簡単に実装できるので、プラグインは使わなくてもいいんじゃないですかね。プラグインに eval関数が使われているとかなり危険なので、そのプラグインをチェックしてみて下さいな。