去年开始接触基于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~一起交流学习。

再谈Weiphp公众平台开发——1、增加插件的更多相关文章

  1. 再谈Weiphp公众平台开发——1、成语接龙插件

    易错点,注意插件的命名 1.创建插件.在weiphp管理后台创建成语接龙插件,勾选安装后立即启用,不需要配置项和管理列表.点“确定”完成插件的创建. 2.安装插件. 3.检测插件是否成功安装.返回到w ...

  2. 微信公众平台开发:Web App开发入门

    WebApp与Native App有何区别呢?Native App:1.开发成本非常大.一般使用的开发语言为JAVA.C++.Objective-C.2.更新体验较差.同时也比较麻烦.每一次发布新的版 ...

  3. [转]抢先Mark!微信公众平台开发进阶篇资源集锦

    FROM : http://www.csdn.net/article/2014-08-01/2820986 由CSDN和<程序员>杂志联合主办的 2014年微信开发者大会 将于8月23日在 ...

  4. Senparc.Weixin.MP SDK 微信公众平台开发教程(十七):个性化菜单接口说明

    前不久微信上线了个性化菜单接口,Senparc.Weixin SDK也已经同步更新. 本次更新升级Senparc.Weixin.MP版本到v13.5.2,依赖Senparc.Weixin版本4.5.4 ...

  5. 【原创】【2015最新】微信公众平台开发手把手入门之一:缘起微信公众号(PHP,MYSQL, BAE)

    最近因为业务的需要,老板布置做了两个月简单的的微信公众平台开发,从网上搜了一些资料,实话说资料不多. 在参考学习的过程中也遇到了不少难缠的小问题,虽然不难逾越,但是确实浪费了时间. 我发现网上仅有不多 ...

  6. Senparc.Weixin.MP SDK 微信公众平台开发教程(四):Hello World

    =============  以下写于2013-07-20 ============= 这一篇文章其实可以写在很前面,不过我还是希望开发者们尽多地了解清楚原理之后再下手. 通过上一篇Senparc.W ...

  7. Senparc.Weixin.MP SDK 微信公众平台开发教程(七):解决用户上下文(Session)问题

    从这篇文章中我们已经了解了微信公众平台消息传递的方式,这种方式有一个先天的缺陷:不同用户的请求都来自同一个微信服务器,这使得常规的Session无法使用(始终面对同一个请求对象,况且还有对方服务器Co ...

  8. Senparc.Weixin.MP SDK 微信公众平台开发教程(十二):OAuth2.0说明

    紧接上一篇<Senparc.Weixin.MP SDK 微信公众平台开发教程(十一):高级接口说明>,这里专讲OAuth2.0. 理解OAuth2.0 首先我们通过一张图片来了解一下OAu ...

  9. Senparc.Weixin.MP SDK 微信公众平台开发教程(十四):请求消息去重

    为了确保信息请求消息的到达率,微信服务器在没有及时收到响应消息(ResponseMessage)的情况下,会多次发送同一条请求消息(RequestMessage),包括MsgId等在内的所有文本内容都 ...

随机推荐

  1. Repodata is over 2 weeks old. Install yum-cron? Or run: yum makecache fast

    Repodata is over 2 weeks old. Install yum-cron? Or run: yum makecache fast的解决方法: 在命令行输入:yum clean al ...

  2. 面向对象编程OOP-1

    在下面的例子中, 我们定义了 Student类作为 Person类的子类. 之后我们重定义了sayHello() 方法并添加了 sayGoodBye() 方法 // 定义Person构造器 funct ...

  3. 安卓apk与swiper文字版滚动条

    浏览器基础端代码 <!-- Swiper --> <div class="swiper-container"> <div class="sw ...

  4. Nginx IP访问控制,只允许指定的IP地址访问

    Nginx可以进行IP访问控制,配置指定的IP地址访问服务器网站 今天领导提出一个新的业务需求,网站上线时让外部用户在上线时间段访问到的页面是维护页面,公司内部员工在上线时段可用正常访问公司的网站. ...

  5. sqlserver权限体系(下)

    简介 在上一篇文章中,我对主体的概念做了全面的阐述.本篇文章接着讲述主体所作用的安全对象以及所对应的权限. 理解安全对象(Securable) 安全对象,是SQL Server 数据库引擎授权系统控制 ...

  6. 由Collections.unmodifiableList引发的重构

    原文  http://www.cnblogs.com/persist-confident/p/4516741.html 今天阅读源码的时候,无意中看到了Collections.unmodifiable ...

  7. 什么时候使用tab键来对齐代码和代码的风格

    在大括号嵌套语法中, 最好是左右(前后) 大括号单独占一行, 这样的嵌套关系最清晰 也就是说, c/c++的风格是最清晰的. 而java php将 左大括号放在上一行的末尾, 稍次一点. 不过在if ...

  8. php中关于 left join 的分页显示

    /* * 统计商机搜索总条数信息 * ftt * 2015-11-10 10:13:15 */ public function getBusinessCount($btype='',$buname=' ...

  9. shell学习之路:流程控制(if)

    1.单分支if条件语句 if [ 条件判断式 ];then 程序 fi 或者 if [ 条件判断式 ] then 程序 fi 注意事项: 1.if语句使用fi结尾,和一般语言使用大括号结尾不同 2.[ ...

  10. 2015年12月13日 spring初级知识讲解(四)面向切面的Spring

    2015年12月13日 具体内容待补充...