首页 > 解决方案 > 使用 php 从数组创建一个 json 文件,将其返回并与 wordpress 中的 javascript 文件中的 javascript 一起使用

问题描述

这是我的问题:我用 php 创建了一个 json 文件,我需要用 javascript(ajax?)访问它,以便在我的地图上打印一些结果。

对我来说这很难,但我正在一步一步地尝试。

这是第一步:

function phptojson($prog = null , $prov = null, $slang = null , $fees = null) {

    $posts = getData(null , null, null, null);
    $data = [];

    foreach($posts as $post) {

        $data[$post->ID] = [
            "program_type" => get_post_meta( $post->ID, 'program_type', true ),
            "province" => get_post_meta( $post->ID, 'province', true ),
            "language" => get_post_meta( $post->ID, 'language_of_study', true ),
            "tuition" => get_post_meta( $post->ID, 'tuition_fees', true ),
            "lenght" => get_post_meta( $post->ID, 'length_of_study', true ),
            "title" => $post->post_title,
            "location" => get_post_meta( $post->ID, 'location', true ),
            "information" => get_post_meta( $post->ID, 'details', true ),
        ];

    }
    return json_encode($data);

}

getData 是一个函数,它将调用一些参数以过滤我的查询,并从我需要的数据库中返回数据。第二步是循环,它工作正常,最后我返回了我的 json 文件。

现在我的麻烦是:我能用这个文件做什么。我正在改进的旧代码是使用脚本标签来打印 HTML 文档上的文件以访问它。

我想从我的 javascript 文件中调用我的函数 phptojson 以访问它。我已经创建了谷歌地图,它工作正常,所以我只需要从我的 javascript 函数中打印结果。我的文件层次结构如下所示:

wp-content -themes -mytheme myfunction.php(我放 phptojson() 的地方)-js myscript.js

基本上我想用 ajax 从 myscript.js 调用我的函数,我正在尝试我在这里找到的这种方法,但它不起作用:

function getJsonElement() {
    $.get('/includes/custom-function.php', function(phptojson) {      
    console.log(data);
} );
}

哪种有意义..我的下一步可能是什么?

PS。我的 json 文件如下所示:

string(162036) "{"1439":
{"program_type":"long","province":"NY","language":"EN","tuition":"10","lenght":"full","title":"My School","location":"10 awesome street, NY, US"}}

标签: javascriptphpjsonajaxwordpress

解决方案


推荐阅读