\\application\\admin\\controller\\Field.php 搜索 media 删除 栏目就可以添加媒体类型了打开\\application\\admin\\template\\field\\addonextitem.htm文件找到判断媒体的 代码 <!-- 多媒体类型 start --> {case value="media"} <dl class="row"> <dt class="tit"> <label>{if condition="isset($vo[\‘ifrequire\‘]) AND !empty($vo[\‘ifrequire\‘])"}<em>*</em>{/if}{$vo.title|default=\‘\‘}</label> </dt> <dd class="opt"> <input type="text" class="input-txt" id="{$vo.fieldArr}_{$vo.name|default=\‘\‘}_media_url" name="{$vo.fieldArr}[{$vo.name|default=\‘\‘}]" value="{$vo.dfvalue|default=\‘\‘}" style="width: 400px !important;" > <input type="file" id="{$vo.fieldArr}_{$vo.name|default=\‘\‘}_upload_media" on-change="{$vo.fieldArr}_{$vo.name|default=\‘\‘}_upload_media_20210408(this)" style="display: none;"> {if condition="\‘qny\‘ == $vo.upload_flag"} <button type="button" class="layui-btn" id="{$vo.fieldArr}_{$vo.name|default=\‘\‘}_qny_upload_media" on-click="$(\‘#{$vo.fieldArr}_{$vo.name|default=\\\‘\\\‘}_upload_media\‘).attr(\‘data-type\‘, \‘qny\‘).trigger(\‘click\‘);">七牛云上传</button> {elseif condition="\‘oss\‘ == $vo.upload_flag"} <button type="button" class="layui-btn" id="{$vo.fieldArr}_{$vo.name|default=\‘\‘}_oss_upload_media" on-click="$(\‘#{$vo.fieldArr}_{$vo.name|default=\\\‘\\\‘}_upload_media\‘).attr(\‘data-type\‘, \‘oss\‘).trigger(\‘click\‘);">oss上传</button> {elseif condition="\‘cos\‘ == $vo.upload_flag"} <button type="button" class="layui-btn" id="{$vo.fieldArr}_{$vo.name|default=\‘\‘}_cos_upload_media" on-click="$(\‘#{$vo.fieldArr}_{$vo.name|default=\\\‘\\\‘}_upload_media\‘).attr(\‘data-type\‘, \‘cos\‘).trigger(\‘click\‘);">cos上传</button> {elseif condition="\‘aws\‘ == $vo.upload_flag"} <button type="button" class="layui-btn" id="{$vo.fieldArr}_{$vo.name|default=\‘\‘}_aws_upload_media" on-click="$(\‘#{$vo.fieldArr}_{$vo.name|default=\\\‘\\\‘}_upload_media\‘).attr(\‘data-type\‘, \‘aws\‘).trigger(\‘click\‘);">亚马逊S3上传</button> {else} <button type="button" class="layui-btn" id="{$vo.fieldArr}_{$vo.name|default=\‘\‘}_local_upload_media" on-click="$(\‘#{$vo.fieldArr}_{$vo.name|default=\\\‘\\\‘}_upload_media\‘).attr(\‘data-type\‘, \‘local\‘).trigger(\‘click\‘);">本地上传</button> {/if} <span class="err"></span> <p class="notic">{$vo.remark|default=\‘\‘}</p> </dd> </dl> <script> // 上传媒体文件 function {$vo.fieldArr}_{$vo.name|default=\‘\‘}_upload_media_20210408(e){ var data_type = $(e).attr(\‘data-type\‘); if (\‘qny\‘ == data_type) { // 七牛云上传 {$vo.fieldArr}_{$vo.name|default=\‘\‘}_qny_upload_media(e); } else if (\‘oss\‘ == data_type) { // OSS上传 {$vo.fieldArr}_{$vo.name|default=\‘\‘}_oss_upload_media(e); } else if (\‘cos\‘ == data_type) { // COS上传 {$vo.fieldArr}_{$vo.name|default=\‘\‘}_cos_upload_media(e); } else if (\‘aws\‘ == data_type) { // 亚马逊S3上传 {$vo.fieldArr}_{$vo.name|default=\‘\‘}_aws_upload_media(e); } else { // 本地上传 {$vo.fieldArr}_{$vo.name|default=\‘\‘}_local_upload_media(e); } } function judgeExtMedia(ext) { var type = \‘{$vo.ext}\‘; var extArr = []; extArr = type.split("|"); var exts = ext.replace(".",""); return extArr.indexOf(exts); } // 七牛云 function {$vo.fieldArr}_{$vo.name|default=\‘\‘}_qny_upload_media(e) { // 获取文件路径名 var file = $(e)[0].files[0]; // 验证上传格式 var fileName = file.name; var fileExt = fileName.substr(fileName.lastIndexOf(\‘.\‘)).toLowerCase(); var ext = judgeExtMedia(fileExt); if (ext == -1) { showErrorMsg(\‘仅支持{$vo.ext}格式,可在附件设置中修改\‘); return false; } // 验证上传大小 size = parseInt("{$vo.filesize}"); if (file.size > size) { showErrorMsg(\‘文件大小超过限制,可在附件设置中修改\‘); return false; } // 执行上传 layer_loading(\‘上传七牛云\‘); $.ajax({ type: \‘POST\‘, url: \‘__ROOT_DIR__/index.php?m=plugins&c=Qiniuyun&a=qiniu_upload\‘, data: {_ajax: 1}, dataType: "JSON", success: function(res1) { if (1 == res1.code) { var token = res1.data.token; var formData = new FormData(); formData.append(\‘file\‘, file); formData.append(\‘token\‘, token); fileName = res1.data.filePath + fileExt; formData.append(\‘key\‘, fileName); $.ajax({ url: res1.data.uphost, type: \‘POST\‘, dataType: \‘JSON\‘, data: formData, timeout: 1200000, cache: false, processData: false, contentType: false, xhr: function () { myXhr = $.ajaxSettings.xhr(); if (myXhr.upload) { myXhr.upload.addEventListener(\‘progress\‘, function(e){ var curr = e.loaded; var total = e.total; process = parseInt(curr / total * 100); $("#{$vo.fieldArr}_{$vo.name|default=\‘\‘}_qny_upload_media").text(\‘上传中...\‘+process+"%"); }); } return myXhr; }, success: function(res2) { layer.closeAll(); $("#{$vo.fieldArr}_{$vo.name|default=\‘\‘}_qny_upload_media").text(\‘上传成功\‘); setTimeout(function() { $(\‘#{$vo.fieldArr}_{$vo.name|default=\\\‘\\\‘}_qny_upload_media\‘).text(\‘七牛云上传\‘); }, 2000); var video_url = res1.data.domain + "/" + res2.key; $("#{$vo.fieldArr}_{$vo.name|default=\‘\‘}_media_url").val(video_url); }, error: function(e) { layer.closeAll(); showErrorMsg(e.responseText); return false; } }); } else { layer.closeAll(); showErrorMsg(res1.msg); } }, error: function(e) { layer.closeAll(); showErrorMsg(e.responseText); } }); } //OSS function {$vo.fieldArr}_{$vo.name|default=\‘\‘}_oss_upload_media(e) { // 获取文件路径名 var file = $(e)[0].files[0]; // 验证上传格式 var fileName = file.name; var fileExt = fileName.substr(fileName.lastIndexOf(\‘.\‘)).toLowerCase(); var ext = judgeExtMedia(fileExt); if (ext == -1) { showErrorMsg(\‘仅支持{$vo.ext}格式,可在附件设置中修改\‘); return false; } // 验证上传大小 size = parseInt("{$vo.filesize}"); if (file.size > size) { showErrorMsg(\‘文件大小超过限制,可在附件设置中修改\‘); return false; } // 执行上传 layer_loading(\‘上传阿里云OSS\‘); $.ajax({ type: \‘POST\‘, url: \‘__ROOT_DIR__/index.php?m=plugins&c=AliyunOss&a=oss_upload\‘, data: {_ajax: 1}, dataType: "JSON", success: function(res1){ if (1 == res1.code){ fileName = res1.data.filePath + fileExt; //组装发送数据 var request = new FormData(); request.append("OSSAccessKeyId",res1.data.accessid); request.append("policy",res1.data.policy); request.append("Signature",res1.data.signature); request.append("key",fileName); request.append("success_action_status",201); request.append(\‘file\‘, file); $.ajax({ url : res1.data.host, data : request, processData: false, cache: false, contentType: false, dataType: \‘xml\‘, type : \‘post\‘, xhr: function () { myXhr = $.ajaxSettings.xhr(); if (myXhr.upload) { myXhr.upload.addEventListener(\‘progress\‘, function(e){ var curr = e.loaded; var total = e.total; var process = parseInt(curr / total * 100); $("#{$vo.fieldArr}_{$vo.name|default=\‘\‘}_oss_upload_media").text(\‘上传中...\‘+process+"%"); }); } return myXhr; }, success : function(data) { layer.closeAll(); var res = $(data).find(\‘PostResponse\‘); if (res) { var key = res.find(\‘Key\‘).text(); $("#{$vo.fieldArr}_{$vo.name|default=\‘\‘}_oss_upload_media").text(\‘上传成功\‘); setTimeout(function() { $(\‘#{$vo.fieldArr}_{$vo.name|default=\\\‘\\\‘}_oss_upload_media\‘).text(\‘oss上传\‘); }, 2000); var video_url = res1.data.domain + "/" + key; $("#{$vo.fieldArr}_{$vo.name|default=\‘\‘}_media_url").val(video_url); } else { $("#{$vo.fieldArr}_{$vo.name|default=\‘\‘}_oss_upload_media").text(\‘上传失败\‘); setTimeout(function() { $(\‘#{$vo.fieldArr}_{$vo.name|default=\\\‘\\\‘}_oss_upload_media\‘).text(\‘oss上传\‘); }, 2000); } }, error : function(e) { layer.closeAll(); console.log(e.responseText); } }); } else { layer.closeAll(); showErrorMsg(res1.msg); } }, error: function(e) { layer.closeAll(); showErrorMsg(e.responseText); } }); } //COS function {$vo.fieldArr}_{$vo.name|default=\‘\‘}_cos_upload_media(e) { // 获取文件路径名 var file = $(e)[0].files[0]; // 验证上传格式 var fileName = file.name; var fileExt = fileName.substr(fileName.lastIndexOf(\‘.\‘)).toLowerCase(); var ext = judgeExtMedia(fileExt); if (ext == -1) { showErrorMsg(\‘仅支持{$vo.ext}格式,可在附件设置中修改\‘); return false; } // 验证上传大小 size = parseInt("{$vo.filesize}"); if (file.size > size) { showErrorMsg(\‘文件大小超过限制,可在附件设置中修改\‘); return false; } // 上传参数 var formData = new FormData(); formData.append(\‘file\‘, file); formData.append(\‘file_ext\‘, fileExt); // 执行上传 $.ajax({ type: \‘post\‘, url: \‘__ROOT_DIR__/index.php?m=plugins&c=Cos&a=cos_upload&_ajax=1\‘, data: formData, contentType: false, processData: false, dataType: \‘json\‘, xhr: function () { myXhr = $.ajaxSettings.xhr(); if (myXhr.upload) { myXhr.upload.addEventListener(\‘progress\‘, function(e){ var curr = e.loaded; var total = e.total; process = parseInt(curr / total * 100); if (100 == process) { process = 99; layer_loading(\‘上传腾讯云\‘); } $("#{$vo.fieldArr}_{$vo.name|default=\‘\‘}_cos_upload_media").text(\‘上传中...\‘+process+"%"); }); } return myXhr; }, success: function(res) { layer.closeAll(); if (1 == res.code) { $("#{$vo.fieldArr}_{$vo.name|default=\‘\‘}_cos_upload_media").text(\‘上传成功\‘); $("#{$vo.fieldArr}_{$vo.name|default=\‘\‘}_media_url").val(res.data.url); } else { $("#{$vo.fieldArr}_{$vo.name|default=\‘\‘}_cos_upload_media").text(\‘上传失败\‘); } setTimeout(function() { $(\‘#{$vo.fieldArr}_{$vo.name|default=\\\‘\\\‘}_cos_upload_media\‘).text(\‘cos上传\‘); }, 2000); }, error: function(e) { layer.closeAll(); showErrorMsg(e.responseText); } }); } //亚马逊S3 function {$vo.fieldArr}_{$vo.name|default=\‘\‘}_aws_upload_media(e) { // 获取文件路径名 var file = $(e)[0].files[0]; // 验证上传格式 var fileName = file.name; var fileExt = fileName.substr(fileName.lastIndexOf(\‘.\‘)).toLowerCase(); var ext = judgeExtMedia(fileExt); if (ext == -1) { showErrorMsg(\‘仅支持{$vo.ext}格式,可在附件设置中修改\‘); return false; } // 验证上传大小 size = parseInt("{$vo.filesize}"); if (file.size > size) { showErrorMsg(\‘文件大小超过限制,可在附件设置中修改\‘); return false; } // 上传参数 var formData = new FormData(); formData.append(\‘file\‘, file); formData.append(\‘file_ext\‘, fileExt); // 执行上传 $.ajax({ type: \‘post\‘, url: \‘__ROOT_DIR__/index.php?m=plugins&c=Aws&a=aws_upload&_ajax=1\‘, data: formData, contentType: false, processData: false, dataType: \‘json\‘, xhr: function () { myXhr = $.ajaxSettings.xhr(); if (myXhr.upload) { myXhr.upload.addEventListener(\‘progress\‘, function(e){ var curr = e.loaded; var total = e.total; process = parseInt(curr / total * 100); if (100 == process) { process = 99; layer_loading(\‘上传腾讯云\‘); } $("#{$vo.fieldArr}_{$vo.name|default=\‘\‘}_aws_upload_media").text(\‘上传中...\‘+process+"%"); }); } return myXhr; }, success: function(res) { layer.closeAll(); if (1 == res.code) { $("#{$vo.fieldArr}_{$vo.name|default=\‘\‘}_aws_upload_media").text(\‘上传成功\‘); $("#{$vo.fieldArr}_{$vo.name|default=\‘\‘}_media_url").val(res.data.url); } else { $("#{$vo.fieldArr}_{$vo.name|default=\‘\‘}_aws_upload_media").text(\‘上传失败\‘); } setTimeout(function() { $(\‘#{$vo.fieldArr}_{$vo.name|default=\\\‘\\\‘}_aws_upload_media\‘).text(\‘cos上传\‘); }, 2000); }, error: function(e) { layer.closeAll(); showErrorMsg(e.responseText); } }); } // 本地上传 function {$vo.fieldArr}_{$vo.name|default=\‘\‘}_local_upload_media(e){ // 获取文件路径名 var file = $(e)[0].files[0]; // 验证上传格式 var fileName = file.name; var fileExt = fileName.substr(fileName.lastIndexOf(\‘.\‘)).toLowerCase(); var ext = judgeExtMedia(fileExt); if (ext == -1) { showErrorMsg(\‘仅支持{$vo.ext}格式,可在附件设置中修改\‘); return false; } // 验证上传大小 size = parseInt("{$vo.filesize}"); if (file.size > size) { showErrorMsg(\‘文件大小超过限制,可在附件设置中修改\‘); return false; } // 定义上传数据 var formData = new FormData(); formData.append(\‘file\‘, file); // 执行上传 layer_loading(\‘上传本地\‘); $.ajax({ type: \‘post\‘, url : "{:url(\‘Ueditor/upVideo\‘, [\‘savepath\‘=>\‘media\‘])}", data: formData, contentType: false, processData: false, dataType: \‘json\‘, xhr: function () { myXhr = $.ajaxSettings.xhr(); if (myXhr.upload) { myXhr.upload.addEventListener(\‘progress\‘, function(e){ var curr = e.loaded; var total = e.total; process = parseInt(curr / total * 100); $("#{$vo.fieldArr}_{$vo.name|default=\‘\‘}_local_upload_media").html(\‘上传中...\‘+process+"%"); }); } return myXhr; }, success: function (res) { layer.closeAll(); if ("SUCCESS" == res.state) { $("#{$vo.fieldArr}_{$vo.name|default=\‘\‘}_local_upload_media").html(\‘上传成功\‘); setTimeout(function() { $(\‘#{$vo.fieldArr}_{$vo.name|default=\\\‘\\\‘}_local_upload_media\‘).html(\‘本地上传\‘); }, 2000); $("#{$vo.fieldArr}_{$vo.name|default=\‘\‘}_media_url").val(res.url); } else { res = JSON.parse(res); showErrorMsg(res.state); } } }); } </script> {/case} <!-- 多媒体类型 end -->打开 \\application\\admin\\template\\field\\addonitem.htm 找到一个{/case}直接粘贴到他后面即可