今天来说说当有新的会员或者管理人员发布了新的内容,后台有内容需要审核时,通过微信通知审核成员的实现方法。
具体步骤,打开以下目录中的config/hooks.php文件,编辑加入以下代码。
\Phpcmf\Hooks::on('module_verify_after', function($data) { // 会员发布内容审核时,通知后台审核员· $row = dr_string2array($data['content']); log_message('error', '《'.$row['title'].'》进入审核通知钩子'); $vid = max(0, $data['vid']); $cache = \Phpcmf\Service::C()->get_cache('verify'); if ($cache && $vid && $cache[$vid]) { $verify = $cache[$vid]; if ($verify['value']['role']) { $role = \Phpcmf\Service::C()->get_cache('auth'); $rid = $verify['value']['role'][$data['status']]; // 通知的角色 if ($rid) { $user = \Phpcmf\Service::M()->table('admin_role_index')->where('roleid', $rid)->getAll(); if ($user) { foreach ($user as $t) { $rt = \Phpcmf\Service::M('member')->weixin_template($t['uid'], '这里填写你申请微信模板消息的id号', [ // 这里的参数你需要根据你的模板消息参数来设置,格式为下面的数组参数 'keyword1' => [ 'value' => $row['title'], 'color' => '', ], 'keyword2' => [ 'value' => dr_date(SYS_TIME), 'color' => '', ], 'remark' => [ 'value' => '请尽快登陆后台处理', 'color' => '', ], ] ); if ($rt['code']) { log_message('error', '《'.$row['title'].'》审核通知成员('.$t['uid'].')成功'); } else { log_message('error', '《'.$row['title'].'》审核通知成员('.$t['uid'].')失败:'.$rt['msg']); } } } else { log_message('error', '《'.$row['title'].'》审核的角色组的成员('.$vid.')不存在'); } } else { log_message('error', '《'.$row['title'].'》审核的角色组('.$vid.')不存在'); } } else { log_message('error', '《'.$row['title'].'》审核id('.$vid.')没有设置流程'); } } else { log_message('error', '《'.$row['title'].'》审核id('.$vid.')不存在'); } });
其中下面的代码;
log_message
是日志记录,正式上线的时候可以取消这个函数。