使用PHP Print显示jQuery函数是不好的做法吗?

时间:2012-10-08 03:48:48

标签: php jquery wordpress

需要在wordpress网站的标题中显示某个jQuery来设置插件。使用这个php打印方法来完成它是不好的做法吗?我正在使用以下代码:

<?php is_page( 'front-page' ); print 
"<script>
jQuery(function() {

        jQuery('#bannerscollection_kenburns_majestic').bannerscollection_kenburns({
            skin: 'majestic',
            width: 2530,
            height: 1200,
            autoHideNavArrows:true,
            numberOfThumbsPerScreen:16,
            thumbsOnMarginTop:23,
            thumbsWrapperMarginTop: 0,
            initialZoom: 1,
            finalZoom: 1,       
        });     


    });
</script>"
?>

修改

我最终使用了这个,效果很好。

<?php is_page( 'front-page' ); wp_enqueue_script( 'kbsettings' ); ?>

3 个答案:

答案 0 :(得分:0)

你可以这样尝试

<?php if(is_page( 'front-page' )){ ?>
<script>
jQuery(function() {

        jQuery('#bannerscollection_kenburns_majestic').bannerscollection_kenburns({
            skin: 'majestic',
            width: 2530,
            height: 1200,
            autoHideNavArrows:true,
            numberOfThumbsPerScreen:16,
            thumbsOnMarginTop:23,
            thumbsWrapperMarginTop: 0,
            initialZoom: 1,
            finalZoom: 1,       
        });     


    });
</script>



<?php } ?>

答案 1 :(得分:0)

通常是的,在动态脚本中生成静态内容是不好的做法,它会影响服务性能(用户浏览器中缓存的独立js和php解释器必须一次又一次地处理你的行)

使用类似的东西:

<?php
echo is_page( 'front-page' ) 
        ? "<script type='text/javascript' src='js/myplugin.js'></script>'" 
        : ""; 
?>

另外,您可能在首页的wordpress模板中安装了插件吗?

答案 2 :(得分:0)

你不应该真的打印那么多行。如上所述,您可以使用HEREDOC吗?通常,PHP中的JS实际上只是在JS中需要PHP变量时。我在这看不到?

为什么不能只加载该脚本而不是打印它?

<?php if is_front_page(){ //the general best practice way of getting the front page
    include(YOURPATH.'js/yourfile.js');
?>