此方法来自于春哥网站,单独摘抄过来做个笔记。需要B2主题版本 3.9.5+。
通过代码给用户发送一条消息记录
\B2\Modules\Common\Message::update_data([
'date'=>current_time('mysql'),//消息时间,保持默认即可
'from'=>$user_id,//谁发送的消息,如果是0 则为系统发布的消息,其他则是发送消息人的用户ID
'to'=>$post_author,//接收消息的人,也就是用户的ID
'post_id'=>$post_id,//此消息关联的文章、帖子等的ID,如果不关联,请填写0
'msg'=>'某某给您的文章点了赞',//发布的消息内容
'type'=>'post_up_cancle',//消息类型:同一个用户有N条未读消息时,同样消息类型的消息会合并显示,此处只做此区分,通常来说您可以随便起名,但是不要和主题里面的消息类型重复了。
'type_text'=>__('点赞','b2'),//消息标题,会显示在前端消息列表中
'old_row'=>1//同类型的未读消息,是否合并。如果使用,此参数保留,如果不合并,此参数直接删除即可。
]);
通过代码,给用户添加或者减少积分、余额
\B2\Modules\Common\Gold::update_data([
'date'=>current_time('mysql'),//财富变更时间,保持默认即可
'to'=>$post_author,//要变更的人,比如你给张三增加积分,此处则为他的用户ID
'gold_type'=>0,//要变更的是积分还是余额,0为积分,1为余额
'no'=>-$credit,//要变更的数值,正数为增加,负数为减少
'total'=>$total,//变更后当前用户的剩余积分或者余额,您也可以删除此参数,则系统会自动计算,并记录到数据库。
'post_id'=>$post_id,//财富关联的文章ID,如果没有,请填0
'msg'=>'某某给您增加了100积分',//变更说明,此项会显示在用户财富页面中
'type'=>'post_up_cancle',//财富类型,此处用以区分不同的财富类型,通常您可以随便起名,但是最好不要和主题中的已经使用了的type冲突
'type_text'=>__('增加了积分','b2'),//财富变更标题,此处尽量短小,随便自定义
'old_row'=>1//同类型的未读消息,是否合并。如果使用,此参数保留,如果不合并,此参数直接删除即可。通常这个参数是不需要的,删除即可。
]);