zoukankan      html  css  js  c++  java
  • 再谈Weiphp公众平台开发——1、增加插件

          去年开始接触基于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 AddonsMyhelloModel;
    use HomeModelWeixinModel;
                
    /**
     * 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."
    ";
            }
            $ans.="
    ";
            foreach($keywordArr as $key=>$rs)
            {
                $ans.="[".$key."]=".$rs."
    ";
            }*/
            
            if($config['reply_type']==0)
                $this->replyText($title."
    ".$time);
            else{
                $articles[0]=array(
                    'Title'=>$config['title'],
                    'Description'=>$config['desc'],
                    'PicUrl'=>$picurl,
                    'Url'=>$url
                );
                $this->replyNews($articles);
            }
        }
    }

    7、编辑配置项。在后台配置页面填写配置信息,上传封面图片,并点“确定”提交配置项。

    8、微信测试。在微信中回复“我的插件”或者“MyHello”时,根据配置项中选择的回复类型是“文本消息”还是“单图文消息”来进行回复。

    欢迎关注我的个人测试公众账号:FM1994~一起交流学习。

  • 相关阅读:
    建立Azure Dev Ops持续集成和持续交付(CICD)(四、使用 Azure Pipelines 建立CICD)
    建立Azure Dev Ops持续集成和持续交付(CICD)(三、准备好Azure DevOps的帐号并上传代码)
    建立Azure Dev Ops持续集成和持续交付(CICD)(二、准备好ServicePrincipal并配置相应的权限)
    建立Azure Dev Ops持续集成和持续交付(CICD)(一、准备好Azure Web App资源)
    Jquery.Datatable 控件后端分页实例 (后台使用ashx、aspx-webmethod)
    c# 将object尝试转为指定对象
    c# 生成随机数
    http跳转https
    解决sqlserver数据库表空间不自动释放问题
    windowsSevice程序和topshelf程序创建服务对比
  • 原文地址:https://www.cnblogs.com/zeze/p/5987442.html
Copyright © 2011-2022 走看看