Tento filtr umožňuje spustit kampaň pouze tehdy, když zadaný JavaScriptový výraz vrátí hodnotu true. Díky tomu můžeš využít libovolnou logiku, vlastní proměnné, stav aplikace nebo specifická data ze stránky, která nejsou dostupná jinými filtry. Jedná se o nejflexibilnější způsob cílení v Mailocatoru, vhodný pro pokročilé scénáře, SPA aplikace i vlastní integrace.
K čemu to slouží?
JavaScriptový výraz ti dává plnou kontrolu nad tím, kdy se má kampaň spustit. Může vycházet z čehokoli, co je na stránce dostupné: od stavu košíku, přítomnosti určitého prvku, výsledku vlastní funkce až po interní proměnné aplikace.
Osvědčená praxe
Použij tento filtr tehdy, když potřebuješ vyhodnotit vlastní logiku, která není pokryta ostatními filtry. Typické příklady zahrnují:
přítomnost konkrétního DOM prvku (např. widget třetí strany),
obsah vlastní JS proměnné aplikace (např. stav uživatele, stav košíku),
informace dostupné pouze interním API,
detekci vlastností, které se dynamicky mění v SPA, kde URL filtry nestačí.
Udržuj výraz co nejjednodušší a vždy jej otestuj v konzoli prohlížeče.
Příklady použití
Spuštění kampaně pouze pokud je košík prázdný
cart.items.length === 0 Když je uživatel přihlášen / nepřihlášen
window.user && window.user.loggedIn === true Pokud je na stránce přítomen určitý blok
document.querySelector('#cookie-banner') !== null Pokud má produkt určitou cenu (např. > 1000 Kč)
window.product?.price > 1000 Udržuj výraz krátký a čitelný. Pokud používáš interní proměnné aplikace, ošetři situace, kdy ještě nejsou načtené (např. pomocí ?.). Při použití ve SPA vždy zkontroluj, zda se výraz vyhodnocuje správně i při dynamickém načítání stránek.