企业🤖AI智能体构建引擎,智能编排和调试,一键部署,支持私有化部署方案 广告
>[info] 承接shop的嵌入代码工作,不说最后一步,虽说只有一个文件,但是也是比较关键的一步,牵涉到统筹全站的IM开关,请仔细操作! ### 视图层 >[success] 目录文件:shop_admin>shop_admin>views>default>ConfigCtl>imApiCtl.php ###### line:44 整个表单域,对的,你没有看错,就是替换 整个表单域,别问我 为什么这么粗暴吗?因为任性~.~ <!--整个Form用来配置IM 参数的 参考页面操作--> <form method="post" id="im-shop_api-setting-form" name="imSettingForm"> <input type="hidden" name="config_type[]" value="im_api"/> <div class="ncap-form-default"> <dl class="row"> <dt class="tit">IM状态</dt> <dd class="opt"> <div class="onoff"> <input id="im_statu1" name="im_api[im_statu]" value="1" type="radio" <?= (@Yf_Registry::get('im_statu') == 1 ? 'checked':'') ?>> <label <?php if ($im_s != 1){ ?>onclick="return false;"<?php } ?> title="开启" class="cb-enable <?= (@(Yf_Registry::get('im_statu') == 1 && $im_s == 1) ? 'selected':'') ?> " for="im_statu1" id="im_statu01">开启</label> <input id="im_statu0" name="im_api[im_statu]" value="0" type="radio" <?= (@(Yf_Registry::get('im_statu') == 0 || $im_s != 1) ? 'checked':'') ?>> <label <?php if ($im_s != 1){ ?>onclick="return false;"<?php } ?> title="关闭" class="cb-disable <?= (@(Yf_Registry::get('im_statu') == 0 || $im_s != 1) ? 'selected':'') ?>" for="im_statu0" id="im_statu00">关闭</label> </div> <p class="notic"></p> </dd> </dl> <dl class="row"> <dt class="tit"> <label for="site_name">IM URL</label> </dt> <dd class="opt"> <input <?php if ($im_s != 1){ ?>disabled<?php } ?> id="im_url" name="im_api[im_url]" value="<?= @Yf_Registry::get('im_url') ?>" class="w400 ui-input " type="text"/> <!-- <p class="notic">IM又称大用户中心,是我们开发的用于整合多个子系统用户的独立用户中心系统,实现用户的单点登录和登出,用户的统一化管理。</p>--> </dd> </dl> <dl class="row"> <dt class="tit"> <label for="site_name">IM App Token</label> </dt> <dd class="opt"> <input <?php if ($im_s != 1){ ?>disabled<?php } ?> id="im_api_url" name="im_api[im_api_url]" value="<?= Yf_Registry::get('im_api_url') ?>" class="w400 ui-input " type="text"/> <!-- <p class="notic">IM又称大用户中心,是我们开发的用于整合多个子系统用户的独立用户中心系统,实现用户的单点登录和登出,用户的统一化管理。</p>--> </dd> </dl> <dl class="row"> <dt class="tit"> <label for="site_name">IM App Key</label> </dt> <dd class="opt"> <input <?php if ($im_s != 1){ ?>disabled<?php } ?> id="im_api_key" name="im_api[im_api_key]" value="<?= Yf_Registry::get('im_api_key') ?>" class="ui-input w400" type="text"/> <p class="notic">请填写商城系统与IM通讯的Key值,此外的值要与IM后台应用的值保持一致</p> </dd> </dl> <dl class="row"> <dt class="tit"> <label for="site_name">IM Secret</label> </dt> <dd class="opt"> <input <?php if ($im_s != 1){ ?>disabled<?php } ?> id="im_admin_api_url" name="im_api[im_admin_api_url]" value="<?= Yf_Registry::get('im_admin_api_url') ?>" class="w400 ui-input " type="text"/> <p class="notic"></p> </dd> </dl> <dl class="row"> <dt class="tit"> <label for="site_name">SNS URL</label> </dt> <dd class="opt"> <input <?php if ($im_s != 1){ ?>disabled<?php } ?> id="sns_api_url" name="im_api[sns_api_url]" value="<?= Yf_Registry::get('sns_api_url') ?>" class="w400 ui-input " type="text"/> <p class="notic"></p> </dd> </dl> <div class="bot"> <a href="javascript:void(0);" <?php if ($im_s != 1){ ?>disabled style="background-color: #96a6a6;border-color: #808b8d;color: #fff;"<?php } ?> class="ui-btn ui-btn-sp im-submit-btn">确认提交</a> </div> </div> </form> 请根据项目需求,决定是否保留 SNS 设置项的代码: <dl class="row"> <dt class="tit"> <label for="site_name">SNS URL</label> </dt> <dd class="opt"> <input <?php if ($im_s != 1){ ?>disabled<?php } ?> id="sns_api_url" name="im_api[sns_api_url]" value="<?= Yf_Registry::get('sns_api_url') ?>" class="w400 ui-input " type="text"/> <p class="notic"></p> </dd> </dl> 然后,你就 可以将 你在 准备工作 阶段 获取的 参数信息数据填写到 表单里,并可以成功提交保存! IM状态尚未开启,则需要配置 `shop_admin/configs/im_api_ini.php` 或者其生成的类似文件,具体配置可参考 IM配置 的这一小节 如果上述操作还不能让你看到 预期的结果,请直接替换整个文件,记得备份~.~ 我在很多地方都提醒你记得备份文件,同样的道理,你也可以备份整个项目... 理论上:嵌入IM的相关代码是不会影响到你项目的业务逻辑功能,除非你本人不慎把 原有的文件...delete了~ 这个锅,IM表示不背~ 所以,请注意备份文件,甚至项目,谢谢~请继续往下看,你还有WAP端呐~