Welcart キャンペーン中か否かを判定する方法

Welcartでキャンペーン中か否かの情報を知るためには “Welcart Shopt 基本設定” > “営業設定” の設定項目の表示モードの状態を取得することで分かります。

表示モード

表示モードを取得

表示モードはWelcartのオプション情報に “display_mode” というキーで格納されており参照すると3つのパターンで返ってきます。

global $usces;
$usces_options = $usces->options;
$display_mode  = $usces_options['display_mode'];

表示モードの値一覧

管理画面上は通常営業中とメンテナンス中の二択ですが、状態に応じて以下3つの値が返ってきます

返ってくる値内容
Usualsale通常営業中
Maintenancemodeメンテナンス中
Promotionsaleキャンペーン中

“Promotionsale” がキャンペーン中を表す値ですので、”Promotionsale” が返ってくればキャンペーン中ということになります。

キャンペーン中か否かを判定する関数

/**
 * キャンペーン中か否かを判定する
 * [display_mode]
 * - Promotionsale   : キャンペーン中
 * - Usualsale       : 通常営業中
 * - Maintenancemode : メンテナンス中
 */
function ag_is_campaign()
{
    //Welcartのオプション設定情報を取得
    global $usces;
    $usces_options = $usces->options;
    
    //キャンペーン中か否か判定
    if ( $usces_options['display_mode']==='Promotionsale' ) {
        //キャンペーン中の表示モードは Promotionsale が返ってくる
        return 1;
    } else {
        return 0;
    }
}

動作環境情報

エックスサーバー(x10)
PHP 7.3.16
MySQL 5.7
WordPress 5.5.1
Welcart e-Commerce 1.9.32

コメント

タイトルとURLをコピーしました