function naverSrchAds(list, url) { if(fn_is_empty(list)){ return false; } const commonHeaderAt = adScriptCommonHeaderAt(list); if(commonHeaderAt){ const adMediaId = commonHeaderAt.adMediaId; const value = document.cookie.match('(^|;) ?' + "originalHost" + '=([^;]*)(;|$)'); let hostCookie = value? value[2] : ""; //스키마정보 제거 hostCookie = hostCookie.replace(/^(https?:\/\/)/, ""); // (1) wcslog.js import let naverSrchAddScript = document.createElement('script'); naverSrchAddScript.type = 'text/javascript' naverSrchAddScript.src = '//wcs.naver.net/wcslog.js' document.head.appendChild(naverSrchAddScript); let naverSrchAdd2Script = document.createElement('script'); naverSrchAdd2Script.type = 'text/javascript' naverSrchAdd2Script.innerHTML = ` var checkNaverAdnPurchsInterval = setInterval(() => { if (window.wcs) { if(!wcs_add) var wcs_add = {}; // (2) 각 사이트별 식별자 설정 window.wcs_add = {wa : "${adMediaId}"}; // 사이트 식별자 (=네이버공통키, na_account_id) // (3) 광고 전환추적을 위한 cookie domain설정 wcs.inflow("${hostCookie}"); // ex. abc-motors.com // 아래 Script는 개별 이벤트 발생시 로그를 전송하기 위한 구역. 결제 완료 페이지이므로, PV 이벤트 와 결제완료 전환 이벤트를 전송함 clearInterval(checkNaverAdnPurchsInterval); // (4) PV 이벤트 전송 wcs_do(); // PV 이벤트 전송 } }, 100 ); `; document.head.appendChild(naverSrchAdd2Script); }//common header end //상품상세 페이지 if(url.includes(selectGoodsDtl)){ //장바구니 담기 const addCartEventAt = adScriptAddCartEventAt(list); if(addCartEventAt){ addCartStorage(addCartEventAt) } //위시리스트 등록 const wslistEventAt = adScriptAddWslistEventAt(list) if(wslistEventAt){ addWslistStorage(wslistEventAt) } } //주문 완료 페이지 if(url.includes(selectOrdrCompt)){ //# 주문완료 페이지가 로드되면 아래 코드 실행. const purchsCompleteFormAt = adScriptPurchsCompleteFormAt(list) if(purchsCompleteFormAt){ let naverSrchAddScript = document.createElement('script'); naverSrchAddScript.type = 'text/x-javascript' naverSrchAddScript.src = '//wcs.naver.net/wcslog.js' document.head.appendChild(naverSrchAddScript); // 상품정보 배열 let productDataArray = []; const adscriptVal = $('#adscript').val() const decode = decodeURIComponent(atob(adscriptVal).split('').map(function (c) { return '%' + ('00' + c.charCodeAt(0).toString(16)).slice(-2); }).join('')); const adscriptParse = JSON.parse(decode); let totalPrice = parseInt(adscriptParse.total.setleAmt) let finalOrderNo = adscriptParse.order.ordrInnb.toString() for(let obj of adscriptParse.goodsList){ let productData = { id: obj.goodsInnb.toString(), name: obj.goodsNm, payAmount: parseInt(obj.applyDscntAmt) }; // 배열에 추가 productDataArray.push(productData); } // (5) 전환 이벤트 전송, (예) 결제완료 이벤트 전송. 페이지뷰 스크립트와 합쳐지면 됨 let purchsComplateFormScript = document.createElement('script'); purchsComplateFormScript.innerHTML =` var checkNaverAdnMemberInterval = setInterval(() => { if(window.wcs) { if(!wcs_add) var wcs_add = {}; wcs_add["wa"] = '${purchsCompleteFormAt.adMediaId}'; var _conv = {}; /*전환 이벤트 정보 담을 object 생성*/ _conv.type = "purchase"; /*전환 이벤트의 종류 설정*/ _conv.value = "${totalPrice}"; _conv.id = "${finalOrderNo}"; /*주문번호*/ _conv.items = ${JSON.stringify(productDataArray)}; clearInterval(checkNaverAdnMemberInterval); wcs.trans(_conv); /*전환 이벤트 정보를 담은 object를 서버에 전송*/ } }, 100 ); `; document.head.appendChild(purchsComplateFormScript); } }//주문 완료 페이지 END //회원가입 완료 페이지 if(url.includes(selectJoinCompleteR)){ //# 회원가입 완료 페이지 로드되면 아래 코드 실행 const mbrRegstFormAt = adScriptMbrRegstFormAt(list); if(mbrRegstFormAt){ const joinScript = document.createElement('script'); joinScript.type = 'text/javascript' joinScript.innerHTML = ` var checkNaverAdnInterval = setInterval(() => { if(window.wcs){ if(!wcs_add) var wcs_add = {}; wcs_add["wa"] = '${mbrRegstFormAt.adMediaId}'; var _conv = {}; _conv.type = 'sign_up'; clearInterval(checkNaverAdnInterval); wcs.trans(_conv); } }, 100 ); `; document.head.appendChild(joinScript); } } }