Сокращение и размещение менеджера тегов Google в файлах JavaScript локально - PullRequest
1 голос
/ 04 июня 2019

Прежде чем начать, я должен упомянуть, что я знаю о Размещение файла Google JavaScript локально не рекомендуется Google. Но так как время кэширования этих файлов очень мало, я хочу иметь его локально с гораздо большим временем кэширования. Я также автоматически получаю последнюю версию при изменении реального файла.

Я каждый день пытаюсь получить файл ga.js от cron и разместить его локально:

$ana = file_get_contents('https://www.google-analytics.com/analytics.js');
if ($ana!==false){
   file_put_contents('ANA_LOCAL_PATH',$ana);
   $tag = file_get_contents('https://www.googletagmanager.com/gtag/js');
   if ($tag!==false){
      $tag = str_replace('https://www.google-analytics.com/analytics.js','ANA_LOCAL_URL',$tag);
      file_put_contents('GTAG_LOCAL_PATH',$tag);
   }
}

Я также получаю файл analytics.js и заменяю URL Google локальным analytics.js файлом.

Но я хочу, чтобы это было доказательством на будущее. Google использует этот URL:

https://www.googletagmanager.com/gtag/js?id=UA-xxxxxxxxx-x

Я использую это:

https://www.googletagmanager.com/gtag/js

У меня более 10 идентификаторов менеджера тегов, и я получаю файл JavaScript только один раз без идентификатора.

Другое дело, что заголовочный файл Google начинается с этого:

// Copyright 2012 Google Inc. All rights reserved.
(function(){

var data = {
"resource": {
  "version":"1",
  "macros":[],
  "tags":[],
  "predicates":[],
  "rules":[]
},
"runtime":[
[],[]
]
  • В этом файле есть несколько новых строк (не только в заголовке), которые должным образом не уменьшены.
  • Я обнаружил, что Google не очень хорошо минимизировал скрипт. например, case "url_no_fragment" имеет пробел после регистра. Это может быть case"url_no_fragment". Вы можете найти много switch case с пробелами в файле.

Вопрос

  1. Есть ли проблема в методе загрузки (сейчас или в будущем) только потому, что я не получаю его с идентификатором менеджера тегов Google?
  2. Могу ли я минимизировать файлы Google своим собственным методом и устранить некоторые недостатки, о которых я упоминал?
  3. Я знаю, что эта часть не связана с программированием, и я думаю, что получаю НЕТ за это. но только ради минификации. Могу ли я удалить этот комментарий об авторских правах, чтобы получить лучший файл минимизации?
...