Skip to content

Instantly share code, notes, and snippets.

View mbaersch's full-sized avatar

Markus Baersch mbaersch

View GitHub Profile
@mbaersch
mbaersch / piwikpro-resize-tagcode.html
Last active March 26, 2021 18:04
PiwikPro Tag Manager Debug Resize
<script>
/*
PIWIK PRO TAG MANAGER DEBUGGER RESIZE
adds 200px width to the PiwikPro Tag Manager debug panel and creates links (at top right) to enhance or decrease with in 200 pixel steps
usage: create new (async) html tag in PiwikPro Tag Manager, paste this code and fire tag on DOM ready, if "Preview Mode" is "1".
get preview status from stg_debug cookie as there is no built in variable for debug status (afaik)
*/
function ppResizeDebug(w) {
var pnl = document.querySelector("#seventag_container_debugger");
@mbaersch
mbaersch / konamicode-easteregg.js
Last active May 6, 2025 20:45
Konami code easter egg for websites
<script>
/*Animate element and change text / html if konami code is entered on a page - can be used as custom HTML in Google Tag Manager.
Source / idea: https://www.simoahava.com/gtm-tips/add-konami-code-to-your-site/ */
/* SETUP */
//message to display on "konami element" after animation. HTML can be used as well - innerHTML will be replaced with whatever gets defined here.
//leave blank for no change (just animation)
var konamiMessage = 'you are awesome! ;)</small>';
//CSS Selector for element to animate and display message (e.g. "#someId", "div.someclass". info: https://www.w3schools.com/cssref/css_selectors.asp)
@mbaersch
mbaersch / Demo-Client.tpl
Created September 8, 2020 21:46
Serverside GTM Demo Client + Tag Template
___INFO___
{
"type": "CLIENT",
"id": "cvt_temp_public_id",
"version": 1,
"securityGroups": [],
"displayName": "Demo Logger",
"brand": {
"id": "brand_dummy",
@mbaersch
mbaersch / matomo-resize-tagcode.html
Last active February 19, 2022 12:12
adjust size of Matomo Tag Manager preview / debug console
<script>
//use this script to adjust size of Matomo Tag Manager preview / debug console
//usage: create html tag in MTM, paste this code and fire tag on DOM ready, if "Preview Mode" is "1"
var mtmPreviewSize;
//resize MTM preview via console
function resizeMtmPreview(prz) {
//only in preview mode
if ({{PreviewMode}}) {
var mtm = document.querySelector('iframe#mtmDebugFrame');
//Alle APIs, die wir zum Lesen, Verarbeiten und Weitergeben brauchen, werden hier geladen
const claimRequest = require('claimRequest');
const returnResponse = require('returnResponse');
const getRequestQueryParameter = require('getRequestQueryParameter');
const runContainer = require('runContainer');
const setPixelResponse = require('setPixelResponse');
const getRequestHeader = require('getRequestHeader');
const getRequestPath = require('getRequestPath');
const getRemoteAddress = require('getRemoteAddress');
@mbaersch
mbaersch / gaproxy.php
Last active July 7, 2022 14:48
simple PHP proxy for Google Analytics hits
<?php
/******************************************************************************************************/
//send hits to GA- or GTM tag-server: use this file via transport_url
//more info: https://developers.google.com/tag-manager/serverside/send-data
/******************************************************************************************************/
//define destination for tracking hits - either on www.google-analytics.com
//or own tag server like https://trk.myserver.com/collect or
//https://gtm-xxxxxx-xxxx.xx.x.appspot.com/collect :
$endpoint = "https://www.google-analytics.com/collect";
@mbaersch
mbaersch / functions.php
Created March 25, 2020 11:39
send serverside conversions from a Wordpress shop (e. g. wooCommerce) to Google Analytics
<?php
// add one of the two following options to the functions.php of your child theme in order to send server side
// conversion data to Google Analytics
// NOTE: function store_gclid() is used by both variants
/***************************************************************************************************/
// send conversion to Analytics - Option 1: track success page as only pageview in the session and
// create a goal for path "/conversion/"
// adjust goal path (fragment) in $goalurl in order to fit your url structure
// comment out line below to deactivate
@mbaersch
mbaersch / getclient.php
Last active November 21, 2022 22:49
Codebeispiele zu "cookielosem" Tracking mit Google Analytics
<?php
//Einfachster Fall: Es existiert schon eine Session, weil das System sie braucht. Dann reicht statt der folgenden Zeile ein einfaches
//session_start();
//Im anderen Fall steuern wir diue Optionen des Session Cookies selbst und können wahlweise
//"All In" gehen, wenn es um Schutz des Cookies vor ITP oder Lesen des Werts im Browser geht:
session_start(['cookie_secure' => true, 'cookie_httponly' => true, 'cookie_samesite' => true]);
//Rückgabe der Session Id. Das war tatsächlich schon alles
echo session_id();
@mbaersch
mbaersch / logger-client-example.js
Last active August 28, 2023 23:28
PHP Helper für serverseitiges und / oder cookieloses Tracking mit Google Analytics
//Einfaches Beispiel der Nutzung des serverseitigen Loggers im Client - also der entsprechende "Trackingcode":
function doLog(tp, pr) {
tp = tp.toLowerCase();
if (!pr) pr = "";
var rf = document.referrer;
var params = "?ht=" + tp;
if (rf) params += "&rf=" + encodeURI(rf);
if (pr!="") params += "&in=" + encodeURI(pr);
var img = new Image();
img.style.left = "-5000px";
@mbaersch
mbaersch / secure_ga_cookie.php
Last active March 16, 2021 12:54
raw code for handling Google Analytics clientId in a separate secure https cookie and writing it to the dataLayer to be used by ga tracking tags