我想我已经读过十几篇关于退出和取消注册脚本的帖子,但在我的情况下,我还没能让它正常工作。
我的处境是:;uListing“;插件是;家庭出版社;房地产主题。AJAX搜索存在一个问题,如果您只键入一个特定的数字,然后暂停,它会冻结整个页面。我相信这取决于该单个数字所发现的结果(不同站点上出现问题的数字不同),但我能够在提供商自己的演示站点上用5个不同的数字复制问题。问题是由于发现的结果导致循环从未完成。我们可以通过一个简单的返回来避开这个循环,它可以按需要工作。
但现在我正在尝试用我自己的脚本替换他们的脚本,在另一个插件中。(这样它就不会被主题或插件更新覆盖。)
他们的插件加载脚本的方式如下:
wp_enqueue_script(\'stm-search-form-category\', ULISTING_URL . \'/assets/js/frontend/stm-search-form-category.js\', array(\'vue\'), ULISTING_VERSION, true);
我的插件尝试通过以下方式覆盖它:
function fixUlisting() {
wp_dequeue_script( \'stm-search-form-category\' );
wp_deregister_script( \'stm-search-form-category\' );
wp_enqueue_script( \'stm-search-fix\', \'/wp-content/plugins/ulisting-search-fix/stm-search-fix.js\' );
}
add_action( \'wp_enqueue_scripts\', \'fixUlisting\', 100 );
我相信这些步骤的顺序是正确的(?)。我相信我正确地使用了优先级(100)和位置(true)()。我可以看到我的新脚本已加载到“网络”选项卡中。我已尝试包含原始脚本的依赖项(vue)。我曾尝试重新使用原始句柄,但根据我读到的帖子使用了不同的句柄(两者都不起作用)。我清除服务器缓存,使用不同的版本号(或空或空),包括“父”插件的原始版本号,然后每次都在新的匿名浏览器窗口中重新测试。尽管如此,原始脚本仍然控制着每个实例中的AJAX搜索结果。
我需要做什么来确保使用我的脚本而不是原始脚本?任何帮助都将不胜感激。