Zaawansowana implementacja
Dynamiczne ładowanie parametrówDla bardziej zaawansowanych implementacji możesz ładować parametry widgetu dynamicznie z konfiguracji sklepu, localStorage lub innych źródeł
danych.Przykład 1: Pobieranie języka z localStorage (function(){
// Pobierz język z localStorage lub użyj domyślnego
let lang = (localStorage.getItem('shop-lang') || 'pl').toLowerCase();
// Walidacja - obsługuj tylko dostępne języki
const supportedLangs = ['pl', 'en'];
lang = supportedLangs.includes(lang) ? lang : 'pl';
// Utwórz i skonfiguruj skrypt
const script = document.createElement('script');
script.id = 'globkurier-returns-loader';
script.src = 'https://plugin-assets.globkurier.pl/returns-loader.js';
script.setAttribute('data-shop-code', 'KOD_SKLEPU');
script.setAttribute('data-container', 'globkurier-returns-widget');
script.setAttribute('data-lang', lang);
// Dodaj skrypt do DOM
document.currentScript.parentNode.appendChild(script);
})();
Przykład 2: Integracja z konfiguracją sklepu e-commerce (function(){
// Pobierz konfigurację sklepu (przykład dla WooCommerce/PrestaShop/Shopify)
const shopConfig = window.shopSettings || {};
// Język z konfiguracji strony lub wykrycie z atrybutu lang
const pageLang = document.documentElement.lang ||
shopConfig.locale ||
navigator.language.substring(0, 2);
// Mapowanie lokalizacji na obsługiwane języki
const langMap = {
'pl': 'pl', 'pl-PL': 'pl',
'en': 'en', 'en-US': 'en', 'en-GB': 'en'
};
const widgetLang = langMap[pageLang] || 'en';
// Kolor marki z konfiguracji sklepu
const brandColor = shopConfig.brandColor || '#96c21f';
// Utwórz skrypt z dynamicznymi parametrami
const script = document.createElement('script');
script.src = 'https://plugin-assets.globkurier.pl/returns-loader.js';
script.setAttribute('data-shop-code', shopConfig.globkurierShopCode || 'KOD_SKLEPU');
script.setAttribute('data-container', 'globkurier-returns-widget');
script.setAttribute('data-lang', widgetLang);
script.setAttribute('data-primary-color', brandColor);
document.currentScript.parentNode.appendChild(script);
})();
Przykład 3: Dostosowanie koloru marki (function(){
const script = document.createElement('script');
script.src = 'https://plugin-assets.globkurier.pl/returns-loader.js';
script.setAttribute('data-shop-code', 'KOD_SKLEPU');
script.setAttribute('data-container', 'globkurier-returns-widget');
script.setAttribute('data-lang', 'pl');
// Kolor marki w formacie HEX — dostosuj do identyfikacji wizualnej sklepu
script.setAttribute('data-primary-color', '#e63946');
document.currentScript.parentNode.appendChild(script);
})();
Uwagi dotyczące zaawansowanej implementacji#
Upewnij się, że skrypt jest wykonywany po pełnym załadowaniu DOM
Użyj DOMContentLoaded jeśli skrypt jest w <head>
Lub umieść skrypt na końcu <body>
Zawsze waliduj kod sklepu przed przekazaniem do widgetu
Sprawdzaj czy język jest obsługiwany przez widget (pl, en)
Zabezpiecz się przed undefined/null wartościami
Kolor marki musi być poprawnym kodem HEX z # na początku (np. #ff6600)
Modified at 2026-06-16 11:06:42