WordPressにECサイトの機能を持たせるプラグイン「Welcart」のウィジェットで、「welcartベストセラー」というものがあります。
これを使うと注文が多い商品順にリンクを自動で並べて表示させることができるようになります。ウィジェットの管理画面で任意の商品を表示する設定もできる、なかなか使い勝手の良いウィジェットなんですが、デフォルトではテキストリンクのみで、商品画像を表示してくれません。
そこでサムネイルを表示させる方法を調べたのでメモ代わりに投稿します。
functions.phpにコードをコピペでOK
細かいオプションや引数は調べていませんが、とりあえず下記コードををfunctions.phpに加えるだけでサムネイルが表示されました。
<?php //welcartベストセラー サムネイル表示
add_filter( 'usces_widget_bestseller_manual_text', 'my_bestseller', 10, 3);
function my_bestseller(){
$args = func_get_args();
$post_id = $args[1];
$post = get_post($post_id);
$str = usces_the_itemImage(0, 280, 250, $post, 'return' ) . wp_specialchars($post->post_title);
return $str;
};
?>
usces_the_itemImage()のパラメーターは、0→商品のメイン画像、280→画像のwidth、250→画像のheight、のようです。必要に応じてサムネイルのサイズを変更できます。
参考:[解決済み] ベストセラーウィジェットに画像を表示させたい。 « Welcart Forum
参考:usces_the_itemImage @ Welcart オンライン・マニュアル|ECサイト構築プラグイン
初めてWelcartを使いましたが、なかなか使いやすい、考えて作られたプラグインだなーと思いました。オンラインマニュアルも充実していて助かりました。WordPressを構築する手法と同じ感覚で作れるのは本当にやりやすかったです。
EC-CUBEも構築したことがありますが、EC-CUBEはテンプレートエンジンであるsmartyの知識が必要だったり、バージョンによる縛りがきつかったり、本格的なカスタマイズはphpの知識が必要になってきたり、サーバーによってコケたりすることもあってなかなか敷居が高いです(^^;)。
あくまでECサイトがベースであるEC-CUBEに対して、WordPressにECサイト機能をビルトインするWelcart。運営面ではまだどちらが優れているかわかりませんが、構築のしやすさはWelcartに軍配が上がりそうです。
welcartとは?
Welcart はコルネ株式会社が開発している WordPress のプラグインです。このプラグインは WordPress にネットショップ及びその管理システムの機能を提供するものです。
このプラグインにはサンプルテーマが付属されている(有効化の際自動インストールされる)ため、商品登録と基本設定を行えばすぐにネットショップを体験できます。
Welcart は GPLライセンスとなっています。
ご利用に際してGPLに準拠していれば自由に複製、改変、頒布することができます。
引用元:Welcart について @ Welcart オンライン・マニュアル|ECサイト構築プラグイン
functions.phpにコードをコピペするだけでショップサイト表示できましたが、ダッシュボードがホワイトアウトしました。
私だけでしょうか?
>アドミンさん
こんにちは。ダッシュボードが何も表示されなくなったのですね。私が構築したWordPressでは特に問題なかったですよ。この関数を使って納品したサイトは秋ごろに閉鎖になってしまったのですが、それまでWPやWelcartのバージョンをアップしても大丈夫でした。
私の経験上、ダッシュボードで何も表示されくなってしまう場合はfuctions.phpで記述ミスがあった場合や、プラグインが原因なことが多いです。ショップサイトで表示されてダッシュボードだけがだめとなると、ダッシュボードにアクセスした時に稼働する関数やプラグインとぶつかっているのかもしれませんね。
何かトラブルが合った時は、WP本体やプラグインで未更新のものがあればアップデートする、デバッグモードに切り替えてエラー表示がないか確かめる。functions.phpで構文エラーなどが無いか確認する、コードを見てもわからない場合は思い切って他の関数を全て削除してみる、プラグインを全て停止してみる、などなど試してみると原因が特定できることが多かったです。
もしその辺りを試していないのであれば、よかったらお試しくださいね!