去年开始接触基于Weiphp的公众平台开发,一直没时间好好整理一下。
下面开始讲解第一个自定义weiphp插件:MyHello的开发流程。
1、插件创建。在weiphp管理后台依次点击“插件管理->创建插件”进入插件创建页面,填写插件的标识名、插件名、版本、作者、描述等信息,勾选“安装后是否启用”、“是否需要配置”两项,点击“确定”完成插件的创建。
2、插件安装。在插件管理列表中点击“安装”完成插件的安装。
3、插件管理。返回到weiphp管理前台,可以看到MyHello插件已经成功安装。
4、改写配置文件。在weiphp的addons目录下默认生成的MyHello插件文件夹下面改写默认生成的config.php,添加如下所示配置项。
<?php return array( 'title'=>array(//配置在表单中的键名 ,这个会是config[random] 'title'=>'插件名称',//表单的文字 'type'=>'text', //表单的类型 'value'=>'MyHello', ), 'cover'=>array(//配置在表单中的键名 ,这个会是config[random] 'title'=>'封面',//表单的文字 'type'=>'picture', //表单的类型 'value'=>'', ), 'desc'=>array(//配置在表单中的键名 ,这个会是config[random] 'title'=>'描述',//表单的文字 'type'=>'textarea', //表单的类型 'value'=>'第一个自定义weiphp插件', ), 'reply_type'=>array(//配置在表单中的键名 ,这个会是config[random] 'title'=>'回复类型',//表单的文字 'type'=>'radio', //表单的类型 'options'=>array( '0'=>'文本消息', '1'=>'单图文消息', ), 'value'=>'0', ), );
5、查看配置项。可以看到配置文件已经正常响应。
6、微信响应。为WeixinAddonModel.class.php中编写微信响应代码。
<?php namespace Addons\Myhello\Model; use Home\Model\WeixinModel; /** * Myhello的微信模型 */ class WeixinAddonModel extends WeixinModel{ function reply($dataArr, $keywordArr = array()) { $config = getAddonConfig ( 'Myhello' ); // 获取后台插件的配置参数 //dump($config); $title=$config['title']; $desc=$congig['desc']; $picurl=$config['cover']?get_cover_url($config['cover']):''; $url="http://baidu.com"; $time=date('Y-m-d H:i:s',time()); /* $ans=''; foreach($dataArr as $key=>$rs) { $ans.="[".$key."]=".$rs."\n"; } $ans.="\n"; foreach($keywordArr as $key=>$rs) { $ans.="[".$key."]=".$rs."\n"; }*/ if($config['reply_type']==0) $this->replyText($title."\n".$time); else{ $articles[0]=array( 'Title'=>$config['title'], 'Description'=>$config['desc'], 'PicUrl'=>$picurl, 'Url'=>$url ); $this->replyNews($articles); } } }
7、编辑配置项。在后台配置页面填写配置信息,上传封面图片,并点“确定”提交配置项。
8、微信测试。在微信中回复“我的插件”或者“MyHello”时,根据配置项中选择的回复类型是“文本消息”还是“单图文消息”来进行回复。
欢迎关注我的个人测试公众账号:FM1994~一起交流学习。