WordPressハウツー:WPプラグインの開発の基本

書かれた記事:
  • ブログのヒント
  • 更新:Aug 12、2013

私たちは一連の記事に取り組み、WordPressでXをやる方法" これらの記事は少し長くなり、主に経験豊富なウェブマスターや開発者向けです。 あなたがWordPressを初めて使う人のために、私の あなたの最初のワードプレスのブログへのガイド.

そして今、いくつかの基本的な紹介。

新しいプラグインを開発してWordPressの機能を拡張する

ワードプレスホームページ

WordPressは世界で最も人気のあるコンテンツ管理プラットフォームであり、自己ホスト型PHPインストールパッケージの60百万人以上のユーザーと、Webベースのリモートホスト型WordPress.comサービスを使用している数百万人のユーザーがいます。 これは偶然や間違いではありません。 WordPressは、非常に簡単に言えば、世界で最も完全に機能し、手頃な価格(無料です!)で使いやすいコンテンツ管理アプリケーションです。 しかし、コンテンツ管理のこの巨人でさえ完全に完璧というわけではなく、多くのユーザーは最終的に、このソフトウェアには欠くことのできない1つまたは2つの重要な機能が欠けていることに気付きます。

入力します WordPressのプラグイン.

これらの不満なユーザーは、仕事を成し遂げるために適切なプラグインを見つけるために、クエスト、大規模な検索に行きます。 必要なプラグインを見つける人もいますが、多くの人は探しているものを見つけられないだけです。

一部のWordPressユーザーは、単に戦いをあきらめて、ウェブサイトに1つの重要な機能が欠けている生活に身を任せることに満足するかもしれません。 しかし、これらのユーザーの大規模なグループは、単にタオルを投げ入れたくないだけであり、仕事を完了するために独自のカスタムメイドのプラグインを設計するプロセスを追求します。 複雑で威圧的に聞こえるかもしれませんし、その一部はそうかもしれません。 確かに、 PHの固い知識P WordPress機能に本物の機能を追加する、より高度なプラグインが必要になります。 しかし、プラグインはWordPress全体で標準的な基本機能を書くのは比較的簡単なことであり、仕事をよりうまくやり遂げ、もっと楽しい方法でそれを提示するためには単に "再加工"する必要があります。

2番目に満足せず、独自のプラグインを作成することを考えているユーザーは、以下の簡単な手順に従うだけで、WordPressのインストールを、インターネット支配の大きなアイデアや壮大な計画との機能性と互換性を高めることができます。

ステップ1:プラグインディレクトリ内に新しいファイルを作成し、目的を指定する

WPプラグイン

プラグインを作成するための最初のステップは、既存のWordPressプラグインディレクトリ内に新しいPHPプラグインファイルを作成することです。

WordPressインストールの機能を既に強化するためにいくつかのプラグインをアップロードしている可能性が高いため、ほとんどのユーザーはそのディレクトリの場所を知っているはずです。 ただし、完全かつ完全な初心者としてこのプロセスに本当に近づいている人のために、WordPressソフトウェアのすべてのバージョンと反復について、ファイル内のすべてのパグを含むディレクトリは次の場所にあります。

/ public_html / wp-content / plugins /

そのディレクトリに移動し、「my-custom-plugin.php」という名前の新しいファイル(この時点では空白)を作成します。これは、最初から最後までのすべての作業を含むファイルです。開発プロセス中に誤って削除されたり、時期尚早にアクティブになったりしないことは明らかです。 このファイルを作成してサーバーにアップロードしたら、FTPクライアントを使用して、このファイルがサーバー上でホストされている間に(組み込みのテキストエディターを使用して)このファイルを直接編集します。 これは、リモートファイルを編集する最良の方法です。保存とアップロードが本質的に自動化され、異なる場所に保存されている同じファイルの複数のバージョンを管理するよりも間違いなく簡単になるためです。

これで、プラグインに名前が付けられ、説明され、「byline」が付けられます。これは、テーマの「style.css」スタイルシートファイルの最上部に配置されるのと同じタイプの情報です。以下の情報をご覧ください。 この情報は、他のコードの前にプラグインファイルの先頭に配置します。 これらのコメント行の前に、開始PHPタグを配置しないでください。 これらの行が正しく配置されていないか、完全に省略されている場合、プラグイン自体はWordPressダッシュボード内に表示されません。 つまり、アクティブ化、使用、テスト、またはデバッグすることができず、それは良くありません。 ファイルを開いて関数を定義する前に、入力する必要があるものは次のとおりです。

/*
プラグイン名:WordPressの方法を学ぶためのカスタムプラグイン
プラグインURI:http://www.your-website-here.com
説明:このプラグインは、標準のWordPressインストールに新しい機能を追加するために、PHPコード、WordPress変数、XHTML、CSS、その他の情報を標準プラグインPHPファイルに配置する方法を示すために使用されています。
著者:あなたの名前はここに
バージョン:1.0
著者URI:http://www.your-website-here.com
*/

その情報が完全に入力されると、プラグインはWordPressダッシュボードによって検出され、プラグインのアクティブ化/削除管理パネル内で他のプラグインとともにその情報が適切に表示されます。 プラグインには、ファイル名、わかりやすい名前、および目的が与えられています。 この時点で欠落しているのは、いくつかの関数です。 そこでステップ2が始まります。

WPプラグイン

ステップ2:WordPressウェブサイトで使用するためのプラグイン関数(または関数)の定義

このプラグインのデモンストレーションでは、開発者が カスタムフィールド。 このフィールドは、ユーザーがTwitter、Facebook、LinkedIn、MySpaceなどのサイトでソーシャルネットワーキングのアップデートを購読している友人や家族と投稿を共有できるように、ソーシャルメディアリンクが投稿に含まれているかどうかを判断するために使用されます。 カスタムフィールドが作成されました。この場合、「social_links」という名前が付けられています。

プラグインのPHPコードを使用して、ソーシャルネットワーキングフィールドにデータがあるかどうかを判断します。 存在する場合、ソーシャルメディア共有リンクの「バー」が表示されます。 データが含まれていない場合、これらのリンクは省略されます。 これはあなたのウェブサイト上の投稿の共有を無効にする素晴らしい方法です。これは単に一般大衆が見ることを意図したものではありません。プラグインで行うことは、単にこの機能をすべてのテーマに適用するのではなく、 1つのテーマのエントリテンプレート。

このプロセスは、WordPressコードにアクションを追加することで実現します。 これは、既存のWordPressテンプレートファイルから直接移植できるWordPressコードの既存のレンズといくつかの "エコー"ステートメントでパークされた "add_action" PHPコマンドを使用して行われます。 テンプレート内で使用できる変数はプラグインファイル内に含めることもできますが、開かれたPHPタグを閉じる必要はありません。 。

プラグインファイルに完全に入力された場合、追加された「アクション」は次のようになります。

関数social_links($ post_ID){
グローバル$ wp_query;
$ ID = $ wp_query-> post-> ID;
if(get_post_meta(13); == 1)
{
$ post_IDを返します。 "ソーシャルネットワーキングリンクボタン";
}
ほかに
{
$ post_IDを返します。 "";
}
}
add_action( 'the_content'、 'social_links');

コードの最初の行は、閲覧されている特定のエントリのWordPressダッシュボードに「メタ」情報が記入されているかどうかを判断するために使用されます。 これは、($ wp_query変数を使用して)WordPressデータベースを照会し、メタフィールド番号13内の情報を検索することによって行われます。 各カスタムフィールドには、エントリ、コメント、およびページと同様に、数字の識別情報が与えられます。 この数値は、条件文の変数内で使用できます。

そのため、最初にプラグインは各エントリのカスタムフィールドを調べて、フィールドのデータベーステーブルにコンテンツが存在するかどうかを確認します。 次に、条件式を実行します。 コンテンツが「1」に等しい場合、続行します。 この場合の「1」の使用は、「フィールドにデータが存在する場合」を意味します。これの逆は「0」となり、「フィールドにデータが存在しない場合」に変換されます。 、または「1」に等しい場合、関数は条件の最初の部分に進みます。 そのセクションは、ソーシャルメディア共有リンクの表示を提供します。 簡潔にするために、これらのリンクは関数に含まれていません。 ただし、「return $ post_ID」ステートメントに続く引用符内で単純なXHTMLを使用するふりをすることができます。

カスタムフィールドにデータが存在しない場合、このプラグインのコードに関する限り、事実上「0」に等しくなります。 ただし、この条件は/またはステートメントであり、多くの異なる結果を持つものではなく、「else」構造を使用して、他の状況で代替コンテンツを印刷するようプラグインに指示します。 この場合、単に何も印刷しません。 このため、関数内に配置する必要があるのは次のとおりです。

返信する$ post_ID ""

ステートメントの最後に、新しい関数を「アクション」として既存の「the_content」PHP変数に追加します。 これにより、エントリのコンテンツの印刷が終了した直後に、ソーシャルネットワーク共有ボタンがエントリの下部に追加されます。 この括弧付きの文の文は時系列です。つまり、エントリのタイトルが印刷された直後にコンテンツの先頭にボタンが表示されることになっている場合、「the_content」の前に新しいアクション(「social_links」)を配置できます画面。

関数が完了し、エントリのコンテンツの本文がページに印刷された直後にWordPressループにアクションが追加されると、プラグインは本質的に完了します。 これは、終了PHPタグを追加し、ファイルを保存し、使用するためにサーバーにアップロードする適切なタイミングです。

ステップ3:プラグインを有効にして試してみる

このプロセスの最も重要な部分は、プラグインを有効にして、その機能が期待通りに機能していることを確認し、既存のプラグインや標準のWordPress機能に問題を引き起こさないことを確認することです。 これはまた、PHPコードの完全性を検証し、任意の出力(XHTMLなど)が必要に応じて確実に印刷されるようにする良い機会です。

アクティベーションおよびテストプロセス中にエラーが発生した場合、プラグインファイルをチェックし、すべてのステートメントが適切に開閉されることを確認することが重要です。 これは、括弧、セミコロン、括弧、小文字など、多くの場合、句読点をチェックすることを意味します。 PHPでは大文字と小文字が区別され、句読点も区別されることに注意してください。閉じられていないステートメントは基本的に無限に継続し、ページが単に読み込まれなかったり、極端に遅く読み込まれたりします。

キンクのすべてが解消されたら、仕事は大体完了です。 ただし、他のシナリオでは注意すべき点がいくつかあります。

ステップ4:プラグインのReadMeファイルを作成する

WordPressプラグインを作成する

プラグインがプライベートでの使用のみを目的としている場合、もちろん、プラグインが何をするのか、どのように構築されたのか、その中でどのように機能するのかを忘れない限り、「ReadMe」ファイルを作成する理由はありませんWordPressループ自体。 ただし、多くの開発者は、より広いWordPressコミュニティにプラグインを配布することを目的にプラグインを作成し、60ミリオン以上のユーザーがいるため、これはWebサイトを宣伝して二次収入を得る有利な方法です。

これらのユーザーは、プラグインの機能、サーバーへのファイルのインストール方法、およびセットアップと機能のカスタマイズ方法を概説するReadMeドキュメントを作成する必要があります。 このファイルには、時間の経過とともにプラグインに対して行われたすべての変更と更新の詳細を示す変更ログなどの情報も含めることができます。 ただし、重要なことは、プラグインが何をするのか、どのように動作するのか、どのようにインストールするのかを説明することです。 初心者ユーザーは、このガイドの最後のステップまで新しいプラグイン開発者が新しいWordPress関数を作成する方法を知らなかったように、プロセスをガイドされない場合はどうすればよいかわかりません。

プラグインファイルが完成し、ReadMeファイル(通常は.txtファイル)とペアになったら、両方のドキュメントを独自のフォルダーに入れ、標準のZIPファイル形式を使用して圧縮します。 その後、プラグインをWordPress Extendのプラグインとテーマのコミュニティにアップロードしたり、自己ホスト型ソリューションの開発者のサーバーにアップロードしたりできます。

WordPressの変数と関数を使って、比較的簡単に行うことができます

WordPress用の新しいプラグインの開発についての素晴らしい点は、WordPressが既に定義して初期化している既存のPHP関数、変数、またはループをファイルが使用できることです。 これにより、WordPressの機能を拡張したり、多くのテーマで機能を拡張したりすることが容易になり、プラグインの開発プロセスがソフトウェア自体の新しいテーマを作成するのと同じくらい簡単になります。

プラグインを積極的に使用したり、より広いWordPressコミュニティと共有したりする前に、バグ、検証エラー、機能の競合を必ずテストしてください。 そのプロセスが完了し、プラグインが正常に動作している場合、開発段階は完了し、作成したばかりの成功と新しい機能を自由に楽しむことができます。 ;)

WHSRのさらなる読書

これを深く掘り下げるには、チェックアウトしてください 20 Essential WordPressプラグインのJerryのリスト, WordPressデベロッパーのための25 Handy Code Snippets, 最も欲しいWordPressのハック、ヒント、トリック; そして、もしあなたが良いWordPressホスティングを探しているなら、私が最近使っているものをチェックしてください– WPのエンジン –非常に高価なホストです(したがって、初心者にはお勧めできません)が、料金は支払われます。

ジェリーローについて

WebHostingSecretRevealed.net(WHSR)の創設者 - 100,000のユーザによって信頼され、使用されているホスティングレビュー。 15年以上のWebホスティング、アフィリエイトマーケティング、およびSEOの経験。 ProBlogger.net、Business.com、SocialMediaToday.comなどへの貢献者。