JunichiK
投稿の際は下記の情報をお書き添えください。
-------------------------------------------
WordPress のバージョン:(例 6.0.2)
Welcart のバージョン:(例 2.8.1)
PHP のバージョン:(例 8.0)
Welcart専用の拡張プラグインとバージョン:(例 DL Seller 3.4.1、SKU Select 1.4.2)
ご利用の親テーマとバージョン :(例 Welcart Basic 1.7.1)
ご利用の子テーマとバージョン :(例 Welcart Beldad 1.4)
症状を確認したブラウザ:
サーバー【重要】:(会社名、サービス名)
--------------------------------------------
フォーラムへの返信
-
投稿者投稿
-
JunichiK参加者
nanbu様、ご返信ありがとうございます。
ご教示いただいたフックで、テーマのfunctions.phpに下記のように書いて、不要な数量の削除を試みたのですが、変更が反映されません。
どこが間違っているのでしょうか?add_filter( 'usces_filter_history_cart_row', 'my_filter_history_cart_row' ); function my_filter_history_cart_row( $html ) { for($i=0; $i<count($cart); $i++) { $cart_row = $cart[$i]; $ordercart_id = $cart_row['cart_id']; $post_id = $cart_row['post_id']; $sku = urldecode($cart_row['sku']); $quantity = $cart_row['quantity']; $options = $cart_row['options']; $itemCode = $usces->getItemCode($post_id); $itemName = $usces->getItemName($post_id); $cartItemName = $usces->getCartItemName($post_id, $sku); $skuPrice = $cart_row['price']; $pictid = (int)$usces->get_mainpictid($itemCode); $optstr = ''; if( is_array($options) && count($options) > 0 ){ $optstr = ''; foreach($options as $key => $value){ if( !empty($key) ) { $key = urldecode($key); $value = maybe_unserialize($value); if(is_array($value)) { $c = ''; $optstr .= esc_html($key) . ' : '; foreach($value as $v) { $optstr .= $c.nl2br(esc_html(urldecode($v))); $c = ', '; } $optstr .= "<br />\n"; } else { $optstr .= esc_html($key) . ' : ' . nl2br(esc_html(urldecode($value))) . "<br />\n"; } } } $optstr = apply_filters( 'usces_filter_option_history', $optstr, $options); } $optstr = apply_filters( 'usces_filter_option_info_history', $optstr, $umhs, $cart_row, $i ); $history_cart_row = '<tr> <td>' . ($i + 1) . '</td> <td>'; $cart_thumbnail = '<a href="' . get_permalink($post_id) . '">' . wp_get_attachment_image( $pictid, array(60, 60), true ) . '</a>'; $history_cart_row .= apply_filters('usces_filter_cart_thumbnail', $cart_thumbnail, $post_id, $pictid, $i, $cart_row); $history_cart_row .= '</td> <td class="aleft"><a href="' . get_permalink($post_id) . '">' . esc_html($cartItemName) . '<br />' . $optstr . '</a>' . apply_filters('usces_filter_history_item_name', NULL, $umhs, $cart_row, $i) . '</td> <td class="rightnum">' . usces_crform($skuPrice * $cart_row['quantity'], true, false, 'return') . '</td> </tr>'; $materials = compact( 'cart_thumbnail', 'post_id', 'pictid', 'cartItemName', 'optstr' ); } return $html; }
ご教示のほど何卒よろしくお願いいたします。
JunichiK参加者seka様、ありがとうございます。
ご教示いただいたページを参考にしていたところ、気になった点がございました。
下記ページの購入履歴の画像では、送料や代引き手数料などのダウンロード販売には不要な項目があるのですが、これらを削除するには、やはり別途カスタマイズが必要なのでしょうか?https://www.welcart.com/docs/DLSeller/upgrade.html
また、下記ページでは、クレジット決済について、ルミーズとPaypalの2つのみとされているのですが、別途、Welcartに他社の決済モジュールを使用しても、ダウンロード販売ではこの2つしか使用できないでしょうか?
https://www.welcart.com/docs/DLSeller/credit.html
以上、よろしくお願いいたします。
JunichiK参加者ohnishi様のご教示と併せて、テーマのfunctions.phpにusces_filter_cart_rowsフックを使用してtemplate_func.phpの内容をカスタマイズすることで実現出来そうです。
下記のトピックも参考にさせていただきました。ありがとうございました。
JunichiK参加者いつもお世話になります。
wc_templates内の wc_cart_page.php をカスタマイズするということは分かったのですが、
<?php usces_get_cart_rows(); ?>
で取得しているtbody部分の変更の仕方が分かりません。
これはやはり、template_func.php を変更しないといけないのでしょうか?引き続きよろしくお願いいたします。
JunichiK参加者ohnishi様、ありがとうございます。
なるほど、そうなんですね、スッキリした気がします。
テンプレートをいじってみます。(他にもトピックを立てているのですが、返信のレスポンスが悪くて困っておりますので、もしよろしければ、そちらもアドバイスいただけると助かります。)
JunichiK参加者会員ランクの詳細は分かりませんが、グルーピングは数十グループに分ける必要があります。
現在、WordPressのユーザーを、register_taxonomy()を利用したプラグインで分類しています(つまり、この分類のためにWPユーザーログインを必要としています)。
Welcartの会員IDがランダムなら、メールアドレスでの分類はどうでしょう?
WPのユーザーと同様に分類出来れば、ログインはWelcart会員ログインのみで済みそうな気がしておりますので。よろしくお願いいたします。
JunichiK参加者リファレンス準備中ということで、ありがとうございます。
遅くなりましたが、本来の質問内容に戻らせていただきます。受注の際のアクションフックを使って、商品のカスタムフィールドを削除してしまえば、再び見えることは無くなるかと思います
例えばどのようなアクションフックがございますか?
こちらも一覧があれば助かります。よろしくお願いいたします。
JunichiK参加者nanbu様、ありがとうございます。
おかげさまで目的を達成できそうです。「Welcart テンプレートタグ一覧」を拝見したのですが、usces_memberinfo( ‘ID’ )は載っていなかったと思いますので、できれば、全テンプレートタグが分かるようなページがあれば助かります。
- この返信は10年、 1ヶ月前にJunichiKが編集しました。
JunichiK参加者すみません、なかなか着手出来ずに返信が遅くなってしまいました。
nanbu様からご教示いただいた方法でやってみたいと思うのですが、Welcartで会員IDを取得するテンプレートタグが分かりません。
ご教示願えますでしょうか。
何卒よろしくお願いいたします。JunichiK参加者nanbu様、お世話になります。
ダウンロードファイルにて更新してみましたが、症状は改善されないようです。
念のためにいったん旧バージョンを削除して再度インストールしてみましたが、ダメです。とりあえず、Contact Form 7及びDatepickerを編集する時にはWelcartを停止するしかないようです。
引き続き、よろしくお願いいたします。JunichiK参加者お世話になります。
漠然とした質問で申し訳ございませんでした。
また、ご回答、ありがとうございます。やりたいことは、商品がサービス料的なものとなるため、ユーザーごとに個別に金額を設定して支払いを行ってもらいたいのです。
author.phpを使用して、各ユーザーごとに利用したサービス内容を表で表示するようにしていますので、その表内に「支払い」ボタンを表示させ、決済してもらうような感じです。
ですので、イメージとしましては、Welcartの商品登録画面でユーザーの選択が出来て、そのユーザーがログインしている時だけauthor.phpに「支払い」ボタンが表示され、また、他ユーザーでは商品ページへのアクセスも出来ないようにしたいのです。
そして、支払いは一回限りなので、一度決済が完了すると、商品を非表示にする必要もあります。
といった感じですが、まだまだ漠然としておりますので、もう少しピンポイントで質問出来るようになってから、改めて質問させていただきます。JunichiK参加者yskysmrさん、ありがとうございます。
具体的にご教示ただくことは叶わないでしょうか?
何卒よろしくお願いいたします。 -
投稿者投稿