1. Для получения данных используйте функции wp_remote_get(), wp_remote_retrieve_body(),
2. Для парсинга данных из json используйте json_decode()
3. Во избежание множественных запросов используйте transients cache для кеширования ответа
Документация по всем упомянутым функциям есть в Кодексе.