【メモ】「Welcart Basicでトップページに商品が表示されなくなった」問題に対処

先日納品したECサイトを管理している友人から「トップページに商品が表示されないんだけど」的な問い合わせがあってなかなかハマったのでメモ






「条件に一致する投稿が見つかりませんでした。」

ECサイトはWordPressをベースといてECサイトを構築出来るプラグイン「Welcart」を使用し、テーマにはオフィシャルの無料テーマ「Welcart Basic」を使用しています。開発時を含めこれまでは登録した商品が一覧表示されていたんですけど、いつの間にかこんな表示になってしまったとのこと。


Welcart Basic


条件に一致する投稿が見つかりませんでした。


Oh…なんだこれは?



結論:テンプレートのカスタマイズを確認しましょう

トップページにどんな商品を表示するかはテンプレートのカスタマイズで設定出来ます。デフォルトではこんな感じで表示されていて、「商品ジャンル」カテゴリーに紐付けられた商品のうち最新10件が表示されるようになっています。







ところがこのECサイトの設定を確認したところこうなってました。






どうやらいつの間にかこのカテゴリー「商品ジャンル」を削除してしまっていたみたいです。おかげで文字通り「表示する商品が見つからない」という事態に。


対応:カテゴリーを復活させて登録し直し

自分で登録しても良いんですが、一番簡単なのは、いったん「Welcart」プラグインを無効にして(アンインストールはしない)再び有効にする、です。有効にすると失われたカテゴリーを自動的に追加してくれます。

またトップページに表示するカテゴリーは「商品ジャンル」でなくてもいいので、例えば「トップページ表示」というカテゴリーを「商品」カテゴリーの下に作って、それを紐付けることでも実現出来ます。もちろん既存カテゴリーを設定するのでもOK。


やれやれ直って良かったです。



ちなみに:ハマった時間のほとんどの間ソース読み込んでました

「Welcart」プラグインは最近かなり大きめのアップデートがあって、データベースが更新されたり画像の登録ルールが変わってコンバートが必要になったりしていたので、最初はそのせいだと思ってたんですよね。なのでWelcart Basicのソースコードを読み込んでたんですけど、面白いですね。結果的に解決には至りませんでしたが基本クエリのカスタマイズの仕方などいろいろと勉強になりました。なるほど、こうなってたんだ。


最近の業務において日頃からよくわからん実装に起因したバグで迷惑するという経験が多いので、ソースコード確認するっての癖になってる感がありますね。大事なことなんですけど、そもそもバグがない方が嬉しいなあ。。