Welcart BordeauxのSold Out表記について

フォーラム テンプレート(テーマ) Welcart BordeauxのSold Out表記について

7件の投稿を表示中 - 1 - 7件目 (全7件中)
  • 投稿者
    投稿
  • #82041
    tacohachi30
    参加者

    Welcart BordeauxのテーマのSold Out表記について
    2点教えていただきたいのですが、

    (1)親テーマのWelcart Basicのように、商品一覧の商品名のテキスト部分に「売り切れ」という文字を出したい。親テーマでは赤字の「売り切れ」となっていました。子テーマの商品画像の「Sold Out」もそのままいかしたい。

    (2)ウィジェットエリアに配置した「Welcart お勧め商品」に反映した商品に「売り切れ表記」を入れたい。
    現在、ウィジェットの「ホーム ウィジェットエリア(商品リスト下部)」と「サイドバー1」、「サイドバー2」に『Welcart お勧め商品』を配置していますが、「売り切れ表記」がされていません。デフォルトの「画像上にSoldOut」でも商品テキスト部分に「売り切れ」の表記でもどのような形でもいいのですが、売り切れであることを知らせたいです。

    よろしくお願いします。

    動作に関するご質問の場合は、下記をコピペしてご利用の環境をご記入ください。
    ——————————————-
    WordPress のバージョン:WordPress 4.7.2
    Welcart のバージョン:
    ご利用のテーマ:Welcart Bordeauxバージョン: 1.1.3
    症状を確認したブラウザ:Welcart Basicバージョン: 1.2.4
    サーバー(会社名、サービス名):XS
    SSLの利用: 有り
    WordPress のパーマリンク設定:
    ——————————————–

    #82069
    ohnishi
    キーマスター

    こんにちは

    1) Welcart basic の商品一覧テンプレートを参考にしてください。
    2) 「usces_filter_featured_widget」というフックを利用で、「お勧め商品」ウィジェットに「売り切れ」を表示させることが可能です。

    プラグインAPI

    どうぞよろしくお願いいたします。

    #82089
    tacohachi30
    参加者

    ありがとうございます。
    ただ、わたしがまだ全て理解できるレベルではなく、苦戦しています。

    1) Welcart basic の商品一覧テンプレートを参考に
    2) 「usces_filter_featured_widget」というフックを利用

    というヒントをいただき、見よう見まねで、functions.phpに、

    add_filter( 'usces_filter_featured_widget', 'my_filter_featured_widget', 10, 4 );
    function my_filter_featured_widget($list, $post, $list_index, $instance){
        global $usces;
        $post_id = $post->ID;
        $list = '<div class="thumimg"><a href="' . get_permalink($post_id) . '">' . usces_the_itemImage(0, 150, 150, $post, 'return' ) . '</a></div>';
        $list .= '<div class="thumtitle"><a href="' . get_permalink($post_id) . '" rel="bookmark">' . $usces->getItemName($post_id) . '</a></div>';
        $list .= usces_the_itemPriceCr('return');
        $list .= usces_guid_tax('return');
        return $list;
    }

    フィルターフック追加で、内容が変わることがわかりました。
    ただ、売り切れ表示がよくわからないのですが、
    basicの商品一覧テンプレートをみると、

    <?php if(! usces_have_zaiko_anyone() ) : ?>
    <div class="itemsoldout"><?php _e('Sold Out', 'usces' ); ?></div>
    <?php endif; ?>

    この辺りだろうというのはわかります。組み込んでみましたらやはり表示されませんん。
    また、フィルターの

    $list .= usces_the_itemPriceCr('return');

    という価格の部分ですが、どうしても「¥0」と表示になってしまいます。
    他の部分をみながら、試してみたのですがどうもうまくいきません。

    私の現段階の知識の問題かもしれませんが、
    あわせて、ご教示いただけるとありがたいです。

    どうぞよろしくお願いします。

    • この返信は7年、 2ヶ月前にWelcartが編集しました。理由: codeタグの追加
    #82123
    yasumax
    キーマスター

    こんにちは。

    usces_the_itemPriceCr('return')
    ではなくて
    usces_crform( usces_the_firstPrice( 'return', $post ), true, false, 'return' )
    ではどうでしょうか?

    usces_the_itemPriceCrはループ中でないと正しく金額が取得できないので、usces_crformusces_the_firstPriceをあわせて利用してみてください。

    `

    `
    この辺りだろうというのはわかります。組み込んでみましたらやはり表示されませんん。

    表示されないというのはどうかかれたのでしょうか?
    また、フィルター内で利用される場合usces_have_zaiko_anyone( $post_id )というふうに第一引数にポストIDを渡してください。

    #82126
    tacohachi30
    参加者

    ありがとうございます。

    金額表記に関しまして、教えていただきました
    usces_crform( usces_the_firstPrice( 'return', $post ), true, false, 'return' )
    こちらで、無事に表記することができました。

    売り切れ表記ですが、このように表記しました。
    $list .= usces_have_zaiko_anyone( $post_id );
    在庫があるものは在庫数(数字)のみが表示されています。
    こちらですが、売り切れた商品のみ、「SoldOut」または「売り切れ」という表示を出したいです。
    恐れ入りますが、どのようにしたらいいのか教えていただけるとありがたいです。

    どうぞよろしくお願いいたします。

    #82153
    yasumax
    キーマスター

    こんにちは。

    usces_have_zaiko_anyoneは、第一引数に指定した商品全てのSKUが在庫があるかどうかを判別するテンプレートタグになります。
    ですので、条件分岐をするのに利用してください。

    SKUのうちいずれかに在庫がある場合はtrue、SKU全てに在庫がない場合はfalseを返します。

    #82183
    tacohachi30
    参加者

    お返事いただき、本当に感謝しております。

    「Welcart お勧め商品」に反映した商品に「売り切れ表記」を入れたい。という質問でしたが、現状の知識では解決にいたっておりません。

    ただ、この件に関しまして「Welcart お勧め商品」に「売り切れ商品を表示させない」というほうが良いかもしれないと思いました。

    恐れ入りますが、「Welcart お勧め商品」に売り切れ商品を表示させない方法をアドバイスいただけると助かります。どうぞよろしくお願いいたします。

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