Создайте файл json из массива с помощью php, верните его и используйте его с javascript из файла javascript в WordPress - PullRequest
0 голосов
/ 05 декабря 2018

Вот моя проблема: я создал файл json с php, и мне нужно получить к нему доступ с помощью 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.

Теперь моя проблема: что я могу сделать с этим файлом.В более старом коде, который я улучшал, использовался тег script для печати файла в документе HTML для доступа к нему.

Я хочу вызвать функцию phptojson из моего файла javascript, чтобы получить к нему доступ.Я уже создал карты Google, которые работают нормально, поэтому мне нужно распечатать результат только из функции javascript.Моя файловая иерархия выглядит так:

wp-content -themes -mytheme myfunction.php (куда я помещаю phptojson ()) -js myscript.js

По сути, я хочу вызвать мою функцию изmyscript.js с ajax, и я пытаюсь использовать этот подход, который я нашел здесь, но он не работает:

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"}}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...