WordPress REST API — записать в файл JSON?

Я возился с WordPress REST API, создал свою собственную конечную точку и получил именно те данные, которые мне нужны. По сути, я создал конечную точку для получения всех своих записей / pages / acf. Вместо вызова API при каждой загрузке страницы, я просто хотел вызвать API один раз во время моего предварительного загрузчика.

Однако, когда я вызываю API, запускается вся логика, которая затем вызывает время загрузки от 1 до 2 секунд. Есть ли вероятность, что всякий раз, когда я делаю обновление в WordPress, он вызывает мою конечную точку и записывает файл JSON на сервер, например data.json? Таким образом, когда я загружаю свой сайт, он может вызывать этот data.json без каких-либо задержек.

Я не уверен, если это возможно, но хотел попробовать здесь.

1

Решение

Вы должны быть в состоянии сделать что-то в этом направлении. Проверьте код ниже:

function export_posts_in_json () {

$args = array(
'post_type' => 'post',
'post_status' => 'publish',
'posts_per_page' => -1,
);

$query = new WP_Query( $args );

...

$data = json_encode($posts);

$folder = 'YOUR_EXPORT_PATH_HERE';
$file_name = date('Y-m-d') . '.json';
file_put_contents($folder.$file_name, $data);
}

add_action( 'save_post', 'export_posts_in_json' );

Это должно сохранять файл json каждый раз, когда создается сообщение. Я уверен, что вы можете изменить его, чтобы экспортировать все данные, необходимые для вашего сайта.

2

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector