カスタム WordPress プラグインの構築: ステップバイステップ ガイド

公開: 2023-12-01

WordPress が人気があるのは、開発者がその機能を拡張するプラグインを作成できるオープンソースの性質もあります。 現在 55,000 を超えるプラグインが利用可能ですが、独自のプラグインを構築する方法を学ぶことに興味があるかもしれません。

幸いなことに、WordPress では、多少のコーディング知識しかない場合でも、重要なプラグインを比較的簡単に作成できます。 プラグインを開発することで、利用可能な機能を超えてカスタマイズされた機能を WordPress サイトに追加できます。

この記事では、WordPress プラグインとは何かを詳しく説明し、最初のプラグインを開発するためのステップバイステップのガイドを提供します。 WordPress サイトにカスタマイズされた機能を追加するシンプルなプラグインを構築するためのコーディングの基本について説明します。

WordPress プラグインを構築するために必要なもの

WordPress プラグインを作成するには、いくつかの重要な要素が必要です。

プラグイン コード自体を記述するには、Notepad++ や Atom などのテキスト エディターが必要です。 ファイルを直接変更できるようにするには、エディタをホスティング アカウントの FTP (ファイル転送プロトコル) サーバーに接続する必要があります。 FileZilla や WinSCP などの FTP ツールを使用すると、プラグイン ファイルを WordPress サイトに簡単にアップロードできます。

さらに、アクティブな WordPress インストールが必要で、理想的には最新バージョンに更新されています。 自動更新を無効にしている場合は、WordPress コア ファイルを手動で更新できますが、データの損失を防ぐために、必ず最初にサイトをバックアップしてください。 もう 1 つのオプションは、WordPress をローカルにインストールして、ライブ サイトに影響を与えずにプラグインを開発することです。

プラグインを構築する際には、PHP の基本的な知識も推奨されます。 カスタム PHP 関数を作成し、既存の WordPress 関数を利用する必要があります。 少なくとも、PHP の規則とファイル構造について知っておくと役立ちます。

WordPressプラグインの種類

WordPress プラグインはさまざまな機能を実行できますが、それらはすべて WordPress サイトの機能を拡張するために役立ちます。 一般的なプラグインの種類には次のようなものがあります。

  • メンテナンス プラグインは、セキュリティ、速度の最適化、バックアップ、その他のサイト管理タスクを処理します。
  • SEO、ソーシャルメディア統合、eコマースなどのためのマーケティングおよび販売プラグイン。
  • カスタム投稿タイプ、ウィジェット、ショートコード、フォーム、ギャラリー、ビデオ要素を作成できるコンテンツ プラグイン。
  • WordPress REST API を利用したり、Google マップなどの外部サービスを統合した API プラグイン。
  • ソーシャル ネットワーキング機能を追加するコミュニティ プラグイン。

他にも多くのプラグイン カテゴリがあります。 可能性を理解するには、公式 WordPress プラグイン ディレクトリと WordPress プラグインのさまざまなマーケットプレイスを参照してください。

WordPress フックとは何ですか?

WordPress プラグインはフックを使用してコアコードと統合します。 フックには主に 2 つのタイプがあります。

アクション フックは、特定のポイントで関数を実行します。 開発者は、カスタム ロジックをアクション フックにアタッチして、追加のタスクを実行できます。 たとえば、wp_head フックは head タグの直前にコードを実行します。

フィルターフックは、関数によって返されたデータを変更します。 プラグインは、カスタム ロジックを通じて値をフィルター処理することで値を変更できます。 たとえば、the_content フィルターは投稿コンテンツを変更します。

フックはコンテキストに依存し、関連する場合にのみ実行されます。 WordPress コードリファレンスには、利用可能なフックがリストされています。

フックを使用するには、 add_action()またはadd_filter()を使用してコールバック関数を追加します。 パラメーターは、アタッチするフック名と関数を指定します。

add_action('wp_head', 'function_name');

オプションのパラメータは、実行順序の優先順位と受け入れられる引数の数を制御します。

フックの削除は、remove_action() および Remove_filter() の使用と似ています。 定義時に元の優先度の値を参照します。

次に、いくつかの例を見てみましょう。

これは、wp_footer をフックすることで、すべてのページのフッターの後にテキストを表示します。

<?php

/* Plugin Name: Footer Text */

function footerText(){

echo "<p>My footer text</p>";

}

add_action('wp_footer', 'footerText');

これはget_the_excerpt():

<?php

/* Plugin Name: Excerpt Changes */

function excerptText($text){

return "See the excerpt below: ". $text;

}

add_filter('get_the_excerpt', 'excerptText');

ステージング サイトでプラグインをテストすると、ライブ サイトの破損を回避できます。 WordPress をローカルにインストールするか、ステージング プラグインを使用します。

WordPressプラグインの作成手順

ステップ 1: 初期プラグイン ファイル構造をセットアップする

プラグイン作成の最初のステップは、そのファイルを含む新しいフォルダーを作成することです。 フォルダーに一意でわかりやすい名前を付けます。 wp-content/plugins/ 内の既存のプラグイン フォルダーをチェックして、それがまだ使用されていないことを確認します。

FTP クライアントを使用してホスティング アカウントに接続すると、アップロードが簡単になります。 メインの WordPress ディレクトリに移動し、次に wp-content -> plugins に移動します。 ここに my-new-plugin という名前の新しいフォルダーを作成し、プラグインを保存します。

プラグイン フォルダー内のファイルを機能ごとに整理することをお勧めします。 たとえば、CSS、PHP、JavaScript ファイルをそれぞれのサブディレクトリに保存します。 これにより、プラグインの開発中に物事が整理され、必要なときに特定のファイルを見つけやすくなります。

プラグインに新しい PHP、CSS、JS などのファイルを追加する場合は、適切なフォルダーに保存します。 最初からこの構造を維持すると、長期的にはファイルの管理が簡単になります。

ステップ 2: メインプラグインファイルを作成する

コアプラグインファイルには、WordPress がプラグインリスト内でプラグインを認識し、アクティベーションを許可するための情報が含まれています。

すでに作成したプラグイン フォルダー内に my-first-plugin.php という新しい PHP ファイルを作成します。 これがメインファイルになります。

名前、説明、作成者などのメタデータを読み取って表示するには、WordPress のヘッダー コメントが必要です。

テキスト エディターを使用して、このコードを my-first-plugin.php に追加します。

<?php

/*

Plugin Name: My First Plugin

Description: This is my first plugin! It adds a new menu link!

Author: Your Name

*/

ここでは、終了?>タグは必要ありません。 PHP マニュアルにはその理由が説明されています。

ファイルを保存し、WordPress ダッシュボードの「プラグイン」ページに移動します。 機能した場合は、リストに「My First Plugin」が表示されます。

これで、初期プラグインファイルが設定されました。 次に、それをアクティブにして機能の追加を開始できます。

WordPress dashboard plugin

ステップ 3: プラグイン機能の追加

競合を避けるために、ファイル、関数、変数には「mfp」のような一意の接頭辞を付けてください。

サポートファイルを保存するために「includes」フォルダーを作成します。 ここに関数を保持する mfp-functions.php を作成します。

my-first-plugin.php で、require_once を使用して mfp-functions.php を含め、プラグインが存在する場合にのみ実行されるようにします。

require_once plugin_dir_path(__FILE__) . 'includes/mfp-functions.php';

mfp-functions.php で、admin_menu フックを使用してメニュー項目を追加する関数を作成します。

add_action('admin_menu', 'mfp_Add_My_Admin_Link');

function mfp_Add_My_Admin_Link() {

// Code to add menu item

}

複数行のコメントを使用して関数を説明します。 後でデバッグするのに役立ちます。

mfp_Add_My_Admin_Link() uses add_menu_page() 。 パラメーター:

  • ページタイトル
  • メニューテキスト
  • 能力要件
  • ロードするファイル

これにより、admin_menu が起動したときにメニューが追加されます。 mfp-functions.php をアップロードして有効にします。

次に、ロードするページ ファイルを作成します。

ステップ 4: プラグインの管理ページを追加する

プラグインの機能を有効にする関数を作成した後の次のステップは、メニュー リンクが誘導する管理ページを構築することです。 すでに作成した includes フォルダー内に mfp-first-acp-page.php という新しい PHP ファイルを作成します。 次に、次のコードを追加します。

<div class="wrap">

<h1>Hello!</h1>

<p>This is the first page for my plugin</p>

</div>

カスタム管理ページを作成する場合、WordPress は「wrap」クラスを使用して HTML を<div>タグでラップすることを推奨します。 これにより、コンテンツが適切な場所に表示され、乱雑になることがなくなります。

WordPress-dashboard

ページファイルが完成したら、WordPress ダッシュボードの「プラグイン」エリアに移動し、新しいプラグインをアクティブ化します。 成功すると、最初のプラグインの管理メニュー リンクがメニューの下部に表示されます。

ステップ 5: ライブ WordPress サイトにプラグインをインストールする

ステージング WordPress サイトでプラグインを開発した場合は、次の手順に従ってライブ運用サイトにプラグインをインストールする必要があります。

  1. FileZilla で、my-new-plugin フォルダーを右クリックし、[ダウンロード] を選択します。 ファイルを .ZIP アーカイブに圧縮します。
    FileZilla download
  2. WordPress ダッシュボードの「プラグイン」メニューに移動し、「新規追加」をクリックします。
  3. [プラグインのアップロード] を選択し、プラグインを含む .ZIP ファイルを選択します。
    WordPress upload plugin
  4. 「今すぐインストール」をクリックして、インストールプロセスを開始します。

WordPress プラグイン開発のベストプラクティス

Web サイトが進化するにつれて、新機能やセキュリティ パッチに合わせてプラグイン コードを更新する必要が生じる可能性があります。 最初からプラグイン開発のベスト プラクティスに従って、自分自身や他の開発者のためにこのプロセスを合理化してください。

さらに、インスピレーションを得るために、適切にコーディングされたプラグインの例を研究してください。 ソースコードの構成、フォルダー構造、および独自の WordPress プラグインを構築するときに適用できるその他のテクニックを分析します。

高品質のカスタム WordPress プラグインのコーディングと開発に関する主な推奨事項は次のとおりです。

  • バグのあるコードでライブサイトが壊れることを避けるために、最初にステージング WordPress 環境で構築してテストします。
  • ファイルを機能や言語ごとにサブフォルダーに論理的に整理して、整理整頓を保ちます。
  • 競合を避けるために、すべてのファイル、フォルダー、要素に一意のプレフィックスを付けて名前を付けます。
  • 関数にコメントを付けて、後でデバッグを容易にするためにその動作を文書化します。
  • 多くのユーザーが使用する複雑なプラグインのドキュメントを作成します。
  • バージョン管理を使用してコードの変更を追跡し、更新の競合を防ぎます。
  • コラボレーションするときは、Codex の WordPress コーディング標準に従ってください。
  • 開発中に WP_DEBUG またはデバッグ ツールを使用して、バグを早期に発見します。

まとめ

カスタム プラグインの作成は、既存のプラグインが提供していない機能を WordPress サイトに追加する方法です。 プラグインは、軽微な調整を加えた単純なものから、サイト全体を変更する複雑なものまであります。

他のスキルと同様、WordPress プラグインの開発に習熟するには練習が必要です。 十分な経験があれば、プラグインを構築して WordPress プラグイン ディレクトリで利用できるようにしたり、マーケットプレイスで販売したりすることもできます。

構築するプラグインが増えるほど、WordPress サイトを新しい方法で拡張するためのカスタマイズされたソリューションの作成に熟達します。 時間をかけて粘り強く続ければ、WordPress プラグイン開発をマスターできるようになります。