[解決済み] 商品が複数SKUを持つときのテンプレートタグ「在庫状態」について

フォーラム 使い方全般 [解決済み] 商品が複数SKUを持つときのテンプレートタグ「在庫状態」について

  • このトピックには4件の返信、2人の参加者があり、最後にsomeoneにより13年、 1ヶ月前に更新されました。
5件の投稿を表示中 - 1 - 5件目 (全5件中)
  • 投稿者
    投稿
  • #50331
    someone
    参加者

    いつもお世話になっております。もしよろしければ教えてください。

    商品一覧ページでそれぞれの商品サムネイルの下に「在庫状態」(在庫のあるなし)表示を追加しようとしています。

    テンプレートタグ「usces_the_itemZaiko()」を使って「在庫あり」または「売切れ」という表示をさせており、非常に便利だと喜んでいたのですが、複数SKUを持つ商品に関しては最初のSKUの在庫状態を表示していることに気づきました。これだと在庫のあるバリエーション商品もあるのに最初の商品が在庫切れていると「売切れ」表示になってしまいます。

    これをひとつでも在庫ありのSKUがあれば、「在庫あり」表示にすることはできないでしょうか。

    なんとなく複雑な気もしますので、あるいは複数SKUのあるものは在庫状態そのものを表示しないようにできればと思います。

    ご多忙のところすみませんが、ご教示くださいますようよろしくお願いいたします。


    Welcart のバージョン:9.0.4

    症状を確認したブラウザ:Fire Fox3

    サーバー(会社名、サービス名):ロリポップ

    SSLの利用: 無し

    WordPress のパーマリンク設定:/%category%/%postname%.html


    #61752
    nanbu
    キーマスター

    こんにちは。

    いずれかのSKUに在庫が有った場合にtrue を返すテンプレートタグを追加しようと思います。追加するバージョンはv1.0 となります。

    お急ぎの場合は以下のコードをテーマのfunctions.php に追記してください。

    function usces_have_zaiko_anyone( $post_id = NULL ){
    global $post, $usces;
    if( NULL == $post_id ) $post_id = $post->ID;

    $skus = $usces->get_skus($post_id, 'ARRAY_A');
    $status = false;
    foreach($skus as $value){
    if( ('' == $value['zaikonum'] || 0 < (int)$value['zaikonum']) && 2 > (int)$value['zaiko']) {
    $status = true;
    break;
    }
    }
    return $status;
    }

    #61753
    someone
    参加者

    こんにちは。回答ありがとうございました。

    さっそくfunctions.phpに教えていただいたコードを追加して試してみたのですが、表示が変わりません。テンプレートタグは

    <?php usces_have_zaiko_anyone(); ?>

    でよかったでしょうか。

    もとのまま

    <?php usces_the_itemZaiko(); ?>

    でも試したのですが表示は変わらずでした。

    原因として考えられることはありますか?

    #61754
    nanbu
    キーマスター

    usces_have_zaiko_anyone() は条件分岐用のテンプレートタグですので、この様にして使います。

    <?php if( usces_have_zaiko_anyone() ): ?>
    <p>在庫有り</p>
    <?php else: ?>
    <p>売り切れ</p>
    <?php endif; ?>

    これを次のように1行で書くこともできます。

    <p><?php echo ( usces_have_zaiko_anyone() ? '在庫有り' : '売り切れ' ); ?></p>

    #61755
    someone
    参加者

    完ぺきです。nanbuさんお忙しいところありがとうございました。v1.0も楽しみにしております。

5件の投稿を表示中 - 1 - 5件目 (全5件中)
  • このトピックに返信するにはログインが必要です。