/** * Fetch and cache package data. * * @since 1.0.0 * * @return array */ protected function fetch_packages_data() { $packages = get_site_transient(self::PACKAGES_TRANSIENT_KEY); if (!$packages) { $packages = $this->client->get_packages(); if (is_wp_error($packages)) { $packages = array(); } set_site_transient(self::PACKAGES_TRANSIENT_KEY, (array) $packages, HOUR_IN_SECONDS); } return $packages; }