<?php

namespace CF\WordPress;

class WordPressWrapper
{
    public function getOption($key, $default)
    {
        return get_option($key, $default);
    }

    public function updateOption($key, $value)
    {
        return update_option($key, $value);
    }

    public function deleteOption($key)
    {
        return delete_option($key);
    }

    public function getSiteURL()
    {
        if(function_exists('domain_mapping_siteurl')){
            return domain_mapping_siteurl('');
        } else {
           return get_site_url();
        }    
    }
}

<?php

namespace CF\WordPress;

class WordPressWrapper
{
    public function getOption($key, $default)
    {
        return get_option($key, $default);
    }

    public function updateOption($key, $value)
    {
        return update_option($key, $value);
    }

    public function deleteOption($key)
    {
        return delete_option($key);
    }

    public function getSiteURL()
    {			
		$site_url = get_site_url();
		
        if(function_exists('domain_mapping_siteurl')){
            $site_url = domain_mapping_siteurl($site_url);
        } 
		
        return $site_url;  
    }
}

Use subdomain URL if no domain mapping available
Use subdomain URL if no domain mapping available

If no mapping available, "domain_mapping_siteurl()" returns the argument untouched (behaves like a filter).