IdeaSoft
IdeaSoft kurulumu
IdeaSoft mağazalarında Selwise kurulumu: script, dataLayer, üye kodu ve kontrol listesi.
IdeaSoft'ta verinin üç kaynağı vardır ve her biri farklı bir şey taşır:
| Kaynak | Ne taşır | Ne taşımaz |
|---|---|---|
| IdeaSoft dataLayer'ı | Ürün, liste, sepet, ödeme ve satın alma olayları | Üye, giriş, kayıt, arama |
| Sayfanın kendi değişkenleri | Sayfa türü ve üyenin giriş yapıp yapmadığı | Üyenin kimliği |
| Özel Script Kodları | Üye kimliği ve e-postası (yalnızca belirli sayfalarda) | Diğer sayfalar |
Selwise ilk ikisini kendisi okur. Üçüncüsü için panele bir kez kod yapıştırmanız gerekir — bu yapılmazsa hiçbir olay ve hiçbir sipariş bir üyeye bağlanmaz.
1. Script kurulumu
Scripti Ayarlar → Genel Ayarlar → Özel Script Kodları → Site İzleme & Remarketing Kodu alanına ekleyin. Bu alan her sayfada çalışır.
<link rel="preconnect" href="https://widget.selwise.com" crossorigin>
<link rel="preconnect" href="https://api.selwise.com" crossorigin>
<script>window.Selwise=window.Selwise||{};window.Selwise.q=window.Selwise.q||[];['track','trackOrder','identify','setTraits','pushDataLayer','grantConsent','revokeConsent','showConsentPreferences','withdrawConsent','endJourney'].forEach(function(m){if(!window.Selwise[m])window.Selwise[m]=function(){window.Selwise.q.push([m,arguments])}});</script>
<script async src="https://widget.selwise.com/client.js" data-site-key="SITE_KEY"></script>
Scripti Google Tag Manager üzerinden yüklüyorsanız bu da çalışır; ikisini birden eklemeyin.
2. dataLayer
IdeaSoft'un kendi dataLayer'ı yalnızca IdeaSoft panelinde Google Tag Manager / dataLayer yapısı açıksa gönderilir. Sayfa kaynağında useDatalayer = '1' görmüyorsanız ürün, sepet ve satın alma olaylarının hiçbiri gelmez.
Selwise panelinde Entegrasyonlar → Data Layer sayfasından platform olarak ideasoft seçin. Kendi eşlemenizi yazmanız gerekmez:
| IdeaSoft olayı | Selwise olayı |
|---|---|
view_item | product_view |
view_item_list | product_impression |
add_to_cart / remove_from_cart | add_to_cart / remove_from_cart |
view_cart | cart_view |
begin_checkout | checkout_begin |
add_shipping_info / add_payment_info | checkout_progress |
add_to_wishlist | wishlist |
purchase | purchase — sipariş olarak da kaydedilir |
Aynı sayfada Kullanıcı modülünü açık tutun; giriş ve çıkış olayları bu modülden geçer.
3. Üye kodu (Özel Script Kodları)
IdeaSoft, giriş yapmış üyenin kimliğini sayfaya yalnızca Özel Script Kodları alanlarında {memberId} ve {email} değişkenleriyle verir. Bu değişkenler üç alanda vardır:
| Alan | Hangi sayfada çalışır | Üye değişkenleri |
|---|---|---|
| Anasayfa Takip Kodu | Ana sayfa | {memberId}, {email} |
| Ürün Takip Kodu | Ürün detay | {memberId}, {email} |
| Sepet Takip Kodu | Sepet | {memberId}, {email} |
| Sipariş Takibi & Dönüşüm Kodu | Teşekkür sayfası | Yok |
| Üyelik Takibi Kodu | Üye kaydı tamamlama | Yok |
Anasayfa, Ürün ve Sepet Takip Kodu
Aşağıdaki kodu üç alana da aynen yapıştırın:
<script type="text/plain" id="selwise-ideasoft-member">{memberId}
{email}</script>
<script>
(function () {
var node = document.getElementById('selwise-ideasoft-member');
if (!node) return;
var parts = (node.textContent || '').split('\n');
var id = (parts[0] || '').trim();
var email = (parts[1] || '').trim();
if (!id || id.charAt(0) === '{') return;
var S = window.Selwise = window.Selwise || {};
S.q = S.q || [];
if (!S.identify) S.identify = function () { S.q.push(['identify', arguments]); };
S.identify(id, email.indexOf('@') > 0 ? { email: email } : undefined);
})();
</script>
Kodun neden bu şekilde yazıldığı:
- Değerler bir
text/plainbloğunda durur. IdeaSoft değişkenleri koda olduğu gibi yazar; e-posta adresi bir JavaScript metninin içine yazılsaydı, adresteki tek bir tırnak işareti sayfadaki kodu bozardı. - Boş ya da doldurulmamış değer atlanır. Ziyaretçi giriş yapmamışsa kimlik boş gelir ve kod hiçbir şey yapmaz.
- Selwise henüz yüklenmemiş olabilir. Çağrı kuyruğa alınır ve script yüklendiğinde çalıştırılır.
- Her sayfada çalışması maliyetsizdir. Aynı kişi için ikinci çağrı sunucuya istek atmaz.
E-posta, üyenin kimliğine bağlanır ve sunucuda karma olarak saklanır; bir özellik (trait) olarak saklanmaz ve pazarlama izni yerine geçmez.
Kimlik, içe aktarılan müşterilerle aynıdır
{memberId}, IdeaSoft'un üye numarasıdır. Geçmiş müşterilerinizi Veri Aktarımı ile aynı numarayla yüklediyseniz, giriş yapan üye doğrudan kendi profiline bağlanır ve sipariş geçmişi korunur.
Üyelik Takibi Kodu
Kayıt tamamlama sayfasında üye değişkeni yoktur; bu alan yalnızca kaydın gerçekleştiğini bildirir:
<script>
(function () {
var S = window.Selwise = window.Selwise || {};
S.q = S.q || [];
if (!S.track) S.track = function () { S.q.push(['track', arguments]); };
S.track('user_signup', { entityType: 'user', entityId: 'signup', metadata: { source: 'ideasoft_signup_page' } });
})();
</script>
Yeni üyenin kimliği, girdiği ilk ana sayfa, ürün veya sepet sayfasında gelir.
Sipariş Takibi & Dönüşüm Kodu
Bu alana Selwise kodu eklemeyin. Satın alma, IdeaSoft dataLayer'ının purchase olayıyla zaten gelir ve sipariş olarak kaydedilir. Ayrıca trackOrder çağırmak aynı siparişi ikinci bir yazıcıdan göndermek olur.
Sipariş, ziyaretçi üzerinden üyeye bağlanır: alışveriş yapan üye ödemeden önce en az bir ürün veya sepet sayfasından geçtiği için kimliği o noktada zaten bilinir.
4. Selwise'in kendisi okuduğu sinyaller
Bunlar için kod eklemeniz gerekmez:
| Sinyal | Kaynağı | Davranış |
|---|---|---|
| Sayfa türü | Her sayfadaki route değişkeni | Arama, kategori, marka, ürün, sepet ve üyelik sayfaları doğrudan IdeaSoft'un yönlendiricisinden okunur. URL kalıpları yedek olarak kalır. |
Giriş (user_login) | Her sayfadaki isMember değişkeni | Aynı tarayıcıda giriş yapılmamış durumdan giriş yapılmış duruma geçiş. Selwise'in ilk gördüğü an giriş sayılmaz. |
Çıkış (user_logout) | Mağazanın çıkış bağlantısı (/cikis) | Bağlantıya tıklanıp üye çıkmış göründüğünde çıkış kaydedilir ve tarayıcıdaki üye kimliği unutulur. |
Arama (search_query) | Sonuç sayfası: /arama/... veya /arama?q=... | Yalnızca Selwise araması kapalıysa. Açıksa sorgu, aramanın kendisi tarafından zaten kaydedilir; ikinci kez sayılmaz. |
Oturumun kapanması çıkış değildir
IdeaSoft oturumu süre dolduğu için kapandığında Selwise bunu çıkış saymaz ve üye kimliğini silmez. Aynı kişi aynı tarayıcıyla ertesi gün döndüğünde vereceği sipariş hâlâ ona bağlanır. Kimlik yalnızca çıkış bağlantısıyla silinir.
5. Ürün kodları
Bir IdeaSoft ürününün iki kodu vardır ve ikisi de işe yarar:
| Kod | Örnek | Nerede kullanılır |
|---|---|---|
| Ürün numarası | 182739 | Beslemede ürün kodu, sepete ekleme |
| Stok kodu | 01025 | IdeaSoft dataLayer'ı (item_id) |
Selwise bir ürünü iki koduyla da tanır; dataLayer'dan stok koduyla gelen bir görüntüleme, beslemedeki ürün numarasıyla aynı ürüne yazılır. Beslemede ikisinin de eşlendiğini kontrol edin — bkz. Alan Eşleştirme.
Sepete ekleme
Öneri ve arama ayarlarında sepet platformu olarak IdeaSoft seçin. Selwise, IdeaSoft'un kendi /cart/add_item uç noktasına mağazanın CSRF anahtarıyla istek atar; mağaza isteği reddederse mağazanın kendi sepete ekle düğmesine geri döner. Test modunda deneyin.
Ürün beslemesi
IdeaSoft XML besleme üretir. Adresi Selwise'e girin, sonra alan eşleştirmesinde Hazır eşleştirme listesinden IdeaSoft (XML ürün export) seçin ve kaydedip yeniden senkronize edin — bkz. Alan Eşleştirme.
Hazır eşleştirme iki şeyi düzeltir:
- Başlık
rootlabelalanından okunur. IdeaSoft bir varyantı kendi satırı olarak yazar ve o satırınlabelalanında yalnızca varyant değeri durur: "M", "Yeşil", "Brown Trout".labelbaşlık yapılırsa beden satırının kartında "M" yazar.rootlabelher satırda ürünün tam adıdır. - Varyantlar ebeveynlerinin altında gruplanır. IdeaSoft beslemesinde grup alanı yoktur; Selwise grubu ebeveyn adından çıkarır (
rootlabeleksilabel). Stok kodu soneki (04341-002) bunun için güvenilir değildir: varyantların yalnızca bir kısmında bulunur. Kategorisi olmayan bir varyant, rolünü ebeveyninin kategorisinden alır — bkz. Varyant Gruplama.
Kurulumu doğrulama
- Mağazada bir test üyesiyle giriş yapın ve bir ürün sayfası açın.
- Tarayıcı konsolunda
Selwise.getSiteUserId()yazın; üye numaranız dönmelidir. - Panelde Kitle → Site Kullanıcıları sayfasında bu üyenin profilini açın; ziyaretçinin profile bağlandığını görün.
- Bir test siparişi verin; sipariş, profilin sipariş listesinde görünmelidir.
- Mağazadan çıkış yapın ve konsolda
Selwise.getSiteUserId()yazın; boş dönmelidir.
Kontrol listesi
- Script tüm sayfalarda (Site İzleme & Remarketing Kodu)
- Domain doğrulandı
- IdeaSoft'ta dataLayer yapısı açık (
useDatalayer = '1') - dataLayer profili
ideasoft, Kullanıcı modülü açık - Üye kodu Anasayfa, Ürün ve Sepet Takip Kodu alanlarında
- Kayıt kodu Üyelik Takibi Kodu alanında
- Sipariş Takibi alanında Selwise kodu yok
- Giriş yapan üye Site Kullanıcıları'nda görünüyor
- Siparişler panele düşüyor ve üyeye bağlanıyor
- Besleme senkronize, ürün numarası ve stok kodu eşlenmiş
- Sepete ekleme çalışıyor
Son güncelleme: 9 Ekim 2026