在一篇帖子中只包含这个脚本的最有效方式是什么?

时间:2013-10-15 作者:Scott Helme

我正在尝试插入Highcharts JS 进入我的一篇博客帖子。

在文本视图中插入代码不起作用,而且看起来很混乱。

我也试过使用wp_register_script()wp_enqueue_script() 在函数中。php

global $post;
if( is_page() || is_single() )
    {
        switch($post->post_name) 
        {
            case \'test-post\':
                wp_register_script( \'charts\', get_template_directory_uri() . \'/js/standalone-framework.js\', array(\'jquery\'));
                wp_enqueue_script(\'charts\');
                wp_register_script( \'mychart\', get_template_directory_uri() . \'/js/my-chart.js\', array(\'jquery\'));
                wp_enqueue_script(\'mychart\');
使用is_page() 在标题中。php创建一个if语句来输出脚本标记。

<?php if ( is_page(\'test-post\')) { ?>
    <script type=\'text/javascript\' src="<?php bloginfo(\'template_directory\'); ?>/js/standalone-framework.js"></script>
    <script type=\'text/javascript\' src="<?php bloginfo(\'template_directory\'); ?>/js/my-chart.js"></script>
<?php } ?>
最后,我尝试使用自定义字段,但运气也不太好。

在一篇文章中包含此javascript最有效的方法是什么?有很多问题和答案,其中许多现在已经相当老了。

1 个回复
最合适的回答,由SO网友:Wyck 整理而成

排队脚本并没有真正改变Codex example 很好。在效率方面,您谈论的是数百毫秒内的差异,但正确地使用它可以获得该功能的好处。即使最终用户足够敏感,能够识别出页面加载速度慢了0.002秒,但大多数js都是事后缓存的,因此您确实需要超级能力。

你似乎错过了你的functions.php, 为清晰起见,请在单独的函数中注册脚本,或在同一函数中注册块。例如:

function scott_highcharts(){
  //register
  wp_register_script( \'charts\', get_template_directory_uri() . \'/js/standalone-framework.js\', array(\'jquery\') );
  wp_register_script( \'mychart\', get_template_directory_uri() . \'/js/my-chart.js\', array(\'jquery\') );

  //enqueue conditional
  if ( is_page( \'test-post\' )){
      wp_enqueue_script( \'charts\' );
      wp_enqueue_script( \'mychart\' );
  }
}
add_action( \'wp_enqueue_scripts\', \'scott_highcharts\' );

结束

相关推荐

update_option in javascript

因此,wordpress中有一个功能可以将命名选项/值对更新到选项数据库表中:<?php update_option( $option, $new_value ); ?>. 我正试图用javascript实现这个功能,这样当你点击页面底部时,一个选项就会更新。我使用此脚本检查您何时点击页面底部:$(window).scroll(function () { if ($(window).scrollTop() >= $(document).height() - $(window