osCommerce 項目選択肢と在庫選択肢

osCommerceの商品部分のなかでオプションは特に面倒な部分だ。 そのお客様の使用しているバージョンでは、項目選択肢を使うと在庫数のチェックが正確にできなかった。ソースを確認すると項目選択肢はまったく考慮されていないようだった。項目選択肢を有効にすると商品型番に{nd:数字}が、在庫選択肢を有効にすると{md:数字}のような文字列が追加される。在庫選択肢は、この文字列を考慮した仕組みがはじめから実装されていたが、項目選択肢を考慮した機能はなかった。 {nd:数字}と{md:数字}が付いている場合 {nd:数字}が付いている場合...

osCommerce 緊急の依頼

私の仕事ではほとんどメールのやりとりのみで作業が完了する。 先日、ひさしぶりに顧客のひとりから電話がかかってきた。こういうときは、緊急の依頼が多い。話を聞いてみると、やはり、そうだった。ある理由で管理画面に入れなくなったという。いつもお世話になっているお客様なので休日だったがすぐに仕事にとりかかった。 いくつか方法を検討して、管理者用のIDとパスワードを登録するプログラムを作って、数時間後無事解決した。...

osCommerceを軽快に3 ページキャッシュ

データベースを調整すると驚くほど処理が速くなるが、ページキャッシュを適切に設定するとさらに速くなる。 ページキャッシュは、カテゴリメニューなどに使用され、データベースの負荷を下げる機能がある。たとえば、トップページのカテゴリメニューは画面が表示されるたびにデータベースから値を取得して、PHPで整形してHTMLとして正しい形式にして出力される。...

osCommerceを軽快に2 テーブル分割

注文管理関連のテーブルは、何年もサイトを運営していると何十万件というデータが保存されることになる。1つのテーブルに大量のデータが保管されると、新規データの登録時に時間がかかる。そこで、テーブルを分割するというアイデアが浮かんでくるが、テーブルの分割をプログラム側で対応すると、手間がかかりすぎるし、切り替え時にサーバを止めるタイミングも難しい。...

osCommerceを軽快に1 複合インデックス

osCommerceやZen Cartのバージョンによっては注文関連のテーブルにインデックスを設定するとパフォーマンスが改善される。 ただし、丁寧にすべてのカラムごとに1つのインデックスを設定すると、インデックスが効果的に機能しない。...