久しぶりの更新になります。
有り難くも、ユーザー様から【オートメーカーもしも】の機能に関して、いろいろご意見をいただけるようになりました。
私自身、システム販売が目的というより、プログラム作成を楽しんでいる、というのが正直なところです。
◎価格帯でカテゴリ表示させたい
あるユーザー様から、左メニューのカテゴリを、価格帯で選択、表示できないか?というご要望がございました。現在のシステムでは、キーワードで商品名またはタグから検索し、該当した商品のリストを表示するというものです。
作成していくと、いろんな条件で、商品群を分類したくなりますね。
上級者向けに、検索条件を自分でカスタマイズできるような仕組みを考えてみようと思います。
バージョン2に盛り込むかどうか検討中です。
バージョン2は、かなり強力なツールとなりますので、できるだけ早く、既存ユーザー様にリリースしたいと考えております。
「もしもドロップシッピング」で、一生懸命、商品を選んでやっとサイト構築したと思ったら、すぐ販売終了になってしまう商品も多いですね。
結局、最初は頑張っても、そのうち面倒になってしまいがち。
そこで、商品CSVを使って、大量に、一気にサイト構築できればいいなぁ、と思って開発したのがこの、「オートメーカーもしも」。
ところが、商品CSVって、もしも側で毎日更新されているんですよね。
毎日、ファイルサイズがでかいCSVを開いて、データベースに登録するのは容易ではない...。
完全に自動化したい...と、ずっと調べて、やっと完成しました。
全自動更新可能なツールが。
プログラムの手順は、
(1)もしもの商品CSVをダウンロード(サーバーに自動で)
(2)キーワードで必要な行を抽出。
(3)カンマで項目を処理。(これが難しかった)
(4)SQLiteデータベースを作成、登録。
(5)以上の操作を、すべてスクリプトで記述し、CRONで毎日実行。
これで、完全自動化の出来上がり。
このプログラムに取り組んだおかげで、大変勉強になりました。
レンタルサーバーの癖も分かるようになってきました。
さて、次は何を作ろうか。
「オートメーカーもしも」の次期バージョンに組込もうと考えている「在庫チェッカー」。
現在試運転中ですが、動作速度が遅くて、どうしようか迷っています。
商品情報を表示する際に、販売ページを読みにいく仕組みなのですが、商品点数が多ければ多い程、読み込みに時間がかかっています。当然と言えば当然なんですが、他にうまい方法を探しています。
1つの商品を、1ページで表示させる場合には、「在庫チェッカー」は全く問題がありませんが、リスト表示にした時がネックです。
他の方の方法をいろいろ参考にしましたが、手動で在庫チェックプログラムを動かして、フラグを保存するようです。この処理に数分かかるとのこと。この場合でも、在庫状況はリアルな情報ではありません。
動作が遅いのは割り切って使うか、詳細ページで初めて在庫状況を表示させるか。
「もしも」さんが在庫情報をAPIで提供してくれれば、一番いいのに...。
CSSでレイアウトをしていると、特定のブラウザだけ、思う通りに表示されないことがあります。
そのような問題を回避するための裏技を紹介。
■IE6以下用
◎スターハック
* html #hack { color:#000000; }
対応ブラウザ:IE4〜6、MacIE4〜5
セレクタの前に【* html 】をつける。
◎アンダースコアハック
#hack { _color:#000000; }
対応ブラウザ:IE4〜6
プロパティの前に【_】アンダースコアをつける。
■IE7用
*:first-child+html #hack { color:#000000; }
対応ブラウザ:IE7
セレクタの前に【*:first-child+html】をつける。
■IE6、IE7用
#hack { /color:#000000; }
対応ブラウザ:IE6、IE7
プロパティの前に【/】をつける。
■IE6のみ除外
#hack { color /**/:#000000; }
対応ブラウザ:IE7、IE8、Firefox、Safari、Opera、Chrome
プロパティの後ろに【/**/】をつける。
■Firefox用
#hack { color:#000000; }
#hack, x:-moz-any-link { color:#333333; /* Fx 1.0 以降に適用される */}
#hack, x:-moz-read-only { color:#666666; /* Fx 1.5, 2.0 以降に適用される */}
#hack, x:-moz-broken { color:#999999; /* Fx 3.0 以降に適用される */}
#hack, x:x{ color:#000000; }