A-A+
ecshop系统注册送红包的功能如何实现
现在都在送红包了,尤其2016年,微信支付宝红包满天飞,各种电商平台红包满天飞,所以 ecshop 系统平台电商也不能甘拜下风了,ecshop 早就推出了送红包的功能,这不,在2016年的时候就有一个客户想要开发一下 ecshop 注册会员送红包的功能,只要注册就有红包推送,好吧,幸好,ecshop 有其红包的核心,否则我还真不知道如何下手呢,下面夏日博客就把方法分享下来,小小的二次开发哦。。
第一步,先在 ecshop 后台添加一种红包的类型,可以命名为“注册送红包”
第二步,打开 includes/lib_common.php 文件,在文件的最后一个 ?> 符号前面添加一个函数,如下所示:
- function send_register_bonus($user_id,$bid=0)
- {
- if($bid ==0)
- {
- $bid = $GLOBALS['db']->getOne("sel ect type_id from " . $GLOBALS['ecs']->table('bonus_type') . "where type_name ='注册送红包' order by type_id desc limit 1 " );
- }
- if(! $bid)
- {
- return false;
- }
- $user_info = $GLOBALS['db']->getRow("sel ect user_name, email from " . $GLOBALS['ecs']->table('users') . "where user_id ='$user_id' " );
- $bonus_type = $GLOBALS['db']->getRow("SELECT * FROM " . $GLOBALS['ecs']->table('bonus_type') .
- " WHERE type_id = '$bid'");
- if(! $bonus_type) return false;
- /* 向会员红包表录入数据 */
- $sql = "INSERT INTO " . $GLOBALS['ecs']->table('user_bonus') .
- "(bonus_type_id, bonus_sn, user_id, used_time, order_id, emailed) " .
- "VALUES ('$bid', 0, '$user_id', 0, 0, " .BONUS_MAIL_SUCCEED. ")";
- $GLOBALS['db']->query($sql);
- $tpl = get_mail_template('send_bonus');
- if(! $tpl) return false;
- $today = local_date($_CFG['date_format']);
- /* 发送邮件通知 */
- $GLOBALS['smarty']->assign('user_name', $user_info['user_name']);
- $GLOBALS['smarty']->assign('shop_name', $GLOBALS['_CFG']['shop_name']);
- $GLOBALS['smarty']->assign('send_date', $today);
- $GLOBALS['smarty']->assign('sent_date', $today);
- $GLOBALS['smarty']->assign('count', 1);
- $GLOBALS['smarty']->assign('money', price_format($bonus_type['type_money']));
- $content = $GLOBALS['smarty']->fetch('str:' . $tpl['template_content']);
- send_mail($user_info['user_name'], $user_info['email'], '注册送红包', $content, $tpl['is_html']);
- }
- ?>
第三步,修改 lib_passport.php 文件的 register 函数,如下所示:
- /* 注册送积分 */
- if (!emptyempty($GLOBALS['_CFG']['register_points']))
- {
- log_account_change($_SESSION['user_id'], 0, 0, $GLOBALS['_CFG']['register_points'], $GLOBALS['_CFG']['register_points'], $GLOBALS['_LANG']['register_points']);
- }
- /***注册送红包**/
- send_register_bonus($_SESSION['user_id']);
- /*推荐处理*/
- $affiliate = unserialize($GLOBALS['_CFG']['affiliate']);
好了,这个时候只要注册就有红包送哦,我们看最后修改的这个函数,其中:
- send_register_bonus($_SESSION['user_id']);
这一段是新加的注册送红包的代码,其它的不变。。
红包这么流行 各平台都在上线红包功能
现在都是红包时代了。