WordPressでPHPコードをショートコードで実行できるようにするプラグイン「PHP Code for posts」

公開日: 更新日: バックエンド(管理)
Wordpressプラグインのアイキャッチ




Wordpressでサイト作成していて、何かのリストなどを投稿や固定ページの本文やウィジェットなどへ表示するときに便利なのがPHPコードを直接記述する方法。でも、Wordpress標準の状態ではコードを直接記述して動作させることが推奨されていないため、コードを挿入してもコード自体が表示されるだけになっています。

【PHP Code for posts】は本文やウィジェットへ挿入したPHPコードが動作するようになるとともに、PHPコードをショートコード化してから挿入するようにできるプラグインです。

【PHP Code for posts】プラグインの基本的な機能・できること

直接コードを記述するとPHPの動作にエラーがあったとき、エラー内容が表示されてそれ以降のデータが何も表示されないという事態となりますよね?これでは困ってしまいますから、動作不良時には何もしないショートコードにして挿入することで、こうした事態は避けられると思います。

私の場合はPHPをショートコードにして使うというよりも、投稿の本文などに挿入したPHPプログラムを動作させるために有効化しています。

PHPコードを投稿本文などで動作させるプラグインに「EXEC PHP」というのがあります。以前はこのプラグインを使っていたのですが、最新のPHPバージョンである7ではエラーが起きて有効化できませんが、この【PHP Code for posts】ではPHPバージョン7でも正常に動作しました。

投稿本文などにPHPコードを直接書き、それを動作させるとセキュリティとして危険という記事がたくさんありますが、何が危険でどんなことをされる懸念があるのかが正確に詳しく書かれているものが見つかりませんので、個人的には何となく都市伝説なのか?本当に詳しいハッカーなどでなければ何も起こらないのでは?と思っています。

この記事の内容について
このプラグイン紹介記事は簡易的に動作テストをした上で紹介していますが以下の点にご注意願います
  1. すべての環境で動作するとは限りません
  2. できる限り最新のバージョンの情報を紹介するようにしておりますが、閲覧される時期によってはバージョンが変わり、仕様が大きく変更されている場合があります
  3. 有料版と無料版がある場合、テストは原則無料版のみで実施しています
  4. テスト環境については文末に記載しています
  5. 使用方法で紹介しているショートコードをコピーして使用すると、環境によっては記号などが文字化けすることがあります。コピーしたのに動作しない場合は特に「”」「’」などの記号を入力し直してみてください。

【PHP Code for posts】プラグインの設定画面や表示の日本語化と翻訳

【PHP Code for posts】プラグインは日本語化が可能な言語ファイルが同梱されていますので、翻訳を行えば日本語での使用が可能ですが、設定項目が少ないので特に必要ないと思いますが、必要な方は以下からダウンロードできます。

こちらからダウンロードしてください

【PHP Code for posts】プラグインのインストールと設定

インストールと設定方法

インストールはプラグインの新規追加でプラグイン名で検索してインストールするか、ページ先頭の画像をクリックして表示されるWordpressのプラグイン公式配布ページがダウンロードしてからアップロードインストールします。

インストール方法の詳しい解説は

を参照ください

設定はデフォルト(有効化したままの状態)で問題ないと思いますが、一応項目解説をしておきます。

ダッシュボードにある「PHP Code」から行います。一番上のメニューにある「options」をクリックして設定します。

  1. Remove all options and tables on uninstall
  2. アンインストール時に設定とテーブルを削除するかの選択です

  3. Parse inline plugin shortcode tags inside post content (HTML Editor Only)
  4. 投稿や固定ページの本文で使用できるようにするかの選択です

  5. Parse inline plugin shortcode tags inside sidebar text widgets
  6. サイドバーウィジェットで使用できるようにするかの選択です

  7. Enable Codemirror’s rich editor for code snippets
  8. 「Codemirror’s rich editor」で使えるようにするかの選択です

  9. Extract shortcode params to their own variables *
  10. ショートコードに変数を使用するかどうかの選択です

  11. Use Ajax to save snippets
  12. コードを保存したときに画面を移動しないようにします

  13. Menu Page Postion
  14. メニューの場所の設定です

  15. Change the shortcode for the plugin (not recommended if you already have snippets!)
  16. このプラグインはコードを「PHP」というカスタム投稿タイプへ保存し、ショートコードで呼び出すという作業をします。ここでカスタム投稿タイプ名を変更できすが、変更前に作成したショートコードは動作しなくなります。

【PHP Code for posts】プラグインの基本的な使い方

ダッシュボードにある「PHP Code」から行います。一番上のメニューにある「Snippets」をクリックして、PHPコードを登録していきます。

この画面がコードの登録画面になります

  1. Name your code/コードの名前です
  2. ショートコードでは自動的に生成される[php snippet=〇〇]もしくは[php slug=スラグ名]のいずれかを挿入しますが、その際スラグ名に使われるのがこの名前になります(ベータ版になっていましたが一応動作します)

  3. Code slug/自動生成されるので空欄でOKです
  4. Describe your code/コードの説明です
  5. Write your code/動作させるコードを入力します
  6. リスト表示させるためのhtmlタグなどとともに1つのパーツとしての登録もできます

入力し終わったら「Save Code Snippet」をクリックして登録を完了させます

特にエラーメッセージなどが出なければOKです。

あとは、ページ上部に表示されるショートコードを投稿や固定ページの本文、サイドバーウィジェットなどへ追加するだけです。

変数を使用してパラメーターを使う方法もあるようですがテストはしていません。詳しくは公式サイトをご覧ください(ページトップの画像をクリックすると表示できます)

【PHP Code for posts】プラグインの便利な使い方・カスタマイズ方法など

より便利に使うカスタマイズ技やテストサイトで使用した結果や感想、Wordpressのプラグイン公式配布ページには書かれていない事柄などを紹介します。

紹介しておいておかしな話ですが、記事作成中にこのプラグインは公式サイトから削除されてしまいました。PHP7でも動作するプラグインで有用なものだったので残念です。

とはいえ、さまざまな要件で復活することもよくありますのでこのまま紹介記事は掲載しておきますね。

また、テストサイトでインストールした唯一のプログラムファイルがありましたので、ダウンロードできるようにしておきます。再配布は基本的にダメだと思いますが、PHP7で動作しているWordpressでPHPを本文などで動かすためのプラグインはなかなかありませんのでどうしても必要な方はお使いください。

こちらからダウンロードしてください

※なお、使用に関しては自己責任でお願いします(当サイトでも使っていますが記事作成段階では正常に動作しています)

Wordpressの本

Amazonの人気商品楽天市場の人気商品
CS Shop
たった1日で基本が身に付く! WordPress 超入門【電子書籍】[ 佐々木恵 ]

たった1日で基本が身に付く! WordPress 超入門【電子書籍】[ 佐々木恵 ]

1,944 円 (税込) 送料込
<p>WordPressによるWebサイト作成の基本を一から学べる書籍です。1日8時間の勤務時間内に読むことができる程度に解説内容を絞り込み,初心者・新人が最初の1冊目として読むのにふさわしい内容となっています。本書ではローカル環境にWordPressをインストールしてWebサイト..
サイトの拡張性を飛躍的に高める WordPressプラグイン開発のバイブル【電子書籍】[ 宮内 隆行 ]

サイトの拡張性を飛躍的に高める WordPressプラグイン開発のバイブル【電子書籍】[ 宮内 隆行 ]

3,456 円 (税込) 送料込
<p>プラグインの開発から運用までを網羅</p> <p>※この電子書籍は固定レイアウト型で配信されております。固定レイアウト型は文字だけを拡大することや、文字列のハイライト、検索、辞書の参照、引用などの機能が使用できません。</p> <p>CMSのデファクト・スタン..
楽天ウェブサービスセンター CS Shop

いつでもご相談・サイトカスタマイズの依頼を受け付けています

Wordpressのカスタマイズ、不具合解消のご相談はすべてココナラのダイレクトメッセージからお受けしております。まずはこちらのバナーからお気軽にお問い合わせください。

※一度もココナラを使ったことがない方はココナラへの無料登録が必要です。こちらから登録後、上のリンクをクリックする、またはココナラトップページから「ひまあーと」を検索してお問い合わせください。


【スポンサーリンク】