コード例 #1
0
ファイル: define.php プロジェクト: nuevomediagroup/nmg-code
/**
 * Normalizes file name for minify
 *
 * Relative to document root!
 *
 * @param string $file
 * @return string
 */
function w3_normalize_file_minify2($file)
{
    $file = w3_remove_query($file);
    $file = w3_normalize_file_minify($file);
    $file = w3_translate_file($file);
    return $file;
}
コード例 #2
0
ファイル: TotalCache.php プロジェクト: niko-lgdcom/archives
 /**
  * CDN purge post action
  *
  * @return void
  */
 function cdn_purge_post()
 {
     $title = 'Content Delivery Network (CDN): Purge Tool';
     $results = array();
     require_once W3TC_LIB_W3_DIR . '/Request.php';
     $files = W3_Request::get_array('files');
     $document_root = w3_get_document_root();
     $purge = array();
     foreach ($files as $remote_file) {
         $local_file = $document_root . '/' . w3_translate_file($remote_file);
         $purge[$local_file] = $remote_file;
     }
     if (count($purge)) {
         require_once W3TC_LIB_W3_DIR . '/Plugin/Cdn.php';
         $w3_plugin_cdn =& W3_Plugin_Cdn::instance();
         $w3_plugin_cdn->purge($purge, false, $results);
     } else {
         $errors[] = 'Empty files list.';
     }
     include W3TC_DIR . '/inc/popup/cdn_purge.phtml';
 }
コード例 #3
0
 /**
  * Exports min files to CDN
  *
  * @return array
  */
 function get_files_minify()
 {
     $files = array();
     if (W3TC_PHP5 && $this->_config->get_boolean('minify.rewrite') && (!$this->_config->get_boolean('minify.auto') || w3_is_cdn_mirror($this->_config->get_string('cdn.engine')))) {
         require_once W3TC_INC_DIR . '/functions/http.php';
         $minify =& w3_instance('W3_Plugin_Minify');
         $document_root = w3_get_document_root();
         $site_root = w3_get_site_root();
         $minify_root = w3_path(W3TC_CACHE_FILE_MINIFY_DIR);
         $minify_path = ltrim(str_replace($site_root, rtrim(w3_get_site_path(), '/'), $minify_root), '/');
         $urls = $minify->get_urls();
         if ($this->_config->get_string('minify.engine') == 'file') {
             foreach ($urls as $url) {
                 w3_http_get($url);
             }
             $files = $this->search_files($minify_root, $minify_path, '*.css;*.js');
         } else {
             foreach ($urls as $url) {
                 $file = w3_normalize_file_minify($url);
                 $file = w3_translate_file($file);
                 if (!w3_is_url($file)) {
                     $file = $document_root . '/' . $file;
                     $file = ltrim(str_replace($minify_root, '', $file), '/');
                     $dir = dirname($file);
                     if ($dir) {
                         w3_mkdir($dir, 0777, $minify_root);
                     }
                     if (w3_download($url, $minify_root . '/' . $file) !== false) {
                         $files[] = $minify_path . '/' . $file;
                     }
                 }
             }
         }
     }
     return $files;
 }
コード例 #4
0
 /**
  * Normalizes URL
  * @param string $url
  * @return string
  */
 function _normalize_file($url)
 {
     $url = preg_replace('~\\?ver=[0-9\\.]+$~', '', $url);
     $url = w3_normalize_file($url);
     $url = w3_translate_file($url);
     return $url;
 }