先日、PayPal Checkout Integration Guideに基づき、「(オプション付き)投げ銭プラグイン」を作成しました。主だった機能はすべて関数を用いて記述していますが、クラス化しておくと、プラグインの機能を拡張したときにコードの再利用性が高まリます。そこで今回の記事から、しばらくの間PHPのクラス構文を用いた「投げ銭プラグイン」の作り方をご説明します。
フォルダとファイルの作成
まず「投げ銭プラグイン」で必要なフォルダとファイルを作成します。作成するためのコマンドは下記の通りですが、転送ファイル(FTP、SFTP)を使って作成しても構いません。
$ pwd /var/www/html/wp-content/plugins $ mkdir echizenya-paypal-express-checkout $ cd echizenya-paypal-express-checkout $ touch echizenya-paypal-express-checkout.php $ touch class-echizenya-paypal-express-checkout.php
ディレクトリの作成について
ディレクトリ名は”echizenya-paypal-express-checkout”とします。ディレクトリ名は他のプラグインで使われているディレクトリ名と被らないように、あらかじめ調べておきましょう。
また文字はすべてアルファベットで使う文字はすべて小文字として、単語間は”-(ハイフン)”でつなぎます。
ファイルの作成について
“echizenya-paypal-express-checkout.php”は、プラグインヘッダを書き込むファイルで、プラグインが動作するときに最初に読み込まれるファイルです。”class-echizenya-paypal-express-checkout.php”はクラスのプロパティやメソッドを定義するファイルで、「プラグインの設計図」とも言えます。
なおファイル名はすべて小文字として単語間は、ハイフンでつなぎます。またクラスの内容を定義するファイルは、WordPressの慣習的にファイル名の先頭に”class.”もしくは”class-“という単語をつけることが好ましいとされます。
エディタの準備
WordPressのプラグインを公式ディレクトリで公開する場合、WordPressのコーディングスタンダードに則ってコードを記述する必要があります。プラグインのプログラミングコードを記述する前に、まずインデントを確認しましょう。WordPressが推奨するインデントは、”タブで4文字”です。”スペースで2文字”は使えません。
エディタソフトとしてAtomを使っている場合、上記のページを参考にしてインデントを調整してください。
プラグインヘッダの書き込み
プラグインが有効化されたときに、最初に読み込まれる”echizenya-paypal-express-checkout.php”にプラグインの説明書きとしてプラグインヘッダを記述します。
[php]
<?php
/*
Plugin Name: Echizenya PayPal Express Checkout
Plugin URI: https://example.com
Description: Blog Commerce PayPal Express Checkout
Version: 0.0.0
Author: echizenya
Author URI: https://e-yota.com
License: GPLv2 or later
Text Domain: echizenya-paypal-express-checkout
*/
[/php]
このようなヘッダを記述するとWordPressが”echizenya-paypal-express-checkout”をプラグインとして認識するようにします。いくつか注意点を挙げます。
Plugin Nameについて
他のプラグインと被らないようにしましょう。また他のWebサービスの名前を使う場合、その商標を尊重するようにしましょう。
Text Domainについて
Text Domainとは国際化用のテキストドメイン名のことです。省略することも可能ですが、省略するとヘッダの内容が翻訳されません。
Domain Pathについて
そのほかの記述項目として”Domain Path: /language”を書き加えることも可能ですが、省略しても構いません。
クラスファイルの書き込み
[php]<?php[/php]
“class-echizenya-paypal-express-checkout.php”にはとりあえずPHPタグだけ書き込んでおきます。
画面の確認
ここまでの作業を終えると、WordPressの管理画面で、Echizenya PayPal Express Checkoutがプラグインとして認識されていることが分かります。なおここまでの内容については、GitHubで公開しています。ご興味のある方はぜひ参考にしてください。その2に続きます