【WordPress】ショートコードの作り方と使い方
MENU
  1. HOME
  2. WordPress / カスタマイズ
  3. 【WordPress】ショートコードの作り方と使い方

最近の作業実績

  • 2024年04月06日非レスポンシブのサイトをレスポンシブ化いたしました。
  • 2024年04月05日テーマファイルが編集できない不具合を解消いたしました。
  • 2024年04月04日WordPress、テーマ、プラグイン、のバージョンアップを担当いたしました。
  • 2024年04月03日不具合で表示されなくなったサイトを表示される状態まで復旧いたしました。
  • 2024年04月02日お問い合わせフォームを再構築いたしました。
  • 2024年04月01日不具合で表示されなくなったサイトを表示される状態まで復旧いたしました。
  • 2024年03月31日サーバー移管に共に表示されなくなったサイトを表示される状態まで復旧いたしました。
  • 2024年03月30日WordPressの操作方法をサポートいたしました。
  • 2024年03月29日サイドバーに人気記事を表示させる仕組みを導入いたしました。
  • 2024年03月28日テキスト等の簡易な修正を行いました。
  • 2024年03月27日アイキャッチが表示されない不具合を修正いたしました。
  • 2024年03月26日WordPressの操作方法をサポートさせていただきました。
  • 2024年03月25日サイト上で発生していたリンクの不具合を解消いたしました。
  • 2024年03月24日不具合で表示されなくなったサイトを表示される状態まで復旧いたしました。
  • 2024年03月23日WordPress、テーマ、プラグイン、のバージョンアップを担当いたしました。
  • 2024年03月22日WordPressにログインできない不具合を解消いたしました。
  • 2024年03月21日既存サイトにセキュリティ対策を導入いたしました。
  • 2024年03月20日メールフォーム周りで発生していた不具合を解消いたしました。
  • 2024年03月19日記事一覧をカテゴリー単位で表示できる様にカスタマイズいたしました。
  • 2024年03月18日WordPress、テーマ、プラグイン、のバージョンアップを担当いたしました。
  • このエリアには直近の制作実績を一部掲載しております。
  • 制作実績はリアルタイム反映ではありません。

【WordPress】ショートコードの作り方と使い方

この投稿は2019/05/05に加筆修正いたしました。

WordPressのショートコードに関して詳しく解説しています。WordPressのショートコードをマスターしたい方は必読のコンテンツです。興味のある方は6分間だけこのコンテンツを読んでみてください。

この記事は約 6 分で読めます。

ショートコードとは

WordPresswでサイトを運営していると、投稿や固定ページで頻繁に使う定型文が出てきたり、投稿や固定ページでPHPの処理を行いたい場面に出くわすことがあるかと思います。

そんな時に便利なのが、WordPressの【ショートコード】です。

定型文をショートコード化しておけば、簡単な記述でどんなに長い定型文でも表示することできます。
PHP処理をショートコード化しておけば、投稿や固定ページでもPHP処理を行うことができます。

これってメチャクチャ便利なんですよね!

WordPresswのサイト運営が浅い方は実感が沸かないかもしれません。
ですが、覚えておいて損はありませんよ!

このページを最後まで読んで頂ければ、ショートコードをマスターすることができます。
興味のある方は読み進めてください。

ショートコードを作成してみよう

具体的なショートコードの作成方法をご紹介します。

最初に少しだけ難しい言い回しの説明を書きますと、ショートコードは【functions.php】に予め関数を作成しておき、【add_shortcode】で関数を呼び出して表示させる仕組みです。

説明だけでは?だと思いますので、具体的にいくつかのショートコードを作成しながら説明していきましょう。

定型文を表示するショートコード

最初に定型文を呼び出すショートコードを作成してみましょう。
以下が定型文を呼び出すショートコードのテンプレートです。

function 関数名() {
return "ここに定型文を記述します。";
}
add_shortcode('ショートコード名', '関数名');

【関数名】と【ショートコード名】は任意の名前(半角英数字)でOKです。
ただし、【関数名】と【ショートコード名】は別の名前にしてください。

今回は以下の様にしてみました。
以下のコードをfunctions.phpに記述してください。

function shortcode_test() {
return "ここに定型文を記述します。";
}
add_shortcode('shortcode_01', 'shortcode_test');

あとは、投稿や固定ページで定型文を表示させたい箇所に以下の様に記述します。

[shortcode_01]

記述するときは、テキストエディタで記述してください。
ビジュアルエディタでは正常に動作しません。

上記のように記述すると、記述した箇所に以下の様に定型文が表示されます。

ここに定型文を記述します。

定型文を表示させるショートコードでした。
基本的なショートコードの書き方も理解できたかと思います。

内部リンクのURLを短くするショートコード

内部リンクのURLを短くするショートコードを作成してみましょう。
内部リンクのURLを絶対パスで記述する場合、いちいち記述するのは面倒です。

そこで、以下のコードをfunctions.phpに記述してやります。

function shortcode_link() {
ob_start();
echo home_url();
$td .= ob_get_clean();
return $td;
}
add_shortcode('home', 'shortcode_link');

あとは内部リンクのURLを以下のように記述すればOKです。

https://takayakondo.com/test/

この様に記述すると、このサイトであれば以下の様に表示されます。

https://takayakondo.com//test/

このショートコードが何をしているのかと言うと、テンプレートタグの【home_url()】でサイトのTOPページのURLを取得して【home】のなかに格納しています。

いちいちURLを記述しなくてもこの様にショートコード化しておけば便利ですね。

テーマフォルダの画像を簡単に呼び出すショートコード

テーマフォルダの画像を呼び出す場合、画像URLが非常に長くなります。

例えば、このサイトでテーマフォルダの【images】というフォルダにある【test.jpg】を呼び出そうとすると、以下が画像URLをなります。

https://takayakondo.com/wp-content/themes/テーマファイル名/images/wpc.jpg

長いです・・・こんなのいちいち記述できません。

そこで、以下のコードをfunctions.phpに記述してやります。

function shortcode_images() {
ob_start();
bloginfo('template_directory');
$td .= ob_get_clean();
return $td;
}
add_shortcode('img', 'shortcode_images');

こうしておけば、以下の様に記述するだけで画像を呼び出すことができます。

https://takayakondo.com/wp-content/themes/official/test.jpg

同じフォルダにある【test2.jpg】を呼び出す場合は、

https://takayakondo.com/wp-content/themes/official/test2.jpg

この様に記述してやるだけでOKです。

このショートコードが何をしているのかと言うと、テンプレートタグの【bloginfo(‘template_directory’)】でテーマファイルのURLを取得して【img】のなかに格納しています。

ショートコード化することで長ったらしい画像パスを記述する必要がなくなりましたね。

ショートコードを投稿や固定ページ以外で使う場合

ショートコードは、投稿や固定ページで使用するものですが、その他の場所でも利用したい場面に出くわすかもしれません。

ここではいくつかのパターンをご紹介します。

テーマファイルで使う場合

テーマファイルでショートコードを使う場合、そのまま記述しても正常に動作しません。

テーマファイルで使う場合は、以下の様に記述しましょう。
ショートコード名は【test】とした場合です。

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

この様に記述してやれば、テーマファイルでショートコードを利用することができます。

ウィジェットで使う場合

ウィジェットでショートコードを使う場合、そのまま記述しても正常に動作しません。

ウィジェットでショートコードを使う場合は、functions.phpに以下のコードを記述します。

add_filter('widget_text', 'do_shortcode' );

このコードを記述しておけば、ウィジェットでもショートコードを利用できるようになります。
ショートコードの書き方は投稿や固定ページと同じです。

[test]

上記のように記述すればOKです。

まとめ

WordPressのショートコードに関してのお話でした。

WordPressでサイトを運営していけば、いずれショートコードは必要になってきます。
この機会にWordPressのショートコードをマスターしてはいかがでしょう!

覚えておけば、サイト運営の幅も広がりますよ!

Wordpressのカスタマイズや不具合など
何かお困りのことはありませんか?

Wordpressに関連するあなたのお悩み、解決いたします。
次のような方は、お気軽にご相談下さい。

  • Wordpressサイトをカスタマイズしたいが、やり方が分からないで困っている。カスタマイズの知識が豊富な人に任せたい。
  • Wordpressサイトに不具合が発生したが、直し方が分からない。不具合の修正経験が豊富な人に任せたい。
  • 既存サイトにWordPressを導入したいが、やり方が複雑で自分ではできそうにもない。経験が豊富な人に任せたい。
  • WordPressがハッキングされたが修正の仕方が分からない。サイトを元通りにできる人を探している。
  • Wordpressで0からサイトを制作したいが、自分ではできそうにもない。プロにサイト制作を委託したい。

一つでも該当する方は、以下のフォームからお気軽にご相談下さい。

WordPressに関して今すぐ相談する

著者:takaya kondo

岡山在住のWordPress専門フリーランサーです。Wordpressを使ったWEBサイト制作を中心に10年間ほど活動させていただいています。

Wordpress関連の記事でお役に立てれば幸いです。

【関連記事】あなたが興味のありそうな関連記事をご紹介します。

    2件のコメント

  • 通りすがり
    2017年10月13日 12:05 PM

    参考になりました!ありがとうございます。
    feedlyのボタンがうまく挙動していないようです。(ちょっと気になりました)

    • 管理人
      2017年11月4日 1:15 AM

      参考になったようでよかったです!

      feedlyボタンの件もありがとうございます。
      正常に動作するよう修正いたしました。

    .

コメントを残す

(必須)

CAPTCHA