如何在我的页面上包含JSON文件?

时间:2020-01-28 作者:cag8f

我有一个JSON文件存储在我的子主题目录:file中。json)。另外,我的页面的PHP模板包含一些JavaScript代码(以<script> 标签)。在该JS代码中,我想将JSON文件的内容写入一个变量。正确的方法是什么?

我可以/应该将JSON文件排队,就像我将普通JS文件排队一样(即。wp_enqueue_scripts())? 如果是这样的话,我又该如何将文件的内容写入JS变量?我会这样做吗myJson = json.parse(\'http://example.com/wp-contents/themes/your-theme/file.json\')?include 要在页面上包含JSON文件?实际上现在我想起来了,一个人只能用include 具有某些文件扩展名--正确吗

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

您确实可以用PHP实现这一点。步骤如下:;

使用获取变量中JSON文件的内容$json = file_get_contents(\'path-to-file.json\')<script> 标签解析Javascript变量中的JSON内容,如下所示;var jsonContent = \'<?= $json; ?>\';console.log(JSON.parse(jsonContent));

SO网友:Jim

当然,这里有另一种方法。

首先,在javascript变量中声明模板文件夹的根,如下所示var rootFolder = \'<?= get_template_directory_uri() ?>\';var jsonFile = rootFolder + \'/json/file.json\';jQuery 像这样快速获取文件内容

<script>
var rootFolder = \'<?= get_template_directory_uri() ?>\';
var jsonFile   = rootFolder + \'/json/file.json\';

$.getJSON(jsonFile, function(data) {

   // Log the data to check its validity
   console.log(data);

});
</script>