/** * Updating Site Relations for new sites. * * @param int $blog_id * @return int Number of affected rows. */ private function update_relation($blog_id) { if (empty($_POST['related_blogs'])) { return 0; } $new_related = (array) $_POST['related_blogs']; $related = array_map('intval', $new_related); return $this->site_relation->insert_relations($blog_id, $related); }
/** * Moves site relations from deprecated site options to the new custom network table. * * @return void */ private function import_site_relations() { // TODO: With WordPress 4.6 + 2, just use `get_sites()`, and remove `$is_pre_4_6`. $is_pre_4_6 = version_compare($GLOBALS['wp_version'], '4.6-RC1', '<'); $all_sites = $is_pre_4_6 ? wp_get_sites() : get_sites(); foreach ($all_sites as $site) { // TODO: With WordPress 4.6 + 2, just use `$site->id`. $site_id = $is_pre_4_6 ? $site['blog_id'] : $site->id; $linked = get_blog_option($site_id, 'inpsyde_multilingual_blog_relationship', []); if ($linked) { $this->site_relations->insert_relations($site_id, $linked); } delete_blog_option($site_id, 'inpsyde_multilingual_blog_relationship'); } }