我对wp_enqueue_script的新方法

时间:2012-06-05 02:52:50

标签: php wordpress wordpress-theming

好的,我正在尝试消除所有可能的变量以进行故障排除。因此,我没有在我的functions.php中删除此代码,而是将其放在header.php文件中:

<?php $mdgtemplateloc = get_bloginfo( 'template_url' ).'/js/'; ?>
<?php echo '<!-- ' . $mdgtemplateloc . ' --> ?>
<?php wp_enqueue_script( 'hoverIntent', $mdgtemplateloc.'hoverIntent.js', array( 'jquery' ) ); ?>
<?php wp_enqueue_script( 'mdMenuAnimation', $mdgtemplateloc.'mdMenuAnimation.js', array( 'hoverIntent' ) ); ?>

结果是在源中插入了一些空格,注释按要求显示。我的理解是这会插入像

这样的东西
<script type="text/javascript" src="[url]/js/mdMenuAnimation.js"></script>

我想以正确的方式做到这一点,但是wp_enqueue_script一直在给我什么。我怀疑我做的事情本质上是错误的,但我找不到它,我通过google或stackoverflow找不到任何东西,或者wp codex根本没有帮助。

为了澄清,以下是我之前在functions.php文件中的内容:

function mdg_setup_scripts() {
  $mdgtemplateloc = get_bloginfo( 'template_url' ).'/js/';
  wp_register_script( 'hoverIntent', get_bloginfo('template_url').'/js/hoverIntent.js', array( 'jquery' ));
  wp_enqueue_script( 'hoverIntent' );
  wp_register_script( 'mdMenuAnimation', $mdgtemplateloc.'mdMenuAnimation.js', array( 'hoverIntent' ));
  wp_enqueue_script( 'mdMenuAnimation' );
}
add_action( 'wp_enqueue_scripts', 'mdg_setup_scripts' );

这也没有产生任何曾经调用过脚本的输出。我知道这第二个更像是应该是什么,但它没有做任何事情。

1 个答案:

答案 0 :(得分:2)

wp_enqueue_script()不会输出任何内容。你的用法不正确。

您需要创建一个回调并将其添加到wp_enqueue_scripts操作中。通常,这属于 functions.php 文件。

重新阅读文档。有一些确切想要做的事情的例子。