/**
  * Delete a single mapping
  *
  * ## OPTIONS
  *
  * <id>
  * : Mapping ID
  */
 public function delete($args)
 {
     $mapping = Network_Mapping::get($args[0]);
     if (empty($mapping)) {
         $mapping = new WP_Error('mercator.cli.mapping_not_found', __('Invalid mapping ID', 'mercator'));
     }
     if (is_wp_error($mapping)) {
         return WP_CLI::error($mapping->get_error_message());
     }
     $result = $mapping->delete();
     if (empty($result) || is_wp_error($result)) {
         return WP_CLI::error(__('Could not delete mapping', 'mercator'));
     }
 }
Example #2
0
/**
 * Register filters for URLs, if we've mapped
 */
function register_mapped_filters()
{
    $current_site = $GLOBALS['current_blog'];
    $real_domain = $current_site->domain;
    $domain = $_SERVER['HTTP_HOST'];
    if ($domain === $real_domain) {
        // Domain hasn't been mapped
        return;
    }
    $domains = get_possible_mapped_domains($domain);
    $mapping = Network_Mapping::get_active_by_domain($domains);
    if (empty($mapping) || is_wp_error($mapping)) {
        return;
    }
    $GLOBALS['mercator_current_network_mapping'] = $mapping;
    add_filter('site_url', __NAMESPACE__ . '\\mangle_url', -11, 4);
    add_filter('home_url', __NAMESPACE__ . '\\mangle_url', -11, 4);
}