「NTVWC Client」の使い方 – 開発者

プラグイン「Token Vendor for WooCommerce」のクライアントライブラリ「NTVWC Client」の使い方に関してです。

WordPressテーマとプラグインで使うためのライブラリは問題ないと思われますが、その他の用途でのライブラリはまだ準備中です。

販売するパッケージにインクルードして初期化するだけですから、楽にトークンの有効性を検証できるようになります。

 

「NTVWC Client」の機能

まずは「NTVWC Client」を使うことによりできることの紹介です。

現バージョンにおいて、大きく分けると2つの機能を有しておりますので、使用前にご確認ください。

 

「ダッシュボード」にサブページを作成

トークンを保存するページが追加されますので、WordPressテーマかプラグインの商品の購入者には、購入した際に取得可能となるトークンをそこで保存するようにご案内いただくことが推奨されます。

 

トークンがハッシュ値が同等のものか検証

商品設定によりハッシュされた設定値と同等のものか、保存されているトークンをもって検証します。

これにより条件分岐することが出来ますので、機能制限を付けることも出来ます。

 

WordPressのテーマとプラグインの場合

テーマもしくはプラグインの任意の位置で、ダウンロードしたZIPファイルを展開してください。

「ntvwc-client」というフォルダが出てくる筈です。

以下の手順で販売するテーマ或いはプラグイン内に書き込んでください。

  1. メインのクラスファイル「class-ntvwc-client.php」をインクルード
  2. クラス「NTVWC_Client」の静的メソッド「get_instance」をコール

コード例:

/**
 * Token Vendor for WooCommerce Client
 * 
 * @param string $file
 * @param string $textdomain
 * @param string $plugin_dir_name
 * @param string $api_url_base
 */
if ( ! class_exists( 'NTVWC_Client' ) ) {
  require_once( 'path/to/ntvwc-client/class-ntvwc-client.php' );
}
$ntvwc_client = NTVWC_Client::get_instance(
  MAIN_FILE, // like "path/to/functions.php" of the theme or "path/to/plugin-file.php" of the plugin
  TEXTDOMAIN, // Textdomain of your theme or of your plugin
  PACKAGE_DIR_NAME, // Folder name of the package
  WC_SITE_URL // URL of WooCommerce site which is installed Token Vendor for WooCommerce
);

 

メソッド「get_instance」のパラメータについてですが、

  1. テーマなら「funcitons.php」の絶対パス、プラグインならメインのプラグインファイルの絶対パス
  2. テキストドメイン
  3. テーマやプラグインのフォルダ名
  4. 販売しようと思っているWooCommerceサイトのURL

の4つを入力するだけです。

 

あとは必要に応じてこのオブジェクトのメソッド「validate_token( $hashed )」をコールするだけです。

if ( $ntvwc_client->validate_token( PREMIUM_HASHED_VALUE ) ) {
  echo 'Premium User!';
} elseif ( $ntvwc_client->validate_token( NORMAL_HASHED_VALUE ) ) {
  echo 'Registered User!';
} else {
  echo 'Huh?';
}

 

このメソッドは真偽値を返し、ifなどの条件にご利用できますので、用途に応じてご自由にお使いいただけます。