/** * Returns blog_id by home url * If database not initialized yet - returns 0 * * @return integer */ public static function get_current_blog_data() { $host = Util_Environment::host(); // subdomain if (Util_Environment::is_wpmu_subdomain()) { $blog_data = Util_WpmuBlogmap::try_get_current_blog_data($host); if (is_null($blog_data)) { $GLOBALS['w3tc_blogmap_register_new_item'] = $host; } return $blog_data; } else { // try subdir blog $url = $host . $_SERVER['REQUEST_URI']; $pos = strpos($url, '?'); if ($pos !== false) { $url = substr($url, 0, $pos); } $url = rtrim($url, '/'); $start_url = $url; for (;;) { $blog_data = Util_WpmuBlogmap::try_get_current_blog_data($url); if (!is_null($blog_data)) { return $blog_data; } $pos = strrpos($url, '/'); if ($pos === false) { break; } $url = rtrim(substr($url, 0, $pos), '/'); } $GLOBALS['w3tc_blogmap_register_new_item'] = $start_url; return null; } }