Pocket

最近、お客様のメールにカートに商品が入らないという現象があるという相談を受けた。
このあたりを読んでみると、原因として、「サーチエンジン対策のURLを使用」をtrueにしていて、Googleのリンクをクリックして訪れたユーザにそのような現象が多いという。
http://lists.sourceforge.jp/mailman/archives/tep-j-general/2007-September/018467.html

私の経験した事例では、ログインするページによって、正常にログイン状態にならなかったことがあった。どちらも、カートに入らなかったり、ログインできない症状は確実に再現するということはないため修正が困難だ。

 確実に修正するには、クッキーとセッションの処理についてosCommerce内部を知る必要がある。osCommerceはクッキー内にセッションIDを格納する。このクッキーが正常に機能していないと、ログインも購入もできないことになる。カートに入らない現象は、GoogleにキャッシュされたセッションIDが原因だろう。無効なセッションIDで商品ページを表示しカートに入れるボタンをクリックしたが、その時点で無効なセッションIDを廃棄する作業をして、新たなセッションIDを生成するのでカートに入らないと購入者は感じるのだと思う。
無効なセッションIDに対する対策を行うことで解決するはずだ。PHPのセッションやクッキーに関する設定も確認しておきたい。

私の事例では、ログイン時に確実にクッキーを生成することで、ログインできるようにした。ついでに自動ログイン機能を追加したことで購入者の操作性も向上させた。