我正在开发一个使用 composer.. 的插件,这意味着它在插件文件夹中有一个供应商文件夹,其中包含 Guzzle HTTP 依赖项
在我们安装了这个插件的 wordpress 网站上,有一个现有的插件有 Guzzle HTTP
现在,当我们激活这个插件时,我收到如下错误:
Fatal error: Cannot redeclare GuzzleHttp\uri_template() (previously declared in /nas/content/staging/project/wp-content/plugins/my-plugin/vendor/guzzlehttp/guzzle/src/functions.php:17) in /nas/content/staging/project/wp-content/plugins/other-plugin/includes/lib/aws-sdk/GuzzleHttp/functions.php on line 31
Run Code Online (Sandbox Code Playgroud)
我尝试安装插件加载顺序以强制“其他插件”在“我的插件”之前首先加载,当前错误发生在其他插件的资源上。这样,错误将在我们的自动加载中产生,我们可以捕获它。
不幸的是..插件加载顺序不起作用..
任何想法如何解决这个问题?
我知道我的主题非常棘手,但我不知道如何在这个主题上更加精通它.所以这里是怎么回事.我有一个按钮
<a href="#" onClick="loadtheFile()">Load IT!</a>
Run Code Online (Sandbox Code Playgroud)
在脚本标签上:
function loadTheFile() {
var script = $("<script><\/script>");
script.attr("type", "text/javascript");
script.attr('src','http://www.thisismyexternalloadingjsfile"');
$('body').append(script);
alert("done! the file has been loaded");
}
Run Code Online (Sandbox Code Playgroud)
脚本很好,加载时会自动有一个模态框.但问题是,我的警报似乎首先发射的是脚本
那我怎么知道我是否已经完成加载脚本?
更新第一次尝试回答:
function loadTheFile() {
var script = $("<script><\/script>");
script.attr("type", "text/javascript");
script.attr('src','http://www.thisismyexternalloadingjsfile"');
$('body').append(script);
$(document).ready(function() {
alert("done! the file has been loaded")};
}
Run Code Online (Sandbox Code Playgroud)
同样的问题