WordPressを使っているといろいろなサイトで便利なコードが紹介されていますよね?中には記事の一覧を思うように抽出して表示するコードなどといった本当に便利なものが多数あります。
ちなみに当サイトでもこちらでいくつか紹介させていただいています。
こういうコードはWordPressでは基本的に本文では使えないようになっており、本文内に書いたPHPコードを動作させるためのプラグインが多数紹介されております。
WordPressに限らずphpコードをいつでも書き換えが可能な部分で動作させるのはセキュリティ上問題があるといわれており、PHPのバージョン7からは基本的に非推奨となっており、前述したようなプラグインのほとんどが動作しなくなるようになりました(一部は残っています)。
でもせっかくいいコードなので使いたい・・・そんなときに役立つのがPHPをショートコードにして本文に挿入するという方法。
【Insert PHP Code Snippet】はPHPコードをショートコード化して保存しておき、投稿などの本文にはショートコードを挿入して動作するようにするプラグインです。
似たプラグインが多くリリースされおり、中には本文内のPHPコード記述を許可した上でショートコード化するというものもあります。これだと表向きはPHPコードが直接動作しないようにはなるのですが、本来の意義であるセキュリティの向上にはなりません。
テスト上での話ではありますが、今回紹介する【Insert PHP Code Snippet】は本文内に挿入したPHPコードは動作せずエスケープ(無視)されますから、セキュリティ面ではOKではないかと思います。
【Insert PHP Code Snippet】プラグインの基本的な機能・できること
- PHPコードをショートコード化する
- ショートコードを投稿本文などへ挿入すると動作する
- 直接本文内へPHPコードを書く必要がないためセキュリティー面で安心
本ページを最後に編集したときの環境・バージョンなど
プラグインは製作者によって日々更新されていくため、この紹介記事が最新バージョンのものであるとは限りません。参考までに本記事の最終更新日時点におけるテスト環境、プラグインバージョン、プラグイン導入時の留意点などを記載しておきます。
プラグインを使用(試用)したテスト環境・公式ページなど
この紹介記事作成にあたって、試用(テスト)を行った環境、本記事で紹介するプラグインバージョン、現在配布されている最新バージョン、公式ページのリンク等は以下の通りです。
テストしたサーバー | カラフルボックス |
WordPressバージョン | 6.0.1 |
PHPバージョン | 7.4.27(8.0でも動作しました) |
テストしたテーマ | HABONE(本サイトでも使用しているオリジナルテーマ) |
プラグインバージョン | 本記事で紹介するために試用したバージョン :1.3.3 公式サイトで配布されている最新バージョン :1.3.7 ※バージョンが違うと、仕様が大きく変更となっている可能性があります |
テストした日 | ※本記事の最終更新日であり、実際の試用日とは異なることがあります |
公式サイト | https://wordpress.org/plugins/insert-php-code-snippet/ ※wordpress.org上のページへのリンクです |
作者サイト | ※プラグイン制作者の独自ページ(サイト)リンクです |
本記事を参考にWordPressサイトへプラグインの導入を検討される方へ
WordPressは古くから無料で配布されているサイト作成ツール(CMS)で、随時改良が加えられており、さまざまなバージョンが存在します。
さらにWordPressを動かすためのプログラムであるPHP、サイトのデータを保存しておくためのデータベースについても様々なバージョンがあります。
そしてWordPress本体同様にプラグインについてもさまざまなバージョンが存在します。
本記事を参考にプラグインの導入をお考えの方は、以下に留意の上でインストールするようにしてください。
- テスト環境での動作に基づいた紹介記事ですので、すべての環境で正常に動作するかどうかは不明です
※本記事の内容についてはページ内に記載しているプラグインバージョンのものになります。現在のバージョンと異なる場合、機能や日本語対応の状況などが異なる場合があります。
※また、テスト環境、テストしたプラグインバージョン等の表示が本文内にない場合、ページタイトル下にある最終更新日当時の情報となりますので、現在のバージョンでは全く違う機能となっているかも知れません。 - プラグインに無料版と有料版(Pro版)がある場合、特に記載がなければ無料版の情報のみを紹介しています
- このページでプラグインを使用する際に必要なショートコードやコードなどは、コピーして使用することができますが、環境によっては記号などが文字化けすることがあります。コピーしたのに動作しない場合は特に「”」「’」などの記号を入力し直してみてください。
- プラグイン本体の動作不具合や質問などは公式サイトのフォーラムなどで行ってください(ここでは質問にお答えすることはできません)
【Insert PHP Code Snippet】プラグインの設定画面や表示の日本語化と翻訳
【Insert PHP Code Snippet】プラグインは設定項目が少ないので特に必要ないと思います
【Insert PHP Code Snippet】プラグインのインストールと設定
インストール方法
インストールはプラグインの新規追加でプラグイン名を入力して検索してインストールするか、WordPressのプラグイン公式配布ページからダウンロード後、管理画面からアップロードインストールしてください(プラグインの公式ページは本ページ内記載のリンクをクリック、もしくは、WordPress公式サイトで検索してください)。
WordPressを使い始めて間もない方(初心者の方)は、より詳細なプラグインのインストール手順や、インストール時に起こる問題などへの対処方法をまとめた【WordPress】プラグインのインストール&追加方法とエラー対処の方法も併せてご覧ください。
【Insert PHP Code Snippet】プラグインの基本的な使い方
設定項目がありますが基本的には変更の必要はありません
PHPコードをショートコード化するには
- デスクトップから「XYZ PHP CODE」をクリックします
- 「ADD PHP Code Snippets」をクリックします
- ショートコード化したいPHPコードを入力し、タイトルを付けて保存します
PHPコードの前後にある「<?php」と「?>」は自動付与されますので記述しないようにします
ショートコードの作成が終わったら、上の手順1で表示される一覧からショートコードをコピーして、投稿や固定ページへ挿入します
エラーが出て操作ができなくなったときは
このプラグインはPHPコードをショートコード化して本文内へ挿入するもので、直接WordPressの動作を指示するものではないため、よほどのことがない限りエラーが発生してサイトの操作ができなくなることはないと想像しますが、万が一発生した場合には以下のようにして対処しましょう。
- サーバー管理画面から対象サイトのデータベース(phpMyAdmin)を開く
- 「〇〇_xyz_ips_short_code」というテーブルを開く
※〇〇は接頭辞です - 問題となる行の「status」列の値を「2」に変更して一時停止する
※有効化状態は「1」、一時停止状態は「2」です