商品一覧から直接カートへ入れたい

フォーラム 使い方全般 商品一覧から直接カートへ入れたい

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

    はじめまして

    Welcart初心者のinneです。

    「商品一覧ページにカート投入ボタンを表示させるには」というところで

    usces_direct_intoCart($post_id, $sku) のタグが紹介されていたので、

    archive.phpのwhile文の中にいれて表示してみましたが空白になります。

    ↓タグの記述

    <?php usces_direct_intoCart($post->ID, $this->itemsku); ?>

    いろいろ試しましたが、まったくうまくいきません。

    お手数ですが、ご教授いただけないでしょうか?

    動作に関するご質問の場合は必ずご記入ください。


    Welcart のバージョン: 0.9.4

    症状を確認したブラウザ:EI8、クローム

    サーバー(会社名、サービス名):エックスサーバー

    SSLの利用: 無し

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


    #62062
    nanbu
    キーマスター

    こんにちは。

    恐らく、$this->itemsku が取得できていないのだと思います。

    ここにはSKUコードが入らなくてはいけません。

    SKUコードの取得方法いくつか有りますが、次の方法が分かりやすいのではないかと思います。

    ループの中で次の2つを実行します。

    <?php
    usces_the_item();
    usces_have_skus()
    ?>

    そして次のようにすると良いのではないかと思います。

    <?php usces_direct_intoCart($post->ID, usces_the_itemSku('return')); ?>

    ただし、これで取得できるのは最初のSKUのみです。SKUが複数ある場合は、SKUデータをループ処理しなくてはいけません。

    #62063
    inne
    参加者

    ありがとうございます。

    早速試してみます。

    #62064
    carefree
    参加者

    固定ページ上にhome.phpを参考に作成したthumbnail_boxに、こちらのコードを設置したのですが、カートに商品が入りませんでした。

    thumbnail_boxにカートボタンを設置するには別の方法で行わないといけないのでしょうか?

    #62065
    nanbu
    キーマスター

    こんにちは、carefreeさん。

    トップページのお勧め商品グリッド表示を参考にされているのであれば、

    usces_the_item(); の後にusces_have_skus(); を置いてみてください。

    しかし、これで作れるボタンは最初のSKU に対しての投入ボタンとなります。

    ループ処理内では、have_posts()、the_post()、usces_the_item()、usces_have_skus() の4つのテンプレートタグを実行させることで、商品のSKUまでの情報が準備されることになります。

    #62066
    carefree
    参加者

    アドバイスありがとうございます。

    usces_direct_intoCartに渡す引数をprintで確認したところ。SKUコードの取得はうまくいっているのですが、$post->IDが取得できていないようで、商品をカートに入れることができませんでした。

    #62067
    nanbu
    キーマスター

    $post->ID をget_the_ID() としてみてはどうでしょう。

    #62068
    carefree
    参加者

    返事が遅くなり申し訳ありませんでした。

    うまくいきました。ありがとうございました。

    #62069
    inne
    参加者

    お世話になっております。

    カートへ投入はうまくいったのですが、SKUが複数ある場合は、どのようにしたらよいのでしょうか?

    SKUデータをループさせるテンプレートタグとかあるのでしょうか?

    #62070
    nanbu
    キーマスター

    こんにちは、inne さん。

    Welcart Default テーマのwc_item_single.php を参考にしてみてください。

    複数SKUの場合SKUをループして表示させています。

    <?php do { ?>
     *
    <?php } while (usces_have_skus()); ?>

    do を使っているのは、既に上でusces_have_skus() が一度実行されているからです。通常はこの様になります。

    <?php while (usces_have_skus()) : ?>
     *
    <?php endwhile; ?>

    #62071
    inne
    参加者

    nanbuさん

    ご丁寧にありがとうございます!

    できました!

    submitボタンのvalueが「Add To Cart」と表示されます。

    今のところ、画像に変えようと考えているので問題はないのですが、

    これを変更することは可能でしょうか?

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