FAQ
ご利用に関するお問い合わせから特に重要だと思われる内容を以下にまとめてます。
【ポイント付与対象者の識別】
ポイント処理をおこなう対象者(この場合の対象者とはショップIDの保有者でなく商品を購入する方)の識別に独自のUIDを定義してます。コード実行の初期段階で既にUIDが存在していた場合はUIDの有効期限を延ばす処理を実行し存在してなければUIDを生成しクッキーとして対象者のブラウザに保存します。
【ポイント情報の保持(永続性の担保)】※重要
UIDの値をポイント付与対象者側の環境に保存することでお一人おひとりのポイント情報を捕捉することができますが、このUIDは対象者の利用デバイスが変わった場合にその値を保持することができません(利用環境の不確実性問題:デバイスを跨いでクッキー使い回しができない)この問題の解決には商品販売サイト側で記録される利用者情報とUIDの紐付けが必要です。以下に参考例として利用者情報とUIDの紐付け処理コードをWordPress向けとその他(PHPプログラムを想定)に分けて記述してます。この内容をもとにご自身の環境にあわせた処理の実装をお願いします。
【WordPressの場合】
ライブラリとして用意されている関数「get_user_meta()」と「update_user_meta() 」をつかい、変数「get_pointsystem_account_uuid()」に値が格納されているか否かを確認して下さい。
UID確認処理の例
function point_system_account_save($account_uuid){
$user_id = get_current_user_id();
if($user_id == 0){
// not login
return $account_uuid;
}
$meta_key = 'point_system_account_name';
// 以前登録済みのIDが存在しているかチェック
$point_system_account_name = get_user_meta( $user_id, $meta_key, true );
if($point_system_account_name !== FALSE){
// 以前登録済みのIDが存在している
return $point_system_account_name;
}
// 登録済みのIDが存在していない場合は、引数で渡されたUUIDで登録する
update_user_meta( $user_id, $meta_key, $account_uuid );
return $account_uuid;
}
【その他の言語の場合】
WordPressライブラリ「get_user_meta()」と「 update_user_meta()」の代替となる関数を用意し同じ処理を実現して下さい。
PHPによるUID確認処理の例
$user_id = get_current_user_id();
=> ログインしていない場合に 0 を返し、ログインしている場合はユーザーIDを返す
update_user_meta( $user_id, $meta_key, $meta_value );
=> 指定した $user_id, $meta_key をキーとして、$meta_value で上書き保存する
$meta_value = get_user_meta( $user_id, $meta_key, $single );
=> 指定した $user_id, $meta_key をキーとして、$meta_value を取得する