diff --git a/Gemfile b/Gemfile index 51ec1c4878d2..2d8043c72ce7 100644 --- a/Gemfile +++ b/Gemfile @@ -37,6 +37,7 @@ end # Gems for al-folio plugins group :al_folio_plugins do + gem 'al_analytics', :git => 'https://github.com/al-org-dev/al-analytics.git' gem 'al_citations', :git => 'https://github.com/al-org-dev/al-citations.git' gem 'al_ext_posts', :git => 'https://github.com/al-org-dev/al-ext-posts.git' end diff --git a/Gemfile.lock b/Gemfile.lock index 4f86d4de3d71..1faa4e09204c 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -6,6 +6,14 @@ GIT jekyll (>= 0.10.0) terser (>= 1.0.0) +GIT + remote: https://github.com/al-org-dev/al-analytics.git + revision: a9c7821b0a3639ed3f1cc8a8cdcaabfbb4f64f5d + specs: + al_analytics (0.1.0) + jekyll (>= 3.0) + liquid (>= 4.0) + GIT remote: https://github.com/al-org-dev/al-citations.git revision: d6dd73152f8ceafe475f0f0ad5c846167c006e4f @@ -288,6 +296,7 @@ PLATFORMS x86_64-linux-musl DEPENDENCIES + al_analytics! al_citations! al_ext_posts! classifier-reborn diff --git a/_config.yml b/_config.yml index 241a1190ab32..363a439ceb7a 100644 --- a/_config.yml +++ b/_config.yml @@ -72,12 +72,13 @@ og_image: # The site-wide (default for all links) Open Graph preview image # Analytics and search engine verification # ----------------------------------------------------------------------------- -# For Google Analytics, see https://support.google.com/analytics/answer/10447272?hl=en&ref_topic=14088998&sjid=5129943941510317771-SA#zippy=%2Cgoogle-sites -# and follow the instructions for Google Sites. You will need to create a Google Analytics property and copy the Google tag ID. -google_analytics: # your Google Analytics measurement ID (format: G-XXXXXXXXXX) -cronitor_analytics: # cronitor RUM analytics site ID (format: XXXXXXXXX) -pirsch_analytics: # your Pirsch analytics site ID (length 32 characters) -openpanel_analytics: # your Openpanel analytics client ID (format: XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX) +analytics: + # For Google Analytics, see https://support.google.com/analytics/answer/10447272?hl=en&ref_topic=14088998&sjid=5129943941510317771-SA#zippy=%2Cgoogle-sites + # and follow the instructions for Google Sites. You will need to create a Google Analytics property and copy the Google tag ID. + google: # your Google Analytics measurement ID (format: G-XXXXXXXXXX) + cronitor: # cronitor RUM analytics site ID (format: XXXXXXXXX) + pirsch: # your Pirsch analytics site ID (length 32 characters) + openpanel: # your Openpanel analytics client ID (format: XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX) # For Google Search Console, see https://support.google.com/webmasters/answer/9008080?hl=en#meta_tag_verification&zippy=%2Chtml-tag google_site_verification: # your google-site-verification ID (Google Search Console) @@ -228,6 +229,7 @@ plugins: - jemoji # al-folio plugins + - al_analytics - al_citations - al_ext_posts @@ -392,10 +394,6 @@ lazy_loading_images: true # enables lazy loading of images (recommended) # Optional Features # ----------------------------------------------------------------------------- -enable_google_analytics: false # enables google analytics -enable_cronitor_analytics: false # enables cronitor RUM analytics -enable_pirsch_analytics: false # enables Pirsch analytics (https://pirsch.io/) -enable_openpanel_analytics: false # enables Openpanel analytics (https://openpanel.dev/) enable_google_verification: false # enables google site verification enable_bing_verification: false # enables bing site verification enable_masonry: true # enables automatic project cards arrangement diff --git a/_includes/scripts.liquid b/_includes/scripts.liquid index 7bbd07166933..67b7bd3e4e07 100644 --- a/_includes/scripts.liquid +++ b/_includes/scripts.liquid @@ -212,29 +212,9 @@ {% endunless %} {% endif %} -{% if site.enable_google_analytics %} +{% if site.plugins contains 'al_analytics' %} - - - -{% endif %} - -{% if site.enable_cronitor_analytics %} - - - -{% endif %} -{% if site.enable_pirsch_analytics %} - -{% endif %} -{% if site.enable_openpanel_analytics %} - - + {% al_analytics_scripts %} {% endif %} {% if site.enable_progressbar %} diff --git a/assets/js/cronitor-analytics-setup.js b/assets/js/cronitor-analytics-setup.js deleted file mode 100644 index 537bc5b4cc72..000000000000 --- a/assets/js/cronitor-analytics-setup.js +++ /dev/null @@ -1,6 +0,0 @@ -window.cronitor = - window.cronitor || - function () { - (window.cronitor.q = window.cronitor.q || []).push(arguments); - }; -cronitor("config", { clientKey: "{{ site.cronitor_analytics }}" }); diff --git a/assets/js/google-analytics-setup.js b/assets/js/google-analytics-setup.js deleted file mode 100644 index c66e2010ee58..000000000000 --- a/assets/js/google-analytics-setup.js +++ /dev/null @@ -1,6 +0,0 @@ -window.dataLayer = window.dataLayer || []; -function gtag() { - window.dataLayer.push(arguments); -} -gtag("js", new Date()); -gtag("config", "{{ site.google_analytics }}"); diff --git a/assets/js/open-panel-analytics-setup.js b/assets/js/open-panel-analytics-setup.js deleted file mode 100644 index fbd4833d2f92..000000000000 --- a/assets/js/open-panel-analytics-setup.js +++ /dev/null @@ -1,11 +0,0 @@ -window.op = - window.op || - function (...args) { - (window.op.q = window.op.q || []).push(args); - }; -window.op("init", { - clientId: "{{ site.openpanel_analytics }}", - trackScreenViews: true, - trackOutgoingLinks: true, - trackAttributes: true, -});