javascript - 在 WordPress 模板上包含 jQuery 脚本

标签 javascript php jquery wordpress

我有一个页面模板,该模板应用于我的 WordPress 页面上的特定页面。通常,对于我的所有其他脚本,我将它们放在我的 footer.php 中,然后它们从那里加载得很漂亮。在这个特定的页面上,我想加载一个只应该在这个页面上运行的脚本。因此,在我的模板中,我将其包含如下:

<?php
/**
* Template Name: Template
*/
?>
<?php get_header(); ?>

<script src="<?php echo get_template_directory_uri(); ?>/js/teacher-signup.js"></script>

<?php get_footer( ); ?>

不幸的是,当我这样做时,我只会收到如下错误:

Uncaught TypeError: $(...).whatever is not a function

Wordpress 中是否有某种方法可以仅在特定模板上包含几个脚本?或者我错过了什么?

提前致谢

最佳答案

按照 wp 推荐的方式注册脚本:

wp_register_script('your_file_name', get_template_directory_uri() . '/assets/js/some_file.js', false, null, true);

比将该特定页面/模板的注册脚本排入队列

if (is_page('page_name') ) {
        wp_enqueue_script('your_file_name');

        }

如果需要,您还可以为页面模板名称添加条件:

if (is_page_template("template_name.php')

关于javascript - 在 WordPress 模板上包含 jQuery 脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44029423/

相关文章:

javascript - 无法将动态数据加载到 ui-grid 下拉列表中

javascript - 如何在 redux-form 中使用 formValueSelector 获取更改时更新的输入字段值

php - 使用php解析sql文件

php - 有人入侵了我的数据库 - 如何?

jquery - 单击链接时显示一个 div,同时使用 jquery 隐藏其他 div

javascript - Jquery/Handlebars 错误消息 - Uncaught TypeError : Object [object Object] has no method 'match'

javascript - 从 Qt 中读取带有 "evaluateJavaScript"的 javascript 函数的返回值

javascript - JS拆分字符串并返回每个拆分的索引

php - 我如何为每列排序 mysql

jquery - 如何用更高性能的等效函数替换 .each() 和 .find() 等 JQuery 函数?