admin 发表于 2024-5-25 19:58:23

微擎模块开发时后台参数设置不显示解决办法

之前在做微擎模块开发的时候,在生成初始化模块开发包时,模块管理后台默认是会有参数设置项。但是最近开发模块时发现参数设置无法启用,功能选择不显示。
对比了manifest.xml后,发现问题所在。解决办法:将manifest.xml文件中的<application setting=”false”>值修改成true.
另附对应的Module.php相应的function:
public function settingsDisplay($settings) {
                global $_W, $_GPC;
                load()->func('tpl');
                //点击模块设置时将调用此方法呈现模块设置页面,$settings 为模块设置参数, 结构为数组。这个参数系统针对不同公众账号独立保存。
                //在此呈现页面中自行处理post请求并保存设置参数(通过使用$this->saveSettings()来实现)
                if(checksubmit('setting')) {
                        //字段验证, 并获得正确的数据$data
                        $this->saveSettings($_GPC['data']);
                        message('修改成功',referer(), 'success');
                }
                //这里来展示设置项表单
                include $this->template('setting');
      }再写一个setting.html的demo
{template 'common/header'}
{php load()->func('tpl');}
<div class="panel panel-default">
<div class="panel-heading">
    <h3 class="panel-title">签名设置</h3>
</div>
<div class="panel-body">
    <form class="form-horizontal" method="post" enctype="multipart/form-data">
<div class="form-group">
    <label for="inputPassword3" class="col-sm-2 control-label">关注后回复关键词</label>
    <div class="col-sm-10">
                <input type="text" class="form-control" name="gzhname" value="{php echo $this->module['config']['gzhname']}"/>
    </div>
</div>
    <div class="form-group">
<label for="inputPassword3" class="col-sm-2 control-label"></label>
      <div class="col-sm-10">
      <div class="alert alert-warning alert-dismissible" role="alert">
<button type="button" class="close" data-dismiss="alert" aria-label="Close"><span aria-hidden="true">×</span></button>
<strong>注意:</strong> 关注后回复关键词不要超过4个汉字
</div>
    </div>
      </div>
<div class="form-group">
    <label for="inputPassword3" class="col-sm-2 control-label">二维码</label>
    <div class="col-sm-10">
                {php echo tpl_form_field_image('ewm',$this->module['config']['ewm'])}
    </div>
</div>
<div class="form-group">
<label for="inputPassword3" class="col-sm-2 control-label"></label>
      <div class="col-sm-10">
      <div class="alert alert-warning alert-dismissible" role="alert">
<button type="button" class="close" data-dismiss="alert" aria-label="Close"><span aria-hidden="true">×</span></button>
<strong>注意:</strong> 请将二维码图片尺寸调整为100*100后再上传,否则会错位
</div>
    </div>
      </div>

<div class="form-group">
    <div class="col-sm-offset-2 col-sm-10">
      <input type="submit" value="保存" name="submit" class="btn btn-default" />
          <input type="hidden" name="token" value="{$_W['token']}" />
    </div>
</div>
</form>
</div>
</div>
{template 'common/footer'}OK,就这样!

页: [1]
查看完整版本: 微擎模块开发时后台参数设置不显示解决办法