投稿の際は下記の情報をお書き添えください。
-------------------------------------------
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)
症状を確認したブラウザ:
サーバー【重要】:(会社名、サービス名)
--------------------------------------------
フォーラムへの返信
-
投稿者投稿
-
9steps参加者
いつもお世話になっております。Welcartの機能アップやバグ対応など、絶え間ないバージョンアップをいつもありがとうございます。素晴らしいプラグインを作っていただき感謝です。
さて、本トピックについてです。【商品詳細ページタイトル】にHTMLタグが入っている場合に、保存時にhtml タグ(特殊文字)を変換する処理されるとのことですが、更新を繰り返すと下記のようにhtmlエンティティが変換されていくため、結果として【商品詳細ページタイトル】の表示がおかしくなってしまいます。
例:
初めの 「ダミー商品のタイトル<br />その1」
更新1回目「ダミー商品のタイトル&lt;br /&gt;その1」
更新2回目「ダミー商品のタイトル&amp;lt;br /&amp;gt;その1」
更新3回目「ダミー商品のタイトル&amp;amp;lt;br /&amp;amp;gt;その1」脆弱性の対策上、必要な処理かとは存じますが、2回目、3回目の更新時に&(アンパサント)が変換されて、文字列が増えてしまうようです。
とりあえず、更新時に【商品詳細ページタイトル】のタグ部分を毎回訂正することで対処しておりますが、もし可能であれば修正対応いただけると幸いです。
——————————————-
WordPress のバージョン:4.4.2
Welcart のバージョン:1.8.1.1604112
ご利用のテーマ:デフォルトテーマをベースにカスタマイズ
症状を確認したブラウザ:Firefox 45.0.2
サーバー(会社名、サービス名):sixcore
SSLの利用:なし
WordPress のパーマリンク設定: /%category%/p%post_id%
——————————————–9steps参加者nanbu様、
ご返信ありがとうございます。
その後、手元のPC環境で移動中のスマホでテザリングしてIPがころころ変わってしまうような状況を想定して、いくつの決済種別で購入テストをしてみました。購入内容確認後、決済する直前でIPを変更してから注文するボタンを押して確認してみました。
◆ [Welcart Shop システム設定] – [SSLを使用する]:オフ
[SSLを使用する]をオフにしている環境では、決済時にIPが変わっても決済種別にかかわらず特に問題なく受発注処理が行われました。
◆ [Welcart Shop システム設定] – [SSLを使用する]:オン
決済種別に「振込み(前払い)」、「代引き」、「コンビニ決済」をそれぞれ選択して試したところ、接続IPを変更してから注文するボタン(決済ボタン)を押すと、完了ページが表示されず、トップページにリダイレクトされてしまい、Welcartで受発注処理が行われませんでした。
決済種別に「カード決済(ルミーズ)」を選択して、接続IPを変更してから注文するボタン(決済ボタン)を押すと、「ご注文が完了しませんでした。(error 1)」が表示され、Welcartの受発注処理は行われませんでした。しかし、ルミーズのカード決済は通ってしまい、ルミーズからは、カード決済通知メールが購入者と管理者に届いてしまいます。
以上のことから、[SSLを使用する]:オンにした状況で、IPがころころ変わってしまう購入者がいる場合には、受発注処理が正しく行われず、ルミーズなどの外部リンク型の決済サービスを使っている場合には、決済のみが通ってしまうケースがあるということが判りました。
よって、アドバイスいただいたように、[SSLを使用する]:オフにして全サイトをSSL化することでこの問題を回避できそうです。ただ全サイトSSL化する場合、その他の影響も考慮しなければならないため、まだ実際の環境で試せておりません。上手くいったら改めてご報告致します。
いずれにせよ、決済が絡むショピングサイト上で、購入者のIPアドレスがころころ変わってしまうというのは、セキュリティ的には怪しいと見なすのが普通だと私も思います。なので、決済時にIPが変わってしまった場合には、購入者にエラーを表示して、接続が安定している環境で再度購入してもらうように促すのも手なのかもしれません。決済とセキュリティにかかわる部分なので、簡単にはいかないと存じますが、今後のwelcartのアップデートで何らかの回避策が施されれば幸いです。
Attachments:
You must be logged in to view attached files.9steps参加者nanbu様、
お忙しい中、ご回答どうもありがとうございます。まずサイト全体常時SSL化でやってみます。
まとめて頂いている以下の記事にも関連していそうですね。
一部のスマホで購入ができない
http://support.welcart.com/topic/450/
SSLを有効化すると会員のログイン状態がおかしくなる
http://support.welcart.com/topic/69/今回のケースでは、ログからIPと仕様ブラウザを辿ると、どうやらNTT系のMVNO回線でテザリングしたPC(Windows7)環境から購入した際に発生した問題のようです。様々なネット接続回線やPC・スマホ環境が増えているためややこしいですが、これを一概に「スマホでの購入」と表現してしまうと語弊があるように感じました。
なお、welcartは、ごく一部を除きほとんどの環境でほぼ問題なく安定動作しており、やはりすごいプラグインだなと感心しています。ご尽力に感謝です。
9steps参加者nanbu様、
お世話になります。
早速のご回答とアドバイスをいただきありがとうございます。私の理解が曖昧ではっきりしない部分があるため、再度お伺い致します。
◆質問1
サイト全体をSSL化することで、モバイル接続環境などで頻繁に接続IPが変わってしまう場合でも、問題なく受発注処理が行わるようになるということでよろしいでしょうか?◆質問2
WCEX Mobileの導入だけですと、頻繁に接続IPが変わるようなモバイル回線でテザリングしてPC環境から購入した場合に、同様に受発注処理が正しく行われないケースが出てはこないのでしょうか?「リファラチェックを行う」のチェックを外せばOKなのでしょうか?運用中のサイトは、もともとガラケー・スマホ向け対応しておらず、WCEX Mobileの導入はしておりません。スマホからの購入が全体の1%にも満たないという状況、スマホ向けテーマのカスタマイズや動作テストなどがあるため、導入に踏み切れずにいるところです。とはいえ、これからどんどん増えていく情勢ですので、近々に導入を検討した方が良さそうですね。
お手数をおかけしますが、質問に再度ご回答いただければ幸いです。
なお、現在の購入状況、作業負荷、セキュリティを総合的に考えると、まずサイト全体をSSL化、その後にWCEX Mobileの導入を検討するというのが良さそうですね。
9steps参加者sebastianさん、
フィルタは2つです。ソースを良くご確認ください。
なお、私はwelcartの一ユーザーにすぎません。個々の環境での動作については、お答えいたしかねますのでご了承ください。
もしご利用の環境で確実に動作させる必要があるなばら、有償サポートのご利用をおすすめ致します。
9steps参加者memory_limitを50M→128Mにして確認したところ、無事PDFが表示されるようになりました。ご確認、ご対応いただきありがとうございました。助かりました。
9steps参加者——————————————-
WordPress のバージョン: WordPress 3.8.1
Welcart のバージョン:Version 1.3.13.1403071
ご利用のテーマ: 付属デフォルトテーマをベースにしてオリジナルで作成
症状を確認したブラウザ:Firefox 27.0.1
サーバー(会社名、サービス名): http://www.sixcore.ne.jp/
SSLの利用: あり
WordPress のパーマリンク設定:[カスタム構造] /%category%/p%post_id%
——————————————–お世話になります。
当方の環境でも、Welcartを1.3.13にバージョンアップしてテストしてみたところ、同じ現象になり、500 Internal Server Errorとなるようです。
同環境でVersion 1.3.12.1402033では、問題なくPDFが表示されています。
確認するべき場所などがありましたら、ご教授くだされば幸いです。
9steps参加者度々失礼いたします。
下記のようにgetTax関数を使うことで、端数が出る際に税計算方法の「切捨て、切上げ、四捨五入」の設定が上手く反映されるようになりました。
add_filter('usces_filter_set_cart_fees_total_full_price', 'my_filter_set_cart_fees_total_full_price', 10, 6); function my_filter_set_cart_fees_total_full_price(){ global $usces; $args = func_get_args(); $tax = $usces->getTax( $args[1] ); $total_full_price = $args[1] + $tax + $args[2] + $args[3] + $args[4] + $args[5]; return $total_full_price; }
9steps参加者——————————————-
WordPress のバージョン: 3.8.1
Welcart のバージョン: 1.3.13.1403071
ご利用のテーマ: デフォルトテーマを独自カスタマイズ
——————————————–いつもお世話になっております。
送料に消費税を加算しないようにするため、こちらのフィルターを試してみました。やはり現バージョンではそのままでは動きませんでした。
そこでソースを確認し、次の2つのフィルターをフックしてみたところ、想定通り動くようになりましたのでご報告いたします。
総合計金額をフィルター:
add_filter('usces_filter_set_cart_fees_total_full_price', 'my_filter_set_cart_fees_total_full_price', 10, 6); function my_filter_set_cart_fees_total_full_price(){ global $usces; $args = func_get_args(); $tax = $usces->options['tax_rate']; // 消費税を取得 $total_full_price = $args[1] + ( $args[1] * ($tax / 100) ) + $args[2] + $args[3] + $args[4] + $args[5]; return $total_full_price; }
商品合計をフィルター:
add_filter('usces_filter_set_cart_fees_total_price', 'my_usces_filter_set_cart_fees_total_price', 10, 6); function my_usces_filter_set_cart_fees_total_price(){ $args = func_get_args(); $total_price = $args[1] + $args[2] + $args[3] + + $args[5]; return $total_price; }
ただ上記のフィルターですと、100円単位以下で端数が出る際に、税計算方法の「切捨て、切上げ、四捨五入」の設定が上手く反映されるかちょっと自信がありません。。。
9steps参加者nanbu様、
ご返信をいただき、ありがとうございます。
本来は機種依存文字を使用しないようにするというのが正しいとはいえ、技術的なことをあまり理解していない方が操作するケース、著者や作者などの個人名に旧漢字が含まれているケースなど、なかなか回避しにくい状況がありまして、ご無理をお願いしているようで申し訳ありません。
CSVファイルはエクセルで編集する方がほとんどだと思いますので、やはりShift-JISでのエクスポートが一番現実的だと思いますが、もし文字コードによる文字化けを回避できるようであれば大変助かります。
ご検討・ご検証いただければ幸いです。
いつもサポートしていただき、ありがとうございます。<m(__)m>9steps参加者お世話になります。追記で失礼いたします。
今回の商品一括登録でのCSVインポートについてですが、本来やりたいことは、4月からの消費税変更に対応するため、これまで内税だったものを外税にしたいということです。
- 現在、内税になっている商品価格を一括で外税に変更したい。
- 変更後、会計時に合計金額に消費税を乗じた価格でチェックアウトできるようにしたい。
- 将来的に8%から10%に増税となっても、Welcart Shop 基本設定から税率を変更するだけで済むようにしたい。
以上のことができればOKです。よって本来変更が必要なのは、各SKUの通常価(円)と売価(円)の2つ項目のみです。
CSVインポートの際にこの2つの項目みを上書きし、その他の項目はそのままの状態で更新できれば、とりあえず本文内の機種依存文字については文字コード変換などを挟まずにそのままの状態で維持できるかと思うのですが、そのようなことは可能なのでしょうか?
何か良い方法があれば、アドバイスいただけると助かります。
9steps参加者お世話になります。ご回答をどうもありがとうございました。DLSellerもwelcart同様、カスタマイズが可能であればいけそうな気がしてきました。もう少し検討してみます。
9steps参加者nanbuさま、
いつもお世話になります。「ハイフン2つをサブ画像とする」の件、アドバイスありがとうございます。
テストで「ハイフン2つ」つけた画像名にして、商品詳細本文の「アップロード/挿入」からアップロードしてみたところ、WP(Ver.3.3.1)の仕様なのか、ハイフン1つにファイル名が変更されてしまうようです
例:IMG–0017.jpg をアップロード
↓
タイトル:IMG–0017
ファイル名:IMG-0017.jpg
タイトルは「ハイフン2つ」の状態になっており、問題なくサブ画像として登録されるので、実用上は特に問題はないのですが、注意していないと勘違いしそうですね。
以上、ご報告でした。
[attachment=6542,94]
9steps参加者お世話になります。
決済がらみのため、すぐには対処できない部分がありそうですね。緊急と言うほどのエラーではありませんが、ご確認いただければ幸いです。
開発では、いろいろとご苦労も多いと思いますが、Welcartが良いツールとしてさらに発展していくのを楽しみにしています。いつもありがとうございます。
9steps参加者カートページ、内容確認ページ内の商品サムネイルを変更するためのフック(usces_filter_cart_thumbnail)を利用して、ショッピングカートに入れた際にSKUコードに応じた画像を表示するようにしてみました。
画像ファイル名は、「商品コード-SKUコード.jpg」で決め打ちにして、商品にサブ画像として登録するようにし、ファイル名が一致する画像IDのサムネールを表示するようにしてみました。
やり方は他にもありそうですが、とりあえずご参考までに。
/*
*/
/* テーマファイル内のfunction.phpに記述 */
/* Welcart カート サムネール画像 フィルターフック */
/*
*/
add_filter('usces_filter_cart_thumbnail', 'my_usces_filter_cart_thumbnail', 10, 4);
function my_usces_filter_cart_thumbnail() {
global $usces;
$args = func_get_args();
list($cart_thumbnail, $post_id, $pictid, $i) = $args;
$itemCode = $usces->getItemCode($post_id);;
$pictids = $usces->get_pictids($itemCode);
$cart = $usces->cart->get_cart();
$sku = $cart[$i]['sku'];
$thumbnail_name = "/" . $itemCode . "-" . $sku . ".jpg$/" ;
foreach($pictids as $key => $value) {
$attachments = wp_get_attachment_metadata( $value );
if ( preg_match ($thumbnail_name, $attachments[file]) ) {
$pictid = $value;
}
}
$cart_thumbnail = '<a href="' . get_permalink($post_id) . '">' .
wp_get_attachment_image( $pictid, array(60, 60), true ) . '</a>';
return $cart_thumbnail;
} -
投稿者投稿