You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

WordPress中wp_enqueue_script未加载,自定义脚本无法显示求助

问题排查与解决方法

1. 脚本路径的可靠性问题

你直接使用了硬编码的绝对路径/wp-content/plugins/paytium-pro/public/js/public.js,虽然逻辑上指向正确,但WordPress环境中目录结构可能因配置变化(比如子目录安装)失效,且放在主题functions.php中时,路径指向容易出错。建议改用WordPress内置函数生成可靠URL:

function enqueue_custom_script() {
    wp_enqueue_script(
        'public_test',
        site_url('/wp-content/plugins/paytium-pro/public/js/public.js'),
        array('jquery'),
        '1.0',
        true
    );
}
add_action('wp_enqueue_scripts', 'enqueue_custom_script');

如果能确定插件主文件路径,用plugin_dir_url()会更稳妥:

function enqueue_custom_script() {
    wp_enqueue_script(
        'public_test',
        plugin_dir_url('paytium-pro/paytium-pro.php') . 'public/js/public.js',
        array('jquery'),
        '1.0',
        true
    );
}
add_action('wp_enqueue_scripts', 'enqueue_custom_script');

2. 主题未加载必要钩子函数

你将脚本的最后参数设为true,表示脚本会插入到wp_footer()位置。如果你的主题footer.php文件中没有添加<?php wp_footer(); ?>(必须放在</body>标签之前),脚本根本不会输出。同时确认主题header.php中存在<?php wp_head(); ?>,它是wp_enqueue_scripts钩子生效的基础。

3. 函数冲突或优先级问题

  • 检查是否有其他插件/主题使用了同名的enqueue_custom_script函数,导致你的函数被覆盖。可以修改函数名,比如改成my_custom_public_script_enqueue。
  • 尝试给add_action增加优先级参数,确保你的函数在其他脚本加载操作之后执行:
add_action('wp_enqueue_scripts', 'enqueue_custom_script', 99);

4. 缓存导致修改未生效

如果站点启用了缓存插件(如WP Rocket、W3 Total Cache)或服务器端缓存,修改后的代码可能不会即时生效。清空所有缓存后,刷新页面重新查看源代码。

5. 脚本文件本身不存在

确认/wp-content/plugins/paytium-pro/public/js/public.js文件确实存在,注意Linux服务器上文件名区分大小写,检查路径和文件名是否有拼写错误。


内容的提问来源于stack exchange,提问作者biggydeen

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.11 15:31:06