会員制ショッピングサイトにする方法

スポンサーリンク

最近読んだ「グロースハック」という本の中で紹介されていた、「Monoco」という女性向け雑貨のECサイト。

会員登録をしないと価格とカートボタンが表示されないという手法で、会員を集めてがっちり儲かっているそう。

Monocoの商品ページ

このような会員制のECサイトも、ある程度Welcartで出来ます。

会員がログインしているかそうでないかを条件判別し、条件が合致する場合には、カートボタンなどを表示させるという、結構単純な方法です。

会員ランクで判別する方法は、以下の過去エントリーで紹介しています。

会員ランクで限定の商品表示 – 過去エントリー

もくじ

  1. 会員がログインしているかどうかの条件分岐の書き方
  2. wc_item_single.phpを使用中テーマに退避
  3. ログイン中の場合だけ、価格とカートボタンを表示
  4. 非ログインユーザーには、ログインボタンと会員登録ページへのリンクを表示
  5. まとめ

1. 会員がログインしているかどうかの条件分岐の書き方

会員がログインしているかどうかは、以下のように条件分岐します。

<?php if(usces_is_login()): ?>
//ここに会員ログイン時に表示させたい内容
<?php else: ?>
//ここに非ログイン時に表示させたい内容
<?php endif; ?>

//ここに会員ログイン時に表示させたい内容」にカートボタンや価格を、「//ここに非ログイン時に表示させたい内容」にログインボタンや会員登録ページへのリンクを、それぞれ入れれば良いことになります。

2. wc_item_single.phpを使用中テーマに退避

商品ページをカスタマイズする時は、専用テンプレートをプラグインフォルダから使用中のテーマにコピーして設置(退避)させる必要があります。

商品ページのテンプレートwc_item_single.phpは、プラグインフォルダの以下の位置にあります。

usc-e-shop/theme/welcart_default/wc_templates/wc_item_single.php

これをコピーし、使用中テーマ内に作ったwc_templatesフォルダ内にペースト。

  • 使用中のテーマ
    • wc_templates
      • wc_item_single.php ←ココ

これで、新たに設置したwe_item_single.phpが優先して読み込まれるようになります。カスタマイズはこちらのファイルにて行います。

3. ログイン中の場合だけ、価格とカートボタンを表示

//ここに会員ログイン時に表示させたい内容」に書くコードです。

例えば、販売価格・数量入力フィールド・カートボタンを表示させたい場合は以下のようになります(単体SKUの場合)。

<?php if( usces_the_itemCprice('return') > 0 ) : ?>//定価の設定がある場合
    <?php _e('List price', 'usces'); ?><?php usces_guid_tax(); ?><?php usces_the_itemCpriceCr(); ?>//定価
<?php endif; ?>
<?php _e('selling price', 'usces'); ?><?php usces_guid_tax(); ?><?php usces_the_itemPriceCr(); ?>//販売価格
<?php _e('Quantity', 'usces'); ?><?php usces_the_itemQuant(); ?><?php usces_the_itemSkuUnit(); ?>//数量入力フィールド
<?php usces_the_itemSkuButton(__('Add to Shopping Cart', 'usces'), 0); ?>//カートボタン
<?php usces_singleitem_error_message($post->ID, usces_the_itemSku('return')); ?>//エラーメッセージ用タグ

Welcart公式サイトにもテンプレートタグのリストがありますので、ご参考に。

Welcart テンプレートタグ一覧 – Welcartコミュニティ

4. 非ログインユーザーには、ログインボタンと会員登録ページへのリンクを表示

//ここに非ログイン時に表示させたい内容」に書くコードです。

ログインボタンと会員登録ページへのリンクを表示させる場合は、以下のようになります。

<?php echo usces_loginout(); ?>//ログインボタン
<a href="<?php echo USCES_NEWMEMBER_URL; ?>"><?php _e('New enrollment for membership.','usces') ?></a>//新規会員登録

それぞれ単純な<a>リンクが出力されますので、class属性を付与するなどしてスタイルシートで装飾して下さい。

6. まとめ

Welcartの標準の会員登録では、住所や電話番号等も入れなければならないので、初期登録はメールアドレスだけでよいMonocoに比べると、登録のハードルは高いと思われます。

登録項目を減らすには、フックを使う等々の更なるカスタマイズが必要になりそうです(未検証)。

会員登録してまで見たい!と思わせられるような商材であることがやはり重要でしょうね。

4 Responses to “会員制ショッピングサイトにする方法”

  1. まこと より:

    Phpのどの部分に記述すればいいのでしょうか?

    • まめ子(管理人) より:

      ご質問の意図を計りかねるのですが、ご自分が表示を変えたい場所に、1のコードを記述すれば宜しいかと存じます。

  2. 太鼓の凡人 より:

    初めまして。非常に興味深く拝見しております。
    会員制ショッピングサイトにする方法となっておりますが、
    新規で会員入力をできないようにしたい(管理側でしか
    登録できない)のですが、/member/member_form.php
    のH5ラグ付近をコメントアウトにしたりと自分の考えうる
    場所は試したのですが、エラーがでるか、何も変わらない
    等、うまくいきません。まめ子様で何かご存じであれば
    お知恵を拝借いただければ幸いです。

    • まめ子(管理人) より:

      新規会員入力のテンプレートは、/wc_templates/member/wc_new_member_page.phpではないでしょうか?ちなみに、Welcart公式サイトのこちらのページあたりが、ファイルの退避のご参考になるかと存じます。

Copyright© 2017 Welcart カスタマイズ ブログ All Rights Reserved.