在页脚中加载额外JavaScript的最佳做法是什么?

时间:2015-08-16 19:48:09

标签: php libraries

我网站的每个页面都包含:

  • 通用标题
  • 页面本身
  • 通用页脚

在代码中,页面如下所示:

footer.php

在同一页面上,我想在<?php function load_footer($load_contact_info = false) { ?> <footer> <?php if ($load_contact_info) { ?> <div id="contact-us"> // contact info </div> <?php } ?> <div id="inner-footer"> // more generic footer content </div> </footer> <script src="<?php echo($url); ?>js/vendor/jquery.js"></script> // I want to load more UNIQUE JS content here at SOME pages </body> </html> <?php } ?> (右前 - 关闭正文标记)中加载额外的内容(比如更多的JS库):

footer.php

在页脚中加载额外库的最佳做法是什么?我是否应该使用更多if-yes-load来扩展if ($google_maps_api) { // map settings echo "<script src=\"https://maps.googleapis.com/maps/api/js?callback=initMap\" async defer></script>"; } if ($other_api) { echo "<script src=\"https://example.com/other-api/\" async defer></script>"; } - 更像这样:

{{1}}

或者还有其他可能做得更好吗?

1 个答案:

答案 0 :(得分:2)

加载额外的库不应该是页脚的任务。页脚显示页脚。你应该创建一个新的php文件并命名为&#34; handle_js.php&#34;

function print_script_tag($src, $options) {
    echo "<script src=\"" . $src . "\" " . $options . "></script>\n";
}

function print_all_script_tags_for_url($url) {
  if($url === 'example') {
    print_script_tag('library.js','async');
  }
}

并在您的页脚文件中

</footer>
print_scripts($url);
</body>

我没有测试代码。