質問編集履歴

2

該当のソースコード

2021/02/11 00:45

投稿

izumi55
izumi55

スコア6

test CHANGED
File without changes
test CHANGED
@@ -46,7 +46,13 @@
46
46
 
47
47
 
48
48
 
49
+
50
+
49
51
  ### 該当のソースコード
52
+
53
+
54
+
55
+ ```PHP
50
56
 
51
57
  function my_set_cart_fees_shipping_charge($shipping_charge, $carts, $entries) {
52
58
 
@@ -107,31 +113,3 @@
107
113
  add_filter('usces_filter_set_cart_fees_shipping_charge', 'my_set_cart_fees_shipping_charge', 10, 3);
108
114
 
109
115
  ```
110
-
111
-
112
-
113
- ### 該当のソースコード
114
-
115
-
116
-
117
- ```ここに言語名を入力
118
-
119
- ソースコード
120
-
121
- ```
122
-
123
-
124
-
125
- ### 試したこと
126
-
127
-
128
-
129
- ここに問題に対して試したことを記載してください。
130
-
131
-
132
-
133
- ### 補足情報(FW/ツールのバージョンなど)
134
-
135
-
136
-
137
- ここにより詳細な情報を記載してください。

1

該当のソースコード

2021/02/11 00:45

投稿

izumi55
izumi55

スコア6

test CHANGED
File without changes
test CHANGED
@@ -33,3 +33,105 @@
33
33
  簡単なカスタマイズで可能なのであればやってみたいと思っています。
34
34
 
35
35
  よろしくお願いいたします。
36
+
37
+
38
+
39
+
40
+
41
+ ###
42
+
43
+ ………大変失礼いたしまいた。
44
+
45
+ PHPまったくの素人で、6個単位で計算して…と思ったのですが、
46
+
47
+
48
+
49
+ ### 該当のソースコード
50
+
51
+ function my_set_cart_fees_shipping_charge($shipping_charge, $carts, $entries) {
52
+
53
+ global $usces;
54
+
55
+ $unit_border = 6;
56
+
57
+
58
+
59
+ foreach($carts as $cart) {
60
+
61
+ $quantity = $cart['quantity'];
62
+
63
+ if($quantity > $unit_border) {
64
+
65
+ $shipping_charge_by_unit = 0;
66
+
67
+ $item_shipping_charge_id = get_post_meta($cart['post_id'], '_itemShippingCharge', true);
68
+
69
+ $opt_shipping_charges = $usces->options['shipping_charge'];
70
+
71
+ foreach($opt_shipping_charges as $opt_shipping_charge) {
72
+
73
+ if($item_shipping_charge_id == $opt_shipping_charge['id']) {
74
+
75
+ foreach($opt_shipping_charge['JP'] as $key => $value) {
76
+
77
+ if($key == $entries['delivery']['pref']) {
78
+
79
+ $shipping_charge_by_unit = $value;
80
+
81
+ break;
82
+
83
+ }
84
+
85
+ }
86
+
87
+ break;
88
+
89
+ }
90
+
91
+ }
92
+
93
+ $add_shipping_charge = $shipping_charge_by_unit * (intdiv($quantity - 1, $unit_border));
94
+
95
+ $shipping_charge = $shipping_charge + $add_shipping_charge;
96
+
97
+ }
98
+
99
+ }
100
+
101
+
102
+
103
+ return $shipping_charge;
104
+
105
+ }
106
+
107
+ add_filter('usces_filter_set_cart_fees_shipping_charge', 'my_set_cart_fees_shipping_charge', 10, 3);
108
+
109
+ ```
110
+
111
+
112
+
113
+ ### 該当のソースコード
114
+
115
+
116
+
117
+ ```ここに言語名を入力
118
+
119
+ ソースコード
120
+
121
+ ```
122
+
123
+
124
+
125
+ ### 試したこと
126
+
127
+
128
+
129
+ ここに問題に対して試したことを記載してください。
130
+
131
+
132
+
133
+ ### 補足情報(FW/ツールのバージョンなど)
134
+
135
+
136
+
137
+ ここにより詳細な情報を記載してください。